Эволюция Wine
В настоящей статье рассказывается о возникновении свободного проекта Wine, его развитии и появлении разных коммерческих ответвлений. С момента собственного появления Wine сделал возможным переход на Линукс для множества Windows-пользователей по всему миру Полина Бич
🕛 25.03.2010, 10:57
Обеспечив работу Windows-приложений на UNIX-таких операционных системах, проект привлёк к себе большое внимание общественности. Кто-то воспринял такую идею кроссплатформенности с энтузиазмом и даже внёс собственный вклад в проект. Кто-то до сих пор относится критически.Как бы то ни было, фраза "Wine - не эмулятор" на сегодня знакома большей части Линукс-сообщества.
В данной статье сделана попытка проследить развитие проекта Wine и оценить возможные возможности.
Предпосылки
Сперва требуется обрисовать ситуацию, которая сложилась на рынке ПО к 1993 г., моменту зарождения проекта Wine. В 1990 г. Майкрософт выпустила Windows 3. - I-ю популярную версию Windows. В 1992 г. последовало расширение Windows 3.1 Продукты Майкрософт получали все более широкое распространение. В то же время активно развивалось сообщество девелоперов свободного программного обеспечения.
То, что возможность вести работу с Windows-ориентированными приложениями важна для операционной системы, претендующей на популярность, осознавали многие создатели.
Даже в IBM, стремившейся составить конкуренцию Windows с OS/2, признавали потребность работы с Windows-программами и добавили такую функциональность в новую версию собственной операционной системы.
Хотя I серьёзный шаг на дороге к кроссплатформенности сделали создатели Sun. Их коммерческий продукт Wabi, представленный в 1993 г., позволял запускать Windows-приложения на операционных системах Solaris x86 и Solaris 2.2 До сих пор продукты для запуска Windows-программ требовали эмуляции на уровне аппаратного обеспечения, и установки Windows и DOS. Уникальность Wabi состояла в том, что он позволял транслировать вызовы окон Windows прямо в вызовы X Windows.
Эта разработка вызвала огромной интерес у СПО-сообщества. Вероятно ли применить тот же подход для не слишком давно созданной операционной системы Линукс?
Как начинался Wine
Так как адаптировать Wabi для эксплуатации в Линукс выяснилось невозможным, начались дискуссии о создании подобной альтернативной реализации Win16 АПИ функций. Для обсуждения вопросов разработки подобный среды был создан особый лист рассылки.
В скором времени посреди участников дискуссии старт быть в ходу имя Wine. Несколько слов о названии. Wine - рекурсивный акроним, который расшифровывается как "Wine is not emulator" - "Wine - не эмулятор". Аналогичным способом образовано наименование операционной системы GNU - "GNU is not Unix".
В это время формировалась команда девелоперов Wine, возглавил которую Боб Амштадт. К тому же в создании в то время принимали участие Мигель де Икаса, в последующем ставший основателем GNOME, и Александр Джуллиард, с 1994 г. и до сегодня являющийся лидером проекта Wine.
Поначалу работа продвигалась довольно с высокой скоростью, за I-е полгода удалось запустить "Косынку". В ноябре 1993 к тому же стало возможным перенести Wine на другую архитектуру - NETBSD. Однако невзирая на I-е успехи, выпуск выпуска затягивался.
Развитие проекта
1994 г. внес большое количество изменений как в сам Wine, так и в организационную сторону проекта, место лидера занял Александр Джуллиард.
Оконные процедуры были переписаны в прямые вызовы библиотеки Xlib. Потребовалось создание механизмов помощи сетевых соединений, файлов реестра и блокировок. Однако, пожалуй, максимально существенные перемены вызвал выход 32-разрядных версий Windows. Помощь Win32 была реализована в Wine в мае 1995 г..
Подвижки происходили и в сферах, отличных от программирования. Велась разработка документации по Wine, а в 1997 г. был создан сайт winehq.org.
Следующий важный этап в развитии Wine наступил, когда компания Corel приняла решение о потребности полноценной помощи Линукс для своих продуктов. Там началась разработка своего установочного пакета Линукс, помощь же широкого круга приложений Corel потребовала значительной доработки Wine. В первый раз за историю проекта его разработка стала финансироваться коммерческой организацией.
Однако в итоге 2000 г. возникли домыслы о том, что Corel собирается прекратить поддержку Линукс. В начале 2001 о роспуске Линукс-отдела Corel было объявлено официально.
Однако, к радости, проект Wine не приостановился, оставшись без помощи с позиции Corel. Существенную часть работ взяла на себя компания Codeweavers, раньше участвовавшая в доработке Wine для Corel.
После дискуссий в СПО-сообществе в 2002 г. было решено о смене лицензии Wine с MIT на LGPL. Это по большей части способствовало развитию проекта, дало возможность приобретать существенно более патчей для Wine и включать в поддержку новые приложения. До 2005 г. Wine существовал в виде альфа-версии. 25 окт. 2005 г. была выпущена I-я бета-версия Wine .9. С этого момента обновления начали выходить каждые 2 нед.. А в сер. 2008 г., после 15 лет разработки, была выпущена версия Wine 1., I-я признанная стабильной.
Коммерческие версии Wine
Значительный вклад в развитие свободного проекта Wine вносили компании, создававшие коммерческие продукты на базе его исходных кодов.
* CROSSOVER - продукт компании Codeweavers, ориентированный на запуск максимально востребованных офисных и других приложений Windows: Майкрософт Office различных версий, Майкрософт Internet Explorer, Lotus Notes, Adobe Photoshop, Apple Itunes и иных. Для помощи таких приложений создатели CODEWEAVERS добавляют собственные заплатки, и графические программы конфигурации.
* Cedega - коммерческая версия Wine, дающая возможность запускать в Unix-системах Windows-игры. В ней добавлена улучшенная помощь АПИ DIRECTX, и некоторых защит от копирования, применяемых в играх.
* WINE@Etersoft - продукт, разрабатываемый петербургской фирмой Etersoft. Ориентирован на запуск этих популярных отечественных приложений для бизнеса, как 1с:Предприятие, Консультант, Гарант. В отличие от обычного Wine, в нём реализована помощь ключей защиты, драйверов устройств и работа в многопользовательском режиме В 2010 г. планируется выход WINE@Etersoft CAD, который обеспечит работу в GNU-Линукс CAD-систем, подобных как КОМПАС-3d, AUTOCAD, BRICSCAD и др.
Заключение
Значимость подобный разработки как Wine едва ли кто-то станет сейчас оспаривать. Переход с MS Windows на операционные системы семейства GNU/Линукс по-прежнему предполагает наследование Windows-приложений. Потому с момента собственного зарождения Wine вызывал немалый интерес как в СПО-сообществе, так и в бизнес-кругах.
Хотя за время существования свободного проекта разработка продвигалась с переменным успехом. В истории Wine имели место как весьма успешные и продуктивные периоды, так и серьёзные кризисы. Сочетание открытой разработки группой энтузиастов и помощи с позиции коммерческих организаций дало возможность свободному проекту улучшаться. По большей части этому способствовало создание коммерческих продуктов на базе Wine. Огромную роль в становлении Wine сыграла компания Codeweavers. Собственный вклад в разработку Wine вносит и русская фирма Etersoft, взаимодействуя с разработчиками Wine, предоставляя патчи, предлагая крупную часть своих разработок для включения в общий проект.
Поле для дальнейшего развития у проекта Wine, безусловно, есть. Большое количество востребованных Windows-программ до сих пор не имеют помощи или их помощь требует серьезных доработок Wine. Как и в начале собственного существования, проект открыт для желающих внести собственный вклад.