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

UptoLike

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

15
В то время, как процессы супервайзера работают вне любой
виртуальной машины (на реальной машине), процессы Win32 работают в
кольце 3 (самая низкая привилегия доступа) в виртуальной машине. Кроме
того, все процессы Win32 работают в одной и той же виртуальной машине,
называемой системной виртуальной машиной. Процессы Win32 являются
процессами защищенного 32-разрядного режима, использующими
плоскую модель памяти
, подобно процессам супервайзера.
Непосредственно адресуя 4Гб памяти, они могут практических всегда
игнорировать селекторы и сегменты.
Процессы Win16 работают в той же самой системной виртуальной
машине, что и процессы Win32. Процессы Winl6 работают в кольце
привилегий 3 защищенного режима, но не имеют преимуществ плоской
модели памяти. Поскольку они выполняются в 16-разрядном защищенном
режима, процессы Winl6 все
еще увязли в 16-мегабайтном адресном
пространстве и должны иметь дело с селекторами и 64-килобайтными
сегментами.
Каждый процесс DOS получает свою собственную виртуальную
машину. Процесс DOS не работает в защищенном режиме подобно всем
другим типам процессов. Вместо этого он выполняется в режиме V86,
эмулирующим в процессоре 80386 процессор 8086. Режим V86 означает
сегментированную модель памяти с трансляцией типа
8086 плюс
дополнение страничной организации памяти. Режим V86 также
подразумевает кольцо 3 привилегий, так что доступ к аппаратным
ресурсам ЭВМ и прерываниям скрыт и виртуализован.
Почему каждый процесс DOS получает свою собственную
виртуальную машину, в то время как все приложения Win32 и Winl6
разделяют системную виртуальную машину? Поскольку процессы DOS в
принципе не понимают, что они разделяют
систему с другими процессами,
                                     15



     В то время, как процессы супервайзера работают вне любой
виртуальной машины (на реальной машине), процессы Win32 работают в
кольце 3 (самая низкая привилегия доступа) в виртуальной машине. Кроме
того, все процессы Win32 работают в одной и той же виртуальной машине,
называемой системной виртуальной машиной. Процессы Win32 являются
процессами     защищенного   32-разрядного      режима,     использующими
плоскую       модель   памяти,     подобно      процессам      супервайзера.
Непосредственно адресуя 4Гб памяти, они могут практических всегда
игнорировать селекторы и сегменты.
     Процессы Win16 работают в той же самой системной виртуальной
машине, что и процессы Win32. Процессы Winl6 работают в кольце
привилегий 3 защищенного режима, но не имеют преимуществ плоской
модели памяти. Поскольку они выполняются в 16-разрядном защищенном
режима, процессы Winl6 все еще увязли в 16-мегабайтном адресном
пространстве и должны иметь дело с селекторами и 64-килобайтными
сегментами.
     Каждый процесс DOS получает свою собственную виртуальную
машину. Процесс DOS не работает в защищенном режиме подобно всем
другим типам процессов. Вместо этого он выполняется в режиме V86,
эмулирующим в процессоре 80386 процессор 8086. Режим V86 означает
сегментированную модель памяти с трансляцией типа 8086 плюс
дополнение страничной организации памяти. Режим V86                   также
подразумевает кольцо 3 привилегий, так что доступ к аппаратным
ресурсам ЭВМ и прерываниям скрыт и виртуализован.
     Почему     каждый   процесс    DOS      получает   свою   собственную
виртуальную машину, в то время как все приложения Win32 и Winl6
разделяют системную виртуальную машину? Поскольку процессы DOS в
принципе не понимают, что они разделяют систему с другими процессами,