Издательский дом ООО "Гейм Лэнд"СПЕЦВЫПУСК ЖУРНАЛА ХАКЕР #51, ФЕВРАЛЬ 2005 г.

Из Windows в *nix

Крис Касперски ака мыщъх

Спецвыпуск: Хакер, номер #051, стр. 051-086-5


Ручной перенос, или один на один сам с собою

Смельчакам, отважившимся на самостоятельный перенос Windows-приложений, не обойтись без таблиц соответствий API-функций системным вызовам, которые приводятся ниже. Разумеется, это не все функции, а только самые популярные из них (полный список занял бы несколько увесистых томов, для транспортировки которых пришлось бы обзавестись грузовиком).

Заключение

Перенос Windows-приложений на *nix-системы намного проще, чем это кажется поначалу. К вашим услугам обширный инструментарий и огромное количество библиотек (в основном бесплатных). Сосредоточься на программном коде и забудь о пустяках – пусть ими занимается машина (см. эпиграф), но не откладывай это дело в дальний ящик и прекрати наконец игнорировать *nix-платформу. Ее популярность – факт. Так зачем терять рынок? Тем более что конкурировать здесь пока не с кем. В *nix до сих пор нет множества привычных Windows-приложений и утилит (систем распознавания текста, шестнадцатеричных редакторов и т.д.), поэтому даже плохонькая программа проглатывается публикой с энтузиазмом. Ты все еще ищешь, во что вонзить свои когти?

Уставшим от "Пасьянса" посвящается

Для переноса игр и других графических приложений лучше всего подходит WineX, в настоящее время переименованный в Cedega, – коммерческая версия имитатора WINE от компании Transgaming, ориентированная на DirectX, Direct3D, OpenGL и прочие технологии этого уровня. Работает в Linux, Mac, PlayStation 2, XBox и Next Gen. Хочешь "поквакать" в Linux? Нет проблем! А еще можно "подумать" или погонять в Need-for-Speed. Список поддерживаемых игр очень и очень велик.

Интересные ссылки

WINE

Популярный имитатор Windows, поддерживающий большое количество UNIX-платформ. Бесплатен: www.winehq.org;

WinX, он же Cedega

Коммерческий вариант WINE, ориентированный на игры и работающий преимущественно на LINUX-платформе: www.transgaming.com;

CodeWeavers

Коммерческий имитатор Windows, работающий только на Linux и ориентированный на запуск офисных приложений: www.codeweavers.com;

Visual MainWin

Плагин к Microsoft Visual Studio, упрощающий создание переносимого кода и позволяющий компилировать Windows-приложения под различные платформы. Здесь же лежит пара статей по переносу критических бизнес-приложений: www.mainsoft.com/products/mainwin.html;

wxWindows

Кросс-платформенная библиотека, более или менее совместимая с MFC. Исходные тексты доступны, денег не просит: www.wxwindows.org;

LIBINT

Бесплатная библиотека для работы с INI-файлами на UNIX: http://libini.sourceforge.net;

Free Pascal

Бесплатный кросс-платформенный компилятор Pascal’а с ограниченной поддержкой Delphi: www.freepascal.org;

Porting MFC applications to Linux

Толковая статья про перенос MFC-приложений в UNIX при помощи wxWindows: www.106.ibm.com/developerworks/library/l-mfc;

Назад на стр. 051-086-4  Содержание  Вперед на стр. 051-086-6