Виртуальная DOS-машина
Виртуальные машины DOS ( VDM ) относятся к технологии, которая позволяет запускать 16-битные/32-битные программы DOS и 16-битные программы Windows , когда уже работает другая операционная система и управляет оборудованием.
Обзор
[ редактировать ]Виртуальные машины DOS могут работать либо исключительно с помощью типичных программной эмуляции методов (например, динамическая перекомпиляция ), либо могут полагаться на виртуальный режим 8086 процессора Intel 80386 , который позволяет программному обеспечению реального режима 8086 работать в контролируемой среде, перехватывая все операции, связанные с доступом. защищенное оборудование и пересылка их в обычную операционную систему (в виде исключений ). Затем операционная система может выполнить эмуляцию и возобновить выполнение программного обеспечения DOS.
VDM обычно также реализуют поддержку запуска 16- и 32-битного программного обеспечения защищенного режима ( расширители DOS ), которое должно соответствовать интерфейсу защищенного режима DOS (DPMI). [ 1 ]
Когда программе DOS, работающей внутри VDM, требуется доступ к периферийному устройству, Windows либо разрешает это напрямую (редко), либо предоставляет программе DOS драйвер виртуального устройства (VDD), который эмулирует оборудование с помощью функций операционной системы. VDM систематически будет иметь эмуляцию Intel 8259A контроллеров прерываний , микросхем таймера 8254 , контроллера DMA 8237 и т. д. [ 1 ]
Параллельный режим эмуляции DOS 8086
[ редактировать ]В январе 1985 года компания Digital Research совместно с Intel представила Concurrent DOS 286 1.0 . [ 2 ] версия Concurrent DOS , способная запускать программы DOS в реальном режиме в 80286 . защищенном режиме [ 2 ] Однако метод, разработанный для чипов степпинга B-1, в мае 1985 года перестал работать на C-1 и последующих степпингах процессора, незадолго до того, как Digital Research собиралась выпустить этот продукт. Хотя с помощью степпинга E-1 Intel начала решать проблемы в августе 1985 года, так что «режим эмуляции 8086» Digital Research снова заработал, используя недокументированную инструкцию процессора LOADALL . [ 3 ] [ 4 ] это было слишком медленно, чтобы быть практичным. Изменения микрокода для шага E-2 снова увеличили скорость. [ 5 ] [ 6 ] Эту раннюю реализацию можно рассматривать как предшественник настоящих виртуальных машин DOS.
В конце концов, в 1986 году Concurrent DOS 286 была переработана из потенциальной настольной операционной системы в FlexOS 286 для промышленного использования. [ 7 ] [ 8 ] также получила лицензию В 1986 году IBM на свою ОС 4680 . [ 9 ] [ 10 ]
Когда процессор Intel 80386 с его виртуальным режимом 8086 стал доступен (в виде образцов с октября 1985 года и в больших количествах с июня 1986 года), Digital Research перешла на его использование для запуска программ DOS в реальном режиме на виртуальных машинах DOS в защищенном режиме под Concurrent DOS 386 1.0 (февраль). 1987) [ 11 ] и FlexOS 386 1.0 (июнь 1987 г.). [ 12 ] Однако архитектура этих многопользовательских многозадачных Операционные системы защищенного режима сами по себе не были основаны на DOS.
Позже Concurrent DOS 386 была разработана и стала многопользовательской DOS (с 1991 года) и REAL/32 (с 1995 года). Позже в 1993 году FlexOS 386 стала ОС 4690 .
VDM на базе DOS
[ редактировать ]В отличие от этих операционных систем с защищенным режимом, DOS по умолчанию является операционной системой реального режима, переключающейся в защищенный режим и виртуальный режим 86 только от имени диспетчеров памяти и расширителей DOS, чтобы обеспечить доступ к расширенной памяти или карте в памяти в первый мегабайт, доступный обычным программам DOS.
VDM на базе DOS появились вместе с Microsoft Windows/386 2.01 в сентябре 1987 года. [ 13 ] Виртуальные машины DOS на базе DOS также присутствовали в Windows 3.0 , 3.1x и Windows for Workgroups 3.1x, работавших в расширенном режиме 386, а также в Windows 95 , 98 , 98 SE и ME . Одной из характеристик этих решений, работающих поверх DOS, является то, что структура памяти, показанная внутри виртуальных машин DOS, представляет собой виртуальные экземпляры системы DOS и конфигурацию драйвера DOS, выполняемую до загрузки многозадачной системы, и эти запросы не могут быть обработаны в защищенном режиме. передаются в системный домен для выполнения базовой системой DOS.
По архитектуре похож на расширенный режим Windows 3.x 386, EMM386 3.xx Novell DOS 7 . [ 1 ] [ 14 ] Кальдера OpenDOS 7.01 , [ 14 ] [ 15 ] ДР-ДОС 7.02 [ 16 ] (и более поздние версии) также использует VDM на базе DOS для поддержки вытесняющей многозадачности нескольких приложений DOS, когда EMM386 /MULTI используется опция. [ 14 ] [ 15 ] [ 16 ] Этот компонент находится в разработке в Digital Research / Novell с 1991 года. [ номер 1 ] под кодовым названием «Владивар» (изначально отдельный драйвер устройства KRNL386.SYS[ 1 ] [ 14 ] вместо модуля EMM386). Хотя в первую очередь он был разработан для следующей основной версии DR DOS, выпущенной как Novell DOS 7 в 1994 году, [ 1 ] [ 14 ] он также использовался в никогда не выпускавшихся проектах DR DOS «Пантера» и « Звездный путь » в 1992/1993 годах.
ОС/2 МВДМ
[ редактировать ]Несколько виртуальных машин DOS (MVDM) используются в OS/2 2.0 и более поздних версиях с 1992 года. [ 1 ] [ 4 ] OS/2 MVDM значительно более мощны, чем NTVDM . Например, поддерживаются блочные устройства, а в OS/2 MVDM можно загружать различные версии DOS. [ 17 ] В то время как блок DOS OS/2 1.x был основан на DOS 3.0, MVDM OS/2 2.x эмулируют DOS 5.0. [ 1 ]
Бесшовная интеграция приложений Windows 3.1 и более поздних версий Win32s в OS/2 — это концепция, которая на первый взгляд похожа на бесшовную интеграцию XP Mode на основе Windows Virtual PC в Windows 7 . Перенаправитель в «гостевом» VDM или NTVDM обеспечивает доступ к дискам «хоста» OS/2 или NT. Приложения в «гостевом режиме» могут использовать именованные каналы для связи со своим «хостом». [ 18 ]
Из-за технических ограничений приложения DOS и 16-битной Windows под OS/2 не могли видеть более 2 ГБ места на жестком диске; [ 19 ] это было исправлено в ArcaOS 5.0.4. [ 20 ]
Windows НТВДМ
[ редактировать ]NTVDM — системный компонент всех IA-32 редакций семейства Windows NT, начиная с 1993 года с момента выпуска Windows NT 3.1 . Он позволяет выполнять 16-битные приложения Windows и 16-битные/32-битные приложения DOS. Исполняемый файл пользовательского режима 32-разрядной версии Windows NT, который формирует основу для единой среды DOS (или Windows 3.x ), называется ntvdm.exe . [ 1 ]
Для выполнения программ DOS NTVDM загружает NTIO.SYS , который, в свою очередь, загружает NTDOS.SYS , который выполняет измененную COMMAND.COM для запуска приложения, которое было передано NTVDM в качестве аргумента командной строки. 16-битные системные файлы реального режима представляют собой урезанную версию своих MS-DOS 5.0. эквивалентов IO.SYS , MSDOS.SYS и COMMAND.COM [ 1 ] со всеми жесткими предположениями о файловой системе FAT и использованием недопустимого кода операции 0xC4 0xC4 для перехода в 32-битный NTVDM для обработки запросов. [ 1 ] Первоначально NTDOS сообщала программам версию DOS 30.00. [ 1 ] но вскоре это было изменено, чтобы сообщать о версии 5.00 на INT 21h/AH=30h
и 5.50 в INT 21h/AX=3306h
чтобы позволить большему количеству программ работать без изменений. [ 1 ] Это справедливо даже для новейших выпусков Windows; многие дополнительные функции и команды MS-DOS, представленные в версиях MS-DOS 6.x и Windows 9x , отсутствуют.
16-разрядные приложения Windows по умолчанию запускаются в своем собственном потоке в рамках одного процесса NTVDM. Хотя NTVDM сам по себе является 32-битным процессом и выполняет преимущественно многозадачную работу по отношению к остальной части системы, 16-битные приложения внутри него совместно выполняют многозадачность по отношению друг к другу. » или в файле ярлыка приложения установлен флажок «Запускать в отдельном пространстве памяти» Если в поле « Выполнить , каждое 16-разрядное приложение Windows получает собственный процесс NTVDM и, следовательно, выполняет упреждающую многозадачность по отношению к другим процессам, включая другие 16-разрядные. битовые приложения Windows. NTVDM эмулирует вызовы и таблицы BIOS, а также ядро Windows 3.1 и 16-разрядные заглушки API. [ 21 ] 32-битный WoW уровень трансляции обрабатывает 16-битные процедуры API.
32-битная эмуляция DOS присутствует для интерфейса защищенного режима DOS (DPMI) и 32-битного доступа к памяти. Этот уровень преобразует необходимые вызовы расширенной и расширенной памяти для функций DOS в вызовы памяти Windows NT. wowexec.exe — это уровень эмуляции, эмулирующий 16-разрядную версию Windows. В Windows 2000 и Windows XP добавлена эмуляция Sound Blaster 2.0. [ 22 ] 16-битные драйверы виртуальных устройств и драйверы блочных устройств DOS (например, RAM-диски) не поддерживаются. Межпроцессное взаимодействие с другими подсистемами может осуществляться через OLE , DDE и именованные каналы .
Поскольку виртуальный режим 8086 недоступен на процессорах, отличных от x86 (точнее, MIPS , DEC Alpha и PowerPC ), NTVDM вместо этого реализован в этих версиях NT как полный эмулятор с использованием кода, лицензированного у Insignia's SoftPC . [ 23 ] [ 1 ] До Windows NT 3.51 доступна только эмуляция 80286. В Windows NT 4.0 была добавлена эмуляция 486 . [ 24 ]
NTVDM не входит в состав 64-разрядных версий Windows или версий на базе ARM32, таких как Windows RT или Windows 10 IoT Core. Windows 10 — последняя версия Windows, включающая этот компонент, поскольку в Windows 11 прекращена поддержка 32-разрядных процессоров.
Команды
[ редактировать ]Следующий список команд является частью подсистемы MS-DOS Windows XP. [ 18 ]
Проблема безопасности
[ редактировать ]В январе 2010 года Google исследователь безопасности Тэвис Орманди обнаружил серьезную уязвимость в реализации VDM в Windows NT, которая позволяла непривилегированным пользователям повышать свои привилегии до уровня СИСТЕМА , который был отмечен как применимый к безопасности всех x86-версий ядра Windows NT с 1993 года. Это включали все 32-разрядные версии Windows NT, 2000, XP, Server 2003, Vista, Server 2008 и Windows 7. [ 25 ] Орманди опубликовал экспериментальный эксплойт для уязвимости. [ 26 ] До выпуска Microsoft исправления безопасности обходным путем этой проблемы было отключение поддержки 16-битных приложений, что препятствовало запуску старых программ (написанных для DOS и Windows 3.1). 64-разрядные версии Windows не затрагиваются, поскольку подсистема NTVDM не включена. [ 27 ] [ 28 ] После того как исправления безопасности Microsoft были применены к затронутым операционным системам, VDM можно было безопасно повторно включить. [ номер 2 ]
Ограничения
[ редактировать ]В 16-разрядной подсистеме Windows XP (но не в более ранних версиях Windows NT) существует ограничение из-за повышенного лимита на сеанс для объектов GDI, из-за которого дескрипторы GDI смещаются вправо на два бита при преобразовании их из От 32 до 16 бит. [ 29 ] В результате фактический дескриптор не может быть больше 14 бит и, следовательно, 16-битные приложения, которые получают дескриптор больше 16384 в результате сбоя системы GDI, завершаются с сообщением об ошибке. [ 29 ]
В целом, VDM и подобные технологии не позволяют удовлетворительно запускать большинство старых игр для DOS на современных компьютерах. Эмуляция предусмотрена только для самых простых периферийных устройств, часто реализована не полностью. [ нужна ссылка ] . Например, эмуляция звука в NTVDM очень ограничена. Версии Windows семейства NT обновляют реальный экран только несколько раз в секунду, когда на него пишет программа DOS, и они не эмулируют графические режимы с более высоким разрешением. Поскольку программное обеспечение в основном работает на скорости центрального процессора, все циклы синхронизации истечет преждевременно. Это либо приводит к тому, что игра работает слишком быстро, либо к тому, что программное обеспечение даже не замечает эмулируемые периферийные устройства, поскольку оно не ждет ответа достаточно долго.
Отсутствие в архитектурах x64 и AArch64.
[ редактировать ]В x86-64 процессорах виртуальный режим 8086 доступен как подрежим только в его устаревшем режиме (для работы 16- и 32-битных операционных систем), а не в собственном 64-битном длинном режиме . [ 30 ] NTVDM не поддерживается в версиях Windows x86-64. [ 31 ] включая программы DOS, [ 32 ] поскольку NTVDM использует режим ЦП VM86 вместо таблицы локальных дескрипторов, чтобы включить 16-битный сегмент, необходимый для адресации. [ 33 ] NTVDM также недоступен в версиях Windows AArch64 (например, Windows RT ), поскольку Microsoft не выпустила полный эмулятор для этого несовместимого набора инструкций, как это было в предыдущих несовместимых архитектурах.
Хотя NTVDM не поддерживается в версиях Windows x86-64 и AArch64, их все равно можно запускать с помощью программного обеспечения виртуализации , такого как Windows XP Mode в не домашних версиях Windows 7 или VMware Workstation . Другие методы включают использование NTVDMx64, [ 34 ] неофициальный порт эмулируемой реализации NTVDM из утекшего исходного кода Windows NT 4.0 для платформ, отличных от x86, [ 23 ] или OTVDM (WineVDM), 16-битный интерпретатор Windows, основанный на эмуляции i386 MAME и 16-битной части популярного уровня совместимости Windows Wine . [ 35 ]
ВиноВДМ
[ редактировать ]VDM включен в Wine и CrossOver для Linux и Mac OS X и известен как WineVDM (также известный как OTVDM). Он также был перенесен на саму Windows, поскольку 64-разрядные версии Windows не включают подсистему NTVDM. [ 36 ]
См. также
[ редактировать ]- Сравнение программного обеспечения для виртуализации платформ
- DESQview 386 (с 1988 г.)
- Вино (программное обеспечение)
- DOSBox
- DOSEMU
- Объединение (программное обеспечение)
- Список компонентов Microsoft Windows
- Гипервизор
- Windows в Windows (WoW)
- Виртуальная машина (ВМ)
Примечания
[ редактировать ]- ^ KRNL386.SYS DR DOS "Пантера" имеет строки авторских прав "1991,1992".
- ^ Отключенный VDM можно снова включить, вернув соответствующий ключ реестра на
"HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Microsoft\Windows\AppCompat\VDMDisallowed"=dword:00000000
.
Ссылки
[ редактировать ]- ^ Перейти обратно: а б с д и ж г час я дж к л м Шульман, Эндрю; Браун, Ральф Д .; Макси, Дэвид; Михелс, Раймонд Дж.; Кайл, Джим (1994) [ноябрь 1993 г.]. Недокументированная DOS: Руководство программиста по зарезервированным функциям и структурам данных MS-DOS - расширено и включает MS-DOS 6, Novell DOS и Windows 3.1 (2-е изд.). Ридинг, Массачусетс: Эддисон Уэсли . ISBN 0-201-63287-Х . (xviii+856+vi страниц, 3,5-дюймовая дискета) Исправления: [1] [2]
- ^ Перейти обратно: а б «Одновременные вызовы DOS-286 в Unix» . Журнал БАЙТ . 10 (5): 375–377. Май 1985 г. Архивировано из оригинала 14 сентября 2018 г. Проверено 23 января 2017 г. [3]
- ^ «Concurrent DOS 68K 1.2 — Комплект разработчика для Motorola VME/10 — Диск 2» . 6 августа 1986 г. [8 апреля 1986 г.] . Проверено 13 сентября 2018 г. (Примечание. Этот пакет также включает в себя некоторые файлы заголовков из Concurrent DOS 286 , включая STRUCT.H, в котором явно упоминается LOADALL для «эмуляции 8086».)
- ^ Перейти обратно: а б Дейтел, Харви М.; Коган, Майкл С. (1992). Проект OS/2 . Аддисон-Уэсли . ISBN 0-201-54889-5 .
- ^ Фостер, Эдвард (13 мая 1985 г.). «Super DOS ждет новый 80286 — Concurrent DOS 286 — отложен до тех пор, пока Intel не обновит чип — предлагает мощность Xenix и совместимость с IBM PC» . Инфомир . 7 (19). Медиа-группа InfoWorld : 17–18. ISSN 0199-6649 . Архивировано из оригинала 3 апреля 2019 г. Проверено 3 апреля 2019 г.
- ^ Фостер, Эдвард (26 августа 1985 г.). «Intel демонстрирует новый чип 80286 — будущее Concurrent DOS 286 от DRI все еще неясно после исправления процессора» . Инфомир . 7 (34). InfoWorld Media Group : 21. ISSN 0199-6649 . Архивировано из оригинала 3 апреля 2019 г. Проверено 3 апреля 2019 г.
- ^ Дополнение FlexOS для компьютеров на базе Intel iAPX 286 (PDF) . 1.3 (1-е изд.). Digital Research, Inc. , ноябрь 1986 г. Архивировано (PDF) из оригинала 3 апреля 2019 г. Проверено 14 августа 2018 г.
- ^ ЦБ РФ, изд. (15 января 1987 г.). «Digital Research запускает производственную операционную систему реального времени FlexOS 286» . Обзор компьютерного бизнеса . Архивировано из оригинала 18 января 2013 г. Проверено 15 сентября 2018 г.
- ^ Кальво, Мелисса; Форбс, Джим (10 февраля 1986 г.). «IBM будет использовать операционную систему DRI» . Инфомир . Архивировано из оригинала 3 апреля 2019 г. Проверено 6 сентября 2011 г.
- ^ «IBM выбирает Concurrent DOS-286 для розничной системы PC AT» (PDF) . Европейское обозрение (18). Цифровые исследования : 1 марта 1986 г. Архивировано (PDF) из оригинала 3 апреля 2019 г. Проверено 15 сентября 2018 г.
- ^ Вайс, Иржи (16 февраля 1987 г.). «DRI выпустит многопользовательскую операционную систему 80386» . Инфомир . 9 (7): 1, 8. Архивировано из оригинала 03 апреля 2019 г. Проверено 22 января 2017 г. [4]
- ^ ЦБ РФ, изд. (3 июня 1987 г.). «Digital Research демонстрирует FlexOS 386 реального времени» . Обзор компьютерного бизнеса . Архивировано из оригинала 28 июня 2013 г. Проверено 6 сентября 2011 г.
- ^ Некасек, Михал (21 мая 2011 г.). «Виндовс/386 2.01» . Музей ОС/2. Архивировано из оригинала 3 апреля 2019 г. Проверено 2 апреля 2019 г.
- ^ Перейти обратно: а б с д и Пол, Матиас Р. (30 июля 1997 г.) [1 мая 1994 г.]. NWDOS-TIPs — Советы и рекомендации по Novell DOS 7 с учетом недокументированных подробностей, ошибок и обходных путей . Выпуск 157 (на немецком языке) (3-е изд.). Архивировано из оригинала 3 ноября 2016 г. Проверено 6 сентября 2014 г.
{{cite book}}
:|work=
игнорируется ( помощь ) (Примечание. NWDOSTIP.TXT — это всеобъемлющая работа по Novell DOS 7 и OpenDOS 7.01 , включая описание многих недокументированных функций и внутренних устройств. Это часть еще более крупной коллекции автора MPDOSTIP.ZIP, поддерживаемой до 2001 года и распространяемой на многих сайтах в то время. Предоставленная ссылка указывает на более старую версию файла NWDOSTIP.TXT, преобразованную в HTML.) mpdostip.zip. - ^ Перейти обратно: а б Серия справочников для разработчиков OpenDOS — Руководство по многозадачному API OpenDOS — Руководство программиста . Великобритания: Caldera, Inc. , август 1997 г. Номер детали Caldera 200-DOMG-004. Архивировано из оригинала 10 сентября 2017 г. Проверено 2 ноября 2016 г.
- ^ Перейти обратно: а б Руководство пользователя Caldera DR-DOS 7.02 . Caldera, Inc. , 1998 г. [1993, 1997]. Архивировано из оригинала 5 ноября 2016 г. Проверено 6 сентября 2014 г.
- ^ «Методы настройки оболочки рабочего места OS/2» (PDF) . Красная книга IBM . 1994. стр. 68–80. Архивировано из оригинала (PDF) 20 марта 2012 г. Проверено 5 июля 2011 г.
- ^ Перейти обратно: а б «Команды подсистемы MS-DOS» . Майкрософт .
- ^ «Почему мои сеансы DOS и Win-OS/2 не видят более 2 ГБ свободного места?» . Арка Ноаэ, ООО . Архивировано из оригинала 07 июля 2021 г. Проверено 3 сентября 2020 г.
- ^ «Примечания к выпуску ArcaOS» . 31 августа 2020 г. [15 мая 2017 г.]. Архивировано из оригинала 16 марта 2021 г. Проверено 3 сентября 2020 г.
- ^ «Глава 27. Совместимость Windows и миграция» . Ресурсный комплект Windows NT 4.0 . Майкрософт . 20 февраля 2014 г. Проверено 19 июля 2017 г.
- ^ Шульман, Джерольд (4 декабря 2002 г.). «Как устранить неполадки программ MS-DOS, работающих в Windows XP?» . ИТПро Windows . Проверено 19 июля 2017 г.
- ^ Перейти обратно: а б "leecher1337/ntvdmx64" . Гитхаб . Проверено 3 ноября 2018 г. Дополнительная документация Эдварда Мендельсона
- ^ «ИНФОРМАЦИЯ: Как Windows обрабатывает вычисления с плавающей запятой» . Поддержка Майкрософт . 21 ноября 2006 г. Архивировано из оригинала 24 февраля 2013 г. Проверено 19 июля 2017 г.
- ^ «Бюллетень по безопасности Microsoft MS10-015 — Важно: уязвимости в ядре Windows делают возможным несанкционированное получение прав (977165)» . Техцентр безопасности . Майкрософт . 17 марта 2010 г. Проверено 2 ноября 2012 г.
- ^ Орманди, Тэвис (19 января 2010 г.). «Обработчик ловушек Microsoft Windows NT #GP позволяет пользователям переключать стек ядра» . CVE-2010-0232 . Полное раскрытие . Проверено 13 апреля 2013 г.
- ^ Фаррелл, Ник (20 января 2010 г.). «Древняя ошибка Windows обнаружена спустя 17 лет» . Спрашивающий . Острый. Архивировано из оригинала 23 января 2010 г. Проверено 21 января 2010 г.
{{cite web}}
: CS1 maint: неподходящий URL ( ссылка ) - ^ «Рекомендации Microsoft по безопасности (979682): Уязвимость в ядре Windows может привести к несанкционированному повышению привилегий» . ТехНет . Майкрософт . 20 января 2010 г. Проверено 21 января 2010 г.
- ^ Перейти обратно: а б Проблема «Подсистеме Win 16 недостаточно ресурсов для продолжения работы» в Windows XP
- ^ Руководство разработчика программного обеспечения для архитектур Intel 64 и IA-32. Объединенные тома: 1, 2A, 2B, 2C, 3A, 3B и 3C (PDF) (PDF). Интел . Июнь 2013 г. [1997]. 325462-047США . Проверено 2 июля 2013 г.
- ^ Кляйн, Хельге (11 марта 2008 г.). «Windows x64 — все то же самое, но очень разные, часть 5: NTVDM, службы, WoW64» . Проверено 21 июля 2013 г.
- ^ «Список ограничений в 64-битной Windows» . Корпорация Майкрософт. 11 октября 2007 г. Проверено 19 июля 2017 г.
- ^ «modify_ldt(2)» . Руководство программиста Linux . Проверено 21 июля 2019 г.
- ^ «NTVDMx64 от Leecher1337» . www.columbia.edu . Проверено 25 марта 2023 г.
- ^ «Виневдм» . Гитхаб . Проверено 21 июля 2019 г. Дополнительная документация Эдварда Мендельсона
- ^ "Отя128/Виневдм" . Гитхаб .
Дальнейшее чтение
[ редактировать ]- Пьетрек, Мэтт (август 1998 г.). «Под капотом» . Системный журнал Microsoft . Архивировано из оригинала 13 июля 2017 г. Получено 22 января 2020 г. - через bytepointer.com.
Внешние ссылки
[ редактировать ]- Структура виртуальной машины DOS
- Устранение неполадок программ на базе MS-DOS в Windows XP
- Устранение неполадок приложения MS-DOS, которое зависает подсистему NTVDM в Windows XP и Windows Server 2003
- Устранение неполадок программ последовательной связи на базе MS-DOS в Windows 2000 и более поздних версиях.
- MS-DOS Player для Win32-x64, эмулятор Microsoft MS-DOS , запускает множество программ DOS командной строки, таких как компиляторы или другие инструменты, также упакованные в один автономный исполняемый файл.
- vDOS — эмулятор DOS, предназначенный для запуска более «серьёзных» приложений DOS (не игр) в 64-битных системах NT (фактически замена NTVDM в современных системах).