Wine

Материал из Википедии — свободной энциклопедии
Перейти к: навигация, поиск
Wine
WINE-Logo.svg
IE6 in Wine and winecfg.png
Браузер Internet Explorer 6, запущенный в Wine под Linux. На переднем плане — утилита конфигурирования winecfg.
Тип

слой совместимости с Windows API

Автор

Александр Джуллиард

Разработчик

Wine project

Написана на

C

Операционная система

Linux, Mac OS X и др. UNIX-подобные

Языки интерфейса

русский и ещё 43 языка

Первый выпуск

4 июля 1993

Последняя версия

1.6.2 (10 января 2014[1])

Бета-версия

1.7.32 (28 ноября 2014[2])

Лицензия

GNU LGPL

Сайт

winehq.org

Wine на Викискладе
Gallium3D State Tracker for Direct3D 9 improves performance when playing D3D games on Wine

Wine (/waɪn/ — между «уа́йн» и «вайн», рус. Вино) — это свободное программное обеспечение, позволяющее пользователям UNIX-подобных систем архитектуры x86 (и других архитектур, при наличии совместимости, например, AMD64) исполнять 16-, 32- и 64- битные приложения Microsoft Windows (64-битные приложения находятся в стадии ранней реализации). Wine также предоставляет программистам библиотеку программ Winelib, при помощи которой они могут компилировать Windows-приложения для портирования их в UNIX-подобные системы. Название Wine является рекурсивным акронимом и расшифровывается «Wine Is Not an Emulator» — «Wine — не эмулятор» (имеется в виду, что Wine не является эмулятором компьютера, как, например, qemu или VirtualBox, Wine — это альтернативная реализация Windows API).

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

История[править | править вики-текст]

Проект был основан Бобом Амштадтом (Bob Amstadt) в 1993 году, как средство запуска 16-битных приложений Windows 3.1 в системе Linux. С 1994 года лидером проекта стал Александр Жульярд (англ.). Изначально Wine был выпущен под лицензией MIT, но в марте 2002 года она была сменена на GNU LGPL.

Со временем Wine был портирован на другие UNIX-подобные системы, такие как FreeBSD, Solaris и другие, а также на Windows (там WINE обычно используется для запуска старых приложений на новых версиях ОС). Была добавлена поддержка 32-битных приложений Windows, а в 2005 году — и 64-битных. До октября 2005 года проект находился в стадии альфа-версии, хотя с его помощью безупречно работали многие программы. 25 октября 2005 г. была выпущена первая бета-версия Wine 0.9. С этого момента новые версии стали выпускаться обычно раз в две недели.

Летом 2007 года произошёл небольшой скандал, поскольку выяснилось, что несколько свободных библиотек Wine были использованы компанией Parallels, Inc. в проприетарном продукте Parallels Desktop for Mac, без предоставления исходных кодов, что является нарушением лицензии LGPL[3]. Установить факт нарушения смогли из-за скриншотов, опубликованных Parallels, на которых у персонажей игры Half-Life 2 были видны квадратные тени, что на тот момент являлось одной из известных ошибок Wine[4]. В компании Parallels подтвердили, что используют модифицированные исходные коды Wine, и обещали предоставить их по запросу в течение 3 дней[5]. Тем не менее, разработчики Wine получили модифицированные исходные коды только через месяц. Кроме того, на сайте Parallels появилась информация о Wine как компоненте, и его лицензии[6], на чём конфликт фактически исчерпал себя[4].

17 июня 2008 года, после 15 лет разработки, вышла версия Wine 1.0, первая, которую разработчики называют стабильной[7].

16 июля 2010 года вышла следующая стабильная версия Wine под номером 1.2[8].

7 марта 2012 года вышел стабильный релиз версия Wine под номером 1.4[9].

16 марта 2012 года вышел тестовый релиз версия Wine под номером 1.5.0, который обновляется раз в 15-20 дней

3 февраля 2013 года Александр Жульярд на конференции FOSDEM сообщил о том, что Wine портировали под ОС Android. Но конкретные сроки выхода названы не были.

18 июля 2013 годa вышел тестовый релиз версия Wine под номером 1.6.0.

Технические особенности[править | править вики-текст]

Настройка Wine

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

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

