Виртуальная машина DOS


Виртуальная машина DOS (англ. Virtual DOS machine, VDM) — технология, позволяющая запускать 16/32-разрядные приложения DOS и 16-разрядные приложения Windows 3.x на процессорах Intel 80386 и выше, когда уже запущена другая операционная система, которая уже управляет устройствами.

VDM на основе DOS

VDM, основанная на MS-DOS, появилась в Windows/386 2.01 в 1987 году. Также она присутствовала в Windows 3.0, 3.1x, Windows for Workgroups и в операционных системах семейства Windows 9x.

OS/2 MVDM

MVDM (Multiple Virtual DOS Machine) — компонент, входящий в состав OS/2 2.0 и выше. MVDM была более мощной, чем NTVDM. Например, она поддерживала блоки устройств, и в ней могли быть загружены различные версии DOS. Если в OS/2 1.x был использован DOS 3.0, то в OS/2 2.x MVDM уже эмулировала DOS 5.0.

NTVDM

NTVDM (NT Virtual DOS Machine — «виртуальная машина DOS для системы NT») — компонент, входящий в состав 32-разрядных редакций операционных систем семейства Windows NT, позволяющий запускать 16-разрядные приложения Windows и 16/32-разрядные приложения DOS. Данный компонент не входит в 64-разрядные версии этих ОС. Исполняемый файл, формирующий основу среды для выполнения одного приложения DOS (или Windows 3.x) в 32-битном пользовательском режиме Windows NT называется ntvdm.exe.

Интересные факты

  • В операционной системе ReactOS одним из разработчиков была реализована NTVDM. Однако, в отличие от Windows, в ReactOS NTVDM не устанавливает процессор в 16-битный режим эмуляции, а основываясь на реализации эмулятора Softx86 и авторской библиотеке эмуляции процессора Fast486, как DOSBox полностью эмулирует компьютер.

Альтернативные варианты

  • OTVDM — Свободная реализация NTVDM для 64 битных версий Windows на основе Wine, отличается очень простой установкой.
  • NTVDM64 — Попытка реализации с компиляцией под 64 бит из оригинального NTVDM используя обратную разработку.
  • NTVDM X64 — Другая реализация NTVDM для 64-х битных систем, созданная для запуска DOS-программ не теряя связи с Windows.