16-битные окна под Win64, используя Wine?
Интересно, кто-нибудь пробовал следующий подход для запуска 16-битного приложения под Win64?
Я могу установить виртуальную машину VMware, загрузить Linux и использовать Wine для имитации старой среды Windows. Я не понимаю, почему это не сработает, но я не нашел информации из предыдущих вопросов о 16-битной Windows на Win64.
3 ответа
64-битная Windows не включает WOW - но, согласно Википедии, 64-битная версия Wine делает это!
Источник: http://en.wikipedia.org/wiki/Wine_(software)
http://en.wikipedia.org/wiki/File:Wineon64bit.png
Обратная совместимость в Wine превосходит совместимость с Windows, так как более новые версии Windows могут заставить пользователей обновлять устаревшие приложения Windows. Во многих случаях Wine может предложить лучшую унаследованную поддержку, чем более новые версии Windows с "режимом совместимости". Как показано на скриншоте слева, Wine может запускать 16-разрядные программы Windows в 64-разрядной операционной системе, которая использует 64-разрядный процессор x86-64. 64-разрядные версии Microsoft Windows не могут запускать 16-разрядные программы Windows
Источник: http://en.wikipedia.org/wiki/Windows_on_Windows
Подсистема Win16 доступна в 32-разрядных выпусках Windows NT, 2000, XP, Server 2003, Vista, Server 2008, 7 и 8. Однако 64-разрядные выпуски версий Windows, в которых они имеются, не включают WoW Подсистема поддержки Win16 и, следовательно, не может запускать приложения Win16 и не предоставляет эмулятор NTVDM. Поэтому приложения DOS и 16-разрядные Windows не могут работать в 64-разрядных версиях Windows без стороннего программного обеспечения для эмуляции (например, DOSBox) или виртуальной машины с 32-разрядной версией Windows, режимом Windows XP или самой DOS.
Если вы можете, запустите две виртуальные машины - одну с 32-битной Windows, другую с 64-битной Windows, при условии, что вам для чего-то конкретно нужна 64-битная Windows.
Теперь это возможно с winevdm: https://github.com/otya128/winevdm. Для запуска 16-битных приложений в 64-битной Windows необходимо эмулировать x86-процессор, так как таблицу локальных дескрипторов (LDT) нельзя изменить в Windows x64 (которая необходима для запуска 16-битного кода). Связанный проект на GitHub включает в себя все необходимые изменения в Wine и эмуляторе x86. Я проверил это, и это, кажется, работает очень хорошо.
Я могу подтвердить, что это работает для Ubuntu Bionic. Я использую Зорин 15:
Винтрикс:
- Выберите префикс Wine по умолчанию, измените настройки, WinXP.
- Развернул ftp://ftp.lotus.com/pub/lotusweb/product/smartsuite/Kvlotus.exe в папку загрузок (wine).
- Запустил установщик. (SETUP.EXE) «Открыть с помощью установки приложения Windows»
Теперь я могу запускать Kvlotus (16 бит) со своего дестопа.