4.5 Запуск приложений Windows в программе Wine

Wine — это свободное программное обеспечение, позволяющее пользователям UNIX-подобных систем архитектуры x86 (и других архитектур, при наличии совместимости, например, AMD64) исполнять 16- и 32-битные приложения Microsoft Windows (64-битные приложения находятся в стадии ранней реализации).

Wine также предоставляет программистам библиотеку программ Winelib, при помощи которой они могут компилировать Windows-приложения для портирования их в UNIX-подобные системы.

Название Wine является рекурсивным акронимом и расшифровывается «Wine Is Not an Emulator» — «Wine — не эмулятор» (имеется в виду, что Wine не является эмулятором компьютера, как, например, qemu или VirtualBox, Wine — это альтернативная реализация Windows API).

Wine распространяется на условиях лицензии GNU LGPL.

Технические особенности

Настройка Wine
Проект сталкивается с большими трудностями вследствие неполноты или отсутствия документации по многим элементам Win32 API. В то время как функции Win32 в основном документированы, существует масса областей (таких как файловые форматы или протоколы Microsoft), спецификации на которые никогда не публиковались. Таким образом, команде разработчиков Wine приходится заниматься обратной разработкой этих компонентов.

Wine воспринимает системные вызовы Windows-приложений к библиотекам операционной системы и подменяет их своими. Таким образом, эмуляции процессора, аналогично другим эмуляторам типа VMware и QEMU, не происходит, и приложения могут выполняться в Wine почти так же быстро, как и в «родной» операционной системе (а в некоторых случаях и быстрее). Для своей работы Wine не требует наличия установленной ОС Windows, хотя и может использовать её библиотеки.

Также Wine предоставляет инструментарий разработки программ Winelib для переноса унаследованных исходных кодов из среды Windows в среду UNIX путём простой перекомпиляции.
Wine, безусловно, не является стабильным продуктом, и нельзя сказать, что любую программу для Windows удастся запустить с его помощью. Некоторые подсистемы Windows вообще практически не реализованы. Тем не менее, уже сейчас многие из повсеместно используемых Windows-приложений полноценно запускаются и работают в UNIX-подобных ОС при помощи Wine. Особенно это касается приложений, которые не используют недокументированные возможности Windows.

Видеоурок "Запуск приложений Windows в программе Wine"


 

 

"Учебник ОС Linux" В. Мартыненко