ROS NTVDM — различия между версиями
(→Текущее состояние) |
|||
Строка 13: | Строка 13: | ||
В отличие от Windows, при работе NTVDM ReactOS не устанавливает процессор в 16-битный режим эмуляции. Этот режим, по сути, выполняет то же самое что и эмуляция проделанная ReactOS. Но, в настоящее время, процессоры работают достаточно быстро, так что с производительностью не должно быть проблем. Преимущество подхода ReactOS, в том, что его NTVDM может использоваться на 64-битных, x86 и ARM процессорах. | В отличие от Windows, при работе NTVDM ReactOS не устанавливает процессор в 16-битный режим эмуляции. Этот режим, по сути, выполняет то же самое что и эмуляция проделанная ReactOS. Но, в настоящее время, процессоры работают достаточно быстро, так что с производительностью не должно быть проблем. Преимущество подхода ReactOS, в том, что его NTVDM может использоваться на 64-битных, x86 и ARM процессорах. | ||
+ | |||
+ | 6 мая 2014 года ntvdm была влита в основную ветку. | ||
==Как запустить DOS программу через NTVDM== | ==Как запустить DOS программу через NTVDM== |
Версия 20:39, 6 мая 2014
NTVDM (NT Virtual Dos Machine) — виртуальная машина, которая в связке с WOW (WindowsOnWindows) обеспечивает запуск 16-битных программ (DOS и Win3.x) в современных версиях Windows.
Содержание
[убрать]Начало
Долгое время этот компонент отсутствовал в ReactOS, пока участник сообщества по имени Александар Андрейевич (Aleksandar Andrejevic) не предложил свою помощь в его реализации. 16 июня 2013 для него была создана отдельная ветка, в которую вносятся изменения и улучшения NTVDM.
Текущее состояние
На 13 марта 2014 года была реализована поддержка 486-совместимых процессоров, основного управления памятью, базовая поддержка звука и видео, 32-битного BIOS и 32-битного DOS.
Немало функций по-прежнему отсутствуют, в том числе и в вышеперечисленных функциях. Например, нет поддержки видео для VESA+ или EGA шрифтов, звук работает только через внутренний динамик ПК, а не через эмулированный SoundBlaster, также эмулятор процессора не имеет блока с плавающей точкой.
Сейчас для запуска DOS программы пользователю нужно запустить NTVDM вручную. Конечной целью является автоматический запуск NTVDM при открытии пользователем 16-битной программы. Это требует некоторой работы с CSRSS, который также будет отвечать за принятие решения, запустить новый экземпляр NTVDM или повторно использовать уже существующий. Последняя особенность особенно важна для завершения и приостановки программ, которые включают в себя много игр.
В отличие от Windows, при работе NTVDM ReactOS не устанавливает процессор в 16-битный режим эмуляции. Этот режим, по сути, выполняет то же самое что и эмуляция проделанная ReactOS. Но, в настоящее время, процессоры работают достаточно быстро, так что с производительностью не должно быть проблем. Преимущество подхода ReactOS, в том, что его NTVDM может использоваться на 64-битных, x86 и ARM процессорах.
6 мая 2014 года ntvdm была влита в основную ветку.
Как запустить DOS программу через NTVDM
Для запуска DOS программы, в командной строке ReactOS необходимо сначала перейти в каталог с программой, а затем выполнить ntvdm имя_программы.exe.
Пример:
C:\ReactOS\system32> cd c:\folder_dos_apps C:\folder_dos_apps> ntvdm app.exe СкриншотыСсылкиСкачать сборки |