О проекте, история | Как это работает | Наблюдения | Ссылки | Где взять | Галерея скриншотов
О проекте Odin (история)
В начале было слово. Словом этим было Win32-OS/2 и группа энтузиастов
(надо отметить, весьма сильных осевых программистов) в Netlabs занималась
разработкой софта, как видно из названия, для запуска Win32-программ в OS/2.
Потом разработка была прервана в связи с несоизмеримыми затратами и малым
интересом со стороны потенциально возможных инвесторов.
Однако, в возможности запуска Win32-приложений оказались
заинтересованы некоторые крупные OS/2-клиенты (об этом мы писали в новостях).
После этого проект был возрожден на NetLabs под новым именем Odin и вот недавно начали
появляться публичные бета-версии.
К началу
Как это работает
Odin позволяет запускать программное обеспечение Win32 (Win95/WinNT) под OS/2.
Эта возможность основывается на API Open32, включенным в OS/2 компанией IBM
(в Warp4 - базово, в Warp3 - начиная с 17-го фикспака), расширением которого
стало Odin32 API.
Существует два варианта запуска Win32-приложений через Odin:
- Сначала - конвертация PE (Portable Executable - Win32 binaries) файлов
в LX формат OS/2 (Linear eXecutable). Тем самым Вы получаете уже готовый OS/2 - программный продукт, который можно запускать самостоятельно.
Процедура конвертации DLL и EXE объектов производится с помощью утилиты PE2LX.EXE, входящей в состав Odin.
- Дизассемблирование в оперативной памяти прямо во время запуска приложения
и конвертация Win -> OS/2 на лету (on the fly).
Такой метод замедляет работу в связи с необходимостью конвертации объектов PE -> LX каждый раз во время их загрузки,
однако он идеально подходит под соглашение о невозможности дизассемблирования программного кода продукта, и несанкционированном изменении кода программы. Кроме того, вы можете запускать программы непосредственно из рабочих каталогов Windows95/WindowdNT :-).
Поэтому именно он рекомендован к использованию. Запуск с конвертацией на лету осуществляется программой PE.EXE.
Для того, чтобы Win32-программы запускались сами (без PE.EXE), служит
драйвер win32k.sys, подгружаемый в config.sys. Он патчит ядро OS/2 на предмет
того, чтобы запускаемый Win32 PE модуль распознавался системой сам и автоматически
вызывалась PE.EXE для его конвертации. Однако, на текущий момент работа этого
драйвера недостаточно отлажена.
Сконвертированная и запущенная Win PE программа является "чистым" (native)
приложением OS/2, а не запущенным в "Windows"-сессии, подобно приложениям
Windows 3.1 в Win-OS/2.
К началу
Наши наблюдения
- Aleksey Peshkov:
Запуск базы данных КОДЕКС
- очень круто! IMHO русскоязычных программ такого класса еще в галерее небыло.
- Alex Samorukov:
Огромный успех одина !
Под системой эмуляции windows ODIN32 версии 0.0.5 (от 22.10.2000)
запустился photoshop 5.0 ! При этом он даже работает, мне удалось
загрузить в нем картинку, наложить фильтр emboss и сохранить
результат ! Правда для работы пока непригоден из-за некоректного
отображения палитр + частых падений. Но я думаю, что то, что он уже
запустился и частично работает - огромная надежда для OS/2
пользователей работающих с графикой.
На скриншоте: OS/2 Warp 4.5 с запущеным Adobe Photoshop 5.0 в котором
загружен файл AURORA01.JPG с сидирома авроры !
Ссылки
К началу
Где взять
К началу
|