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

Оцените статью

windows714501 Виртуальная DOS машинаПрограммы MS-DOS взаимодействовали с компьютерным оборудованием напрямую; они могли непосредственно управлять адаптером дисплея для изменения разрешения экрана, могли напрямую обращаться к последовательным и параллельным портам компьютера для управления модемами и принтерами, и взаимодействие с операционной системой они осуществляли посредством специальных инструкций процессора, называемых Программными прерываниями. В современных программах Windows все это запрещено. Все оборудование управляется исключительно ядром операционной системы и его драйверами устройств, поэтому эти пользовательские программы, не соответствующие современным стандартам, не могут пересилить операционную систему. (Разумеется, это могут сделать и делают нестандартные драйверы устройств.) При попытке запустить на выполнение любую программу Windows исследует ее, чтобы определить, какое окружение операционной системы ей требуется. Программные файлы, имена которых оканчиваются на. СОМ, являются исключительно программами MS-DOS. Файлы, чьи имена оканчиваются на. EXE, могут быть программами Win32, Windows 3.1 или MS-DOS. В этом случае Windows исследует первые несколько байт программного файла, указывающих на различие. Когда обнаружится, что дан запрос на запуск программы MS-DOS, Windows запускает программу под названием ntvdm. exe, которая, в свою очередь, считывает и интерпретирует DOS-программу. NTVDM действует в качестве посредника между DOS-программой и Windows и выполняет следующие функции: Распределяет память, организованную в стиле старой РС-архитектуры: 640 Кбайт памяти доступно для имитации DOS-окружения и для прикладной программы, а также имитируются интерфейсы отображаемой (expanded) и дополнительной (extended) памяти, позволяющие MS-DOS преодолеть рубеж в 1 Мбайт. NTVDM обрабатывает любые программные прерывания, выдаваемые программой, и переводит запросы к системе MS-DOS в эквиваленты Windows. NTVDM выделяет память, которая предстает перед программой MS-DOS в виде памяти адаптера дисплея. NTVDM отслеживает эту память и при изменении ее состояния отображает соответствующие изменения в окне командной строки. Если программа выдает инструкции по переводу дисплея в графический режим, NTVDM переводит окно командной строки в полноэкранный режим. Затем

Комментирование закрыто.

Вверх страницы