Материал из РУВИКИ — свободной энциклопедии

Виртуальная машина 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 и выше.[1] MVDM была более мощной, чем NTVDM. Например, она поддерживала блоки устройств, и в ней могли быть загружены различные версии DOS.[2] Если в OS/2 1.x был использован DOS 3.0, то в OS/2 2.x MVDM уже эмулировала DOS 5.0.[1]

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.[1]

Интересные факты[править | править код]

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

Альтернативные варианты[править | править код]

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

См. также[править | править код]

Примечания[править | править код]

  1. 1 2 3 Schulman, Andrew; Brown, Ralf; Maxey, David; Michels, Raymond J.; Kyle, Jim. Undocumented DOS - A programmer's guide to reserved MS-DOS functions and data structures - expanded to include MS-DOS 6, Novell DOS and Windows 3.1 (англ.). — 2. — Addison Wesley, 1994. — ISBN 0-201-63287-X.
  2. OS/2 Workplace Shell Configuration Techniques (PDF) 68–80. IBM redbook (1994). Дата обращения: 5 июля 2011. Архивировано из оригинала 20 марта 2012 года.
  3. NTVDM в ReactOS. Дата обращения: 2 февраля 2016. Архивировано 5 марта 2016 года.
  4. otya. 16-bit Windows (Windows 1.x, 2.x, 3.0, 3.1, etc.) on 64-bit Windows: otya128/winevdm. — 2019-07-18. Архивировано 9 ноября 2020 года.
  5. NTVDM64 (англ.). SourceForge. Дата обращения: 24 июля 2019. Архивировано 24 июля 2019 года.
  6. leecher1337. leecher1337/ntvdmx64. — 2020-12-04. Архивировано 9 декабря 2020 года.