Глава 9

ПРОГРАММИРОВАНИЕ ДЛЯ ЗАЩИЩЕННОГО РЕЖИМА

9.1 РАСШИРИТЕЛЬ ДОС

Программы для защищенного режима, создаваемые средой ВР, работают под управлением расширителя ДОС, который называется RTM [Run—Time Manager — администратор периода исполнения программы). Расширитель ДОС автоматически пристыковывается к программе и первым получает управление после ее загрузки. Он переводит процессор в защищенный режим работы и предоставляет программисту богатый набор возможностей этого режима с помощью процедур и функций, реализованных в модуле WinAPI. При попытке программы завершить свою работу с помощью обращения к функции $4С прерывания $21 расширитель переводит процессор в реальный режим и передает управление ДОС.

Расширитель ДОС является посредником между программой и так называемым сервером DPMI, который, собственно, и реализует все запросы программы (см. рис.9.1). Специально для целей работы в защищенном режиме разработан промышленный стандарт DPMI (DOS—Protected Mode Interface — интерфейс для защищенного режима ДОС). В этом стандарте определен набор системных прерываний, с помощью которых программа удовлетворяет все свои запросы в защищенном режиме. ВР использует сервер DPMI (файл DPMI16BI.OVL}, основанный на версии 0.9 стандарта, и дополняет его возможности по части вызова программных прерываний ДОС и BIOS.

Программа

Расширитель ДОС

DPMI-сервер

MS-DOS Рис.9.1. Взаимодействие программы с MS-DOS в защищенном режиме

Интерфейс DPMI документирован и программа при желании может использовать обращение непосредственно к серверу DPMI с помощью