Также Wine предоставляет инструментарий разработки программ Winelib для переноса унаследованных исходных кодов из среды Windows в среду UNIX путём простой перекомпиляции.

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

Использование кода Wine в других проектах[править | править вики-текст]

  • Часть кода WINE, позволяющая загружать динамические библиотеки (DLL) для Windows, используется в других свободных проектах, таких как MPlayer, Xine и некоторых других.
  • Компанией Borland была выпущена среда разработки Kylix, использующая код Wine (в настоящий момент разработка и поддержка прекращена).
  • ReactOS — проект свободной операционной системы, ставящий целью полную совместимость с Windows на уровне программ и драйверов. Не являясь основанным на Wine, проект ReactOS активно сотрудничает с ним, берёт из него многие наработки и делится своим кодом.
  • Picasa, Google Earth. При портировании под Linux использовались библиотеки Wine[11][12].

Продукты, основанные на Wine[править | править вики-текст]

  • Cedega, ранее WineX — продукт, основанный на старом коде Wine (до смены лицензии на LGPL), созданный компанией TransGaming для поддержки Windows-игр в ОС Linux. Имеется улучшенная поддержка DirectX, различных видов защиты от копирования. Продукт проприетарный, но имеется общедоступная CVS-версия с несколько урезанной функциональностью.
  • CrossOver — основанная на Wine среда, специально оптимизируемая для запуска наиболее затребованных офисных и иных приложений для Windows в Linux, таких, как Microsoft Office, Apple iTunes, Adobe Photoshop и других. Продукт также платный и несвободный, но его разработчики — компания CodeWeavers — активно сотрудничают с командой Wine, и эти два проекта обмениваются своими наработками.
  • Линейка продуктов компании Etersoft, на основе Wine (WINE@Etersoft) — набор сред, ориентированных не только на поддержку популярных в России деловых Windows-приложений, таких как 1С:Предприятие, БЭСТ, КонсультантПлюс, Гарант, КОМПАС-3D (WINE@Etersoft CAD), но и на такие как Microsoft SQL Server (WINE@Etersoft SQL), PostgreSQL (WINE@Etersoft SQL, Postgre@Etersoft). WINE@Etersoft Network предназначен для организации совместной работы с приложениями и общими ресурсами по сети. Это платные продукты, разрабатываемые российской компанией Etersoft, которая поддерживает их для дистрибутивов Linux и FreeBSD[13].
  • WINE-LXP — ещё одна коммерческая реализация Wine, являющаяся частью Trustverse Desktop (ранее выпускавшегося как Linux XP). Об этой реализации известно, что отдельно она не продаётся, поддерживает запуск 1С:Предприятие и ещё несколько приложений[14].
  • PlayOnLinux — графический GTK интерфейс для настройки wine. Поддерживает скрипты установки, параллельные разные версии wine для отдельных приложений и позволяет использовать для каждого wine-приложения свой профиль.
  • Vineyard — ещё один GTK интерфейс для настройки wine.
  • q4wine — графический Qt интерфейс для настройки wine. Также позволяет использовать для каждого wine-приложения свой профиль.
  • winetricks — скрипт для установки некоторых основных компонентов (как правило, библиотек DLL и шрифтов), необходимых для правильной работы некоторых приложений под Wine. Проект Wine принимает сообщения об ошибках для пользователей Winetricks, в отличие от большинства сторонних приложений.
  • Wine-Doors — является приложением для GNOME, которое вносит дополнительную функциональность и стал альтернативой WineTools.
  • IEs4Linux — это утилита для установки всех версий Internet Explorer, включая версии от 4-ой до 6-ой и бета-версии 7. После двух лет молчания, в январе 2011, появилось сообщение о скором начале поддержки 9-й версии[15].

Microsoft и Wine[править | править вики-текст]

В Microsoft официально не делали никаких публичных заявлений по поводу Wine. Однако Microsoft Update будет блокировать обновления для программного обеспечения от Microsoft, если программы будут запущены в средах, основанных на Wine. 16 февраля 2005 Ivan Leo Puoti обнаружил, что Microsoft начала проверять системный реестр в поисках конфигурационных ключей, оставленных Wine и будет блокировать доступ к Windows Update для любого компонента. Puoti написал[16]:

