Организация ввода-вывода. Часть 1. Виртуальные драйверы и виртуальное окружение WINDOWS. Рощин А.В. - 22 стр.

UptoLike

Составители: 

22
обработчик ошибок VMM теперь обратится к зарегистрированному
обработчику отказа страницы в виртуальном драйвере (VxD), который
виртуализует данное устройство. Тогда обработчик VxD может решить,
какое действие соответствует требованиями виртуального окружения.
Виртуальный драйвер дисплея (VDD) использует этот механизм для
виртуализации буфера видеостраницы. Когда программа DOS выполняет
запись в видеобуфер по логическому адресу b000:0000, информация не
появляется на экране, потому
что VDD пометил эту конкретную страницу
как "не представленная". Вместо этого, обращение к видеостранице
перехватывается обработчиком отказа страниц виртуального драйвера
(VxD) и переадресуется в другую область физической памяти. Это
объясняет, каким образом видеоинформация выводится в окно, вместо
того, чтобы появиться на полном экране. VxD использует тот же механизм
для арбитража доступа к другому
устройству, размещенному в адресном
пространстве памятимонохромному адаптеру.
2.3. Перехват прерываний и исключений
Кроме перехвата обращений к памяти и устройствам ввода-вывода,
Windows 95 перехватывает некоторые "привилегированные" инструкции.
К "привилегированным" инструкциям относятся инструкции, которые
могут использоваться для обхода механизмов защиты процессора, или
могут нарушить целостность виртуальной машины. К привилегированным
инструкциям относятся те инструкции, которые воздействуют на флаг
разрешения прерывания процессора (CLI, STI, POPF, RET), программные
прерывания (INT n), а
также инструкции загрузки таблиц дескрипторов
(LLDT, LDGT, LIDT). В основном Windows 95 перехватывает эти
инструкции для защиты целостности виртуальных машин. В случае
инструкции INT n Windows 95 использует захват для обеспечения
прозрачности перехвата запросов BIOS и DOS.
                                  22



обработчик ошибок VMM теперь обратится к зарегистрированному
обработчику отказа страницы в виртуальном драйвере (VxD), который
виртуализует данное устройство. Тогда обработчик VxD может решить,
какое действие соответствует требованиями виртуального окружения.
     Виртуальный драйвер дисплея (VDD) использует этот механизм для
виртуализации буфера видеостраницы. Когда программа DOS выполняет
запись в видеобуфер по логическому адресу b000:0000, информация не
появляется на экране, потому что VDD пометил эту конкретную страницу
как "не представленная". Вместо этого, обращение к видеостранице
перехватывается обработчиком отказа страниц виртуального драйвера
(VxD) и переадресуется в другую область физической памяти. Это
объясняет, каким образом видеоинформация выводится в окно, вместо
того, чтобы появиться на полном экране. VxD использует тот же механизм
для арбитража доступа к другому устройству, размещенному в адресном
пространстве памяти – монохромному адаптеру.

     2.3. Перехват прерываний и исключений
     Кроме перехвата обращений к памяти и устройствам ввода-вывода,
Windows 95 перехватывает некоторые "привилегированные" инструкции.
К "привилегированным" инструкциям относятся инструкции, которые
могут использоваться для обхода механизмов защиты процессора, или
могут нарушить целостность виртуальной машины. К привилегированным
инструкциям относятся те инструкции, которые воздействуют на флаг
разрешения прерывания процессора (CLI, STI, POPF, RET), программные
прерывания (INT n), а также инструкции загрузки таблиц дескрипторов
(LLDT, LDGT, LIDT). В основном Windows 95 перехватывает эти
инструкции для защиты целостности виртуальных машин. В случае
инструкции INT n Windows 95 использует захват для обеспечения
прозрачности перехвата запросов BIOS и DOS.