Лучшие вопросы
Таймлайн
Чат
Перспективы

Wine

программное обеспечение для Unix-подобных операционных систем, предназначенное для запуска Windows-программ Из Википедии, свободной энциклопедии

Wine
Remove ads

Wine (МФА: [waɪn] — «уа́йн»; с англ. wine — «вино») — свободное программное обеспечение, позволяющее пользователям UNIX-подобных операционных систем, например GNU/Linux, Apple macOS и других UNIX-подобных с поддержкой архитектур x86, AMD64 (и других) исполнять 16-, 32- и 64-битные приложения, в том числе игры, созданные исключительно для Microsoft Windows, без наличия при этом установленной Windows. Wine также предоставляет программистам библиотеку программ Winelib, при помощи которой они могут компилировать Windows-приложения для портирования их в UNIX-подобные операционные системы. Название W.I.N.E. — рекурсивный акроним и расшифровывается «Wine Is Not Emulator» — «W.I.N.E. — это не эмулятор». Имеется в виду, что Wine — это не эмулятор компьютера или виртуальная машина, как, например, qemu, VirtualBox и другие подобные им. Вместо этого Wine — это альтернативная, свободная реализация Windows API (WIndows Native Environment).

Краткие факты Тип, Разработчики ...

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

Remove ads

История

Суммиров вкратце
Перспектива

Проект был основан Бобом Амштадтом (англ. Bob Amstadt) и Эриком Юнгдалом (Eric Youngdale) в 1993 году как средство запуска 16-битных приложений Windows 3.1 в системе Linux[11]. С 1994 года лидером проекта стал Александр Джуллиард[англ.] (Alexandre Julliard). Первоначально Wine был выпущен под лицензией MIT, но в марте 2002 года она была сменена на GNU LGPL.[источник не указан 564 дня]

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

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

Параллельно разрабатывается и сопровождается проект wine-staging, включающий в себя изменения, неготовые по мнению разработчиков WineHQ, к добавлению в основной код Wine, однако улучшающие некоторые проблемы совместимости конкретных программ. Данный форк также является площадкой для исправления ошибок и проверки экспериментальных функций. По состоянию на 2019 год, WineHQ предоставляет сборки wine-staging для скачивания пользователям[13].

Remove ads

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

Суммиров вкратце
Перспектива
Thumb
Настройка Wine

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

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

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

Wine, безусловно, не стабильный продукт, и нельзя сказать, что с его помощью удастся запустить любую программу для Windows. Некоторые подсистемы Windows вообще практически не реализованы. Тем не менее уже сейчас многие из повсеместно используемых приложений Windows полноценно запускаются и работают в UNIX-подобных ОС при помощи Wine. Особенно это касается приложений, которые не используют недокументированные возможности Windows. Также под Wine полноценно запускаются приложения, разработанные для Windows 95/98/ME/2000/XP, которые не работают на Windows 8/10 даже в режиме «совместимости».[источник не указан 564 дня]

Поддержка Direct3D

Для обработки вызовов API Direct3D в Wine используется специальный трансляционный слой, в качестве которого могут быть использованы несколько вариантов:

  • wined3d — способен транслировать в вызовы OpenGL вызовы различных версий Direct3D до версии 11 включительно; wined3d не поддерживает Direct3D версии 12;[источник не указан 564 дня]
  • DXVK — транслирует вызовы API Direct3D версий 9, 10 и 11 в вызовы API Vulkan; DXVK создан независимым от Wine разработчиком, написан на C++ и не является частью Wine, он может использоваться в нём как (внешняя) подгружаемая библиотека[15];
  • vkd3d — транслирует вызовы API Direct3D 12 в вызовы API Vulkan[15].
Remove ads

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

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

Продукты, основанные на 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[18].
  • WINE-LXP — ещё одна коммерческая реализация Wine, часть Trustverse Desktop (ранее выпускавшегося как Linux XP). Об этой реализации известно, что отдельно она не продаётся, поддерживает запуск 1С:Предприятие и ещё несколько приложений[19].
  • 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-й версии[20].
  • WineWizard — графический интерфейс для настройки и упрощения установки программ в Wine. Очень похож на PlayOnLinux, но в отличие от этого инструмента позволяет пользователю самому создавать решения для установки программ, а также выбирать нужные компоненты.
  • Odin — проект для запуска программ Windows в OS/2 или их конвертирования в «родной» OS/2 формат.
  • DXVK — проект по ретрансляции вызовов Direct3D 9-11[21], использующий в качестве выхода не стандартный OpenGL, а Vulkan API.
  • vkd3d — проект по ретрансляции вызовов Direct3D 12[22] в вызовы Vulkan API. В отличие от DXVK, выступает частью проекта Wine.
  • Steam Play (Valve Proton) — проект для запуска игр Windows, поставляющийся с платформой цифровой дистрибуции Steam. Для работы использует Wine в связке с DXVK (реализация DirectX 11) и vkd3d (реализация DirectX 12)[23] и массой собственных доработок.
  • PortProton — проект, использующий форк wine в варианте Valve Proton для автоматизации скачивания и запуска игр через российские сервисы дистрибуции игр.[24]
Remove ads

Microsoft и Wine

Суммиров вкратце
Перспектива

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

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

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

Remove ads

Недостатки Wine

Несмотря на то что Wine представляет собой довольно мощный программный продукт, у него есть определённые недостатки. К примеру, разработчики намеренно не заявляют поддержку USB из-за крайне высокой сложности её реализации. Таким образом, например, если вы запустите Apple iTunes в Wine, то он запустится, но не сможет взаимодействовать с устройствами, подключенными по USB, например Apple iPhone, Apple iPad, Apple iPod. Для обеспечения их работы придётся устанавливать виртуальную машину с Microsoft Windows и «пробрасывать» в неё устройства, подключенные по USB.[источник не указан 564 дня]

Remove ads

См. также

Примечания

Ссылки

Loading related searches...

Wikiwand - on

Seamless Wikipedia browsing. On steroids.

Remove ads