…даже если это только первоначальная попытка, похоже, что они хотят дискриминировать пользователей Wine. Это может быть приемлемо для компонентов/обновлений операционной системы, но, вероятно, является нарушением антимонопольного законодательства для всех остальных загрузок. Кроме того, это первый раз, когда Microsoft дала понять, что знает о существовании Wine

Windows Genuine Advantage (WGA) также проверяет на наличие ключей реестра от Wine. В WGA FAQ заявлено, что WGA, по своему предназначению, не будет работать в Wine, поскольку Wine не является «подлинной Windows»[17]. Когда проверка WGA определяет, что в системе запущен Wine, пользователю будет выдано сообщение, гласящее о том, что он запустил не подлинную Windows, и «загрузки ПО для подлинной Windows» не будут разрешены для этой системы. Тем не менее, было несколько сообщений о работе WGA в Wine[18][19], однако и эта возможность использования была закрыта в следующем обновлении компонента WGA. В случаях с Internet Explorer 7 и Windows Media Player, впоследствии, Microsoft удалила требования проверки WGA для установки.

Недостатки Wine[править | править вики-текст]

Несмотря на то, что Wine представляет собой довольно мощный программный продукт, у него есть определённые проблемы реализации. К примеру, разработчики намеренно не заявляют поддержку USB, однако по словам самих же разработчиков[20] работа с USB драйверами возможна.

Примечания[править | править вики-текст]

  1. Официальный сайт Wine.
  2. Wine 1.7.32 Released
  3. SWSoft поймали на нарушении LGPL. Linux.org.ru (1 июня 2007). Проверено 14 марта 2009. Архивировано из первоисточника 1 июня 2012.
  4. 1 2 Parallels Desktop Watch (англ.). Проверено 14 марта 2009.
  5. Parallels using WINE? Possible liscensing issues... (англ.). Проверено 14 марта 2009. Архивировано из первоисточника 1 июня 2012.
  6. Licensing information (англ.). Parallels. Проверено 14 марта 2009. Архивировано из первоисточника 1 июня 2012.
  7. Wine 1.0 Released (англ.). WineHQ (17 июня 2008). Проверено 14 марта 2009. Архивировано из первоисточника 1 июня 2012.
  8. Wine 1.2 Released (англ.). WineHQ (16 июля 2010). Проверено 18 июля 2010. Архивировано из первоисточника 1 июня 2012.
  9. Wine 1.4 Released (англ.). WineHQ (7 марта 2012). Проверено 12 апреля 2012. Архивировано из первоисточника 1 июня 2012.
  10. BenchMark-0.9.5 (англ.). The Official Wine Wiki. Проверено 14 марта 2009. Архивировано из первоисточника 1 июня 2012.
  11. Picasa for Linux, Frequently Asked Questions (англ.)(недоступная ссылка — история). Google. Проверено 14 марта 2009. Архивировано из первоисточника 3 января 2011.
  12. Open Source Patches: Wine (англ.). Google. Проверено 14 марта 2009. Архивировано из первоисточника 1 июня 2012.
  13. WINE@Etersoft: поддерживаемые операционные системы. Проверено 14 марта 2009. Архивировано из первоисточника 1 июня 2012.
  14. Trustverse WINE-LXP
  15. IEs 4 Linux News " Supporting IE9 on Linux
  16. Puoti, Ivan Leo Microsoft genuine downloads looking for wine (англ.). Список рассылки (16 февраля 2005). Проверено 14 марта 2009.
  17. Genuine Windows FAQ (англ.). Microsoft Corporation. Проверено 14 марта 2009. Архивировано из первоисточника 1 июня 2012.
  18. Ubuntu Linux Validates as Genuine Windows (англ.). Slashdot (17 июня 2007). Проверено 14 марта 2009. Архивировано из первоисточника 1 июня 2012.
  19. Linux is a Genuine Windows? turns out it is (англ.). bit-tech.net (6 августа 2005). Проверено 14 марта 2009. Архивировано из первоисточника 1 июня 2012.
  20. USB device support на wine-wiki

Ссылки[править | править вики-текст]


Англоязычные[править | править вики-текст]

Русскоязычные[править | править вики-текст]