Защищённый режим.

Глава 1. Обзор режимов микропроцессоров IA-32.

        Процессоры IA-32 могут работать в четырёх режимах: режиме реальных адресов, защищённом режиме, режиме виртуального процессора 8086 и режиме системного управления. Теперь более подробно об этих режимах.
1.         Режим реальных адресов (real address mode). Также вы могли встречать термин "реальный режим", что должно обозначать то же самое, хотя, это немного не правильно и ещё одно название этого режима, встречающееся в документации Intel: R-Mode. Режим реальных адресов - это режим, в котором процессор работает как "экстишка" (8086), но позволяет пользоваться большинством своих технологий (MMX / SSE / SSE2, 32-разрядные регистры общего назначения, регистры управления и отладки и пр.). После аппаратного сброса процессор переходит в этот режим и начинает выполнять программную инициализацию из BIOS-а.
        Вообще говоря, режим реальных адресов в современных процессорах предназначен для запуска компьютера и подразумевается, что операционная система будет работать в защищённом режиме (поэтому оптимизация по производительности для процессоров IA-32 производится для защищённого режима).
        В режиме реальных адресов не доступны основные достоинства процессора - виртуальная память, мультизадачность, уровни привилегий, работа с кэшами, буферами TLB, буфером ветвлений и некоторыми другими технологиями, обеспечивающими высокую производительность.

2.         Защищённый режим (protected mode или P-Mode). Как утверждает Intel, это "родной" (native) режим 32-разрядного процессора.
        В защищённый режим процессор надо переводить специальными операциями над системными регистрами и войти в этот режим процессор может только из режима реальных адресов. При работе в защищённом режиме процессор контролирует практически все действия программ и позволяет разделить операционную систему, драйвера и прикладные программы разными уровнями привилегий. Благодаря этому ОС может ограничить области памяти, выделяемой программам, запретить или разрешить ввод/вывод по любым адресам, управлять прерываниями и многое другое. При попытке программы выйти за допустимый диапазон адресов памяти, выделенной ей, либо при обращении к "запрещённым" для неё портам процессор будет генерировать исключения - специальный тип прерываний. Грамотно оперируя исключениями, операционная система может контролировать действия программ, организовать систему виртуальной памяти, мультизадачность и другие программные технологии.
        В защищённом режиме максимально доступны все ресурсы процессора. Например, R-Mode максимальный диапазон адресов памяти ограничен одним мегабайтом, а в защищённом режиме он расширен до 4 Гб для процессоров 386 и 486 и 64 Гб для Pentium-ов.

3.         Режим виртуального процессора 8086 (virtual-8086 mode) или V-Mode, или "виртуальный режим" (что, вообще говоря, не совсем правильно).
        В V-Mode можно войти только из защищённого режима. В этом режиме процессор эмулирует работу 8086 процессора (1 Мб адресного пространства, "обычные" прерывания и пр.), но при этом процессор сохраняет все средства контроля, присущие защищённому режиму.
        Обычно, V-Mode используется в операционных системах для запуска программ, рассчитанных на процессор 8086 (так называемая, "обратная совместимость ПО"). V-Mode реализуется как отдельная задача в мультизадачной среде и она может взаимодействовать с другими задачами, если, конечно же, ей позволит это операционная система.

4.         Режим системного управления (system management mode или S-Mode).

Следующая глава Оглавление Вопросы? Замечания? Пишите: sasm@narod.ru

  Copyright © Александр Семенко.
TopList

Hosted by uCoz