Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
АВМиС - бывшее АПЭВМ / Шпоргалка_apevm.doc
Скачиваний:
32
Добавлен:
15.09.2014
Размер:
146.94 Кб
Скачать

Билет 25 Защищённый режим

Рассматриваются те возможности МП, которые поддерживают работу многозадачных операционных систем. Вначале рассматриваются средства управления памятью этих микропроцессоров. Они позволяют операционной системе изолировать задачи друг от друга и тем самым предотвратить влияние работы отдельных задач друг на друга и на всю систему. Средства управления памятью также позволяют выполнять программу в разных областях памяти, не требуя при этом ее перетрансляции. Это позволяет операционной системе оптимизироваать использование памяти путем перемещения задач. И, наконец, средства управления памятью обеспечивают совместное использование информации задачами. Все это возможно при использовании средств защищенного режима МП 80286/80386, предназначенных для управления виртуальной памятью. Основным в управлении памятью является процесс преобразования адресов, используемых программами, в адреса, приемлемые для аппаратуры памяти.

Управление памятью МП 80286 в защищенном режиме МП 80286 преобразует логические адреса (т.е. адреса, созданные программистом) в физические (используемые аппаратурой) преобразованием сегмента: логический (виртуальный) адрес (содержимое селектора сегмента и смещения сегмента) преобразуется в линейный адрес, который в данном микропроцессоре совпадает с физическим адресом.

Процесс преобразования скрыт от разработчика прикладных программ. На рис. 3.23 показан путь преобразования адреса из логического (виртуального) в физический в МП 80286.

15 0 15 0

┌─────────────────┐ ┌────────────────────┐

Логический│ Селектор │ │ Смещение │

адрес └─────────────────┘ └────┬───────────────┘

┌─────────∙──────────┐

│ Преобразование │

│ сегмента │

└─────────┬──────────┘

24 │ 0

┌──────────────∙──────────────┐

Физический│ Физический адрес │

адрес └─────────────────────────────┘

В процессе преобразования логического (виртуального) адреса в физический процессор использует следующие структуры данных: 1) дескрипторы; 2) таблицы дескрипторов; 3) селекторы.

Управление памятью МП 80386 в защищенном режиме МП 80386 преобразует логические адреса (т.е. адреса, созданные программистом) в физические адреса (т.е. в абсолютные адреса в физической памяти) двумя способами: 1) преобразованием сегмента: логический адрес (содержимое селектора сегмента и смещение сегмента) преобразуется в линейный адрес (см. рис. 3.25); 2) преобразованием страницы: линейный адрес преобразуется в физический адрес. Этот элемент разбиения используется обычно разработчиком системных средств (рис. 3.27). Оба преобразования скрыты от программистов прикладных задач. На рис. 3.24 показано два типа преобразования адресов.

15 0 31 0

┌─────────────────┐ ┌─────────────────────────────┐

Логический│ Селектор │ │ Смещение │

адрес └─────────────────┘ └────┬────────────────────────┘

┌─────────∙──────────┐

│ Преобразование │

│ сегмента │

└─────────┬──────────┘

┌─────────∙──────────┐ Замаскировано

│ Разбиение на стра- ├─────────────────┐

│ ницы разрешено │ │

│(разряд PG в CR0=1)?│ │

└─────────┬──────────┘ │

│Разрешено │

┌─────────────┬───────∙────────┬─────────────┐ │

Линейный │ Каталог │ Страница │ Смещение │ │

адрес └─────────────┴───────┬────────┴─────────────┘ │

│ │

┌─────────∙──────────┐ │

│ Преобразование │ │

│ страницы │ │

└─────────┬──────────┘ │

<────────────────────────────┘

31 │ 0

┌──────────────∙──────────────┐

Физический│ Физический адрес │

адрес └─────────────────────────────┘

Рис. 3.24. Процесс преобразования адреса в МП 80386

В процессе преобразований микропроцессор 80386 использует следующие структуры данных: 1) дескрипторы; 2) таблицы дескрипторов; 3) селекторы; 4) сегментные регистры.

15 0 31 0

┌─────────────────┐ ┌─────────────────────────────┐

Логический│ Селектор │ │ Смещение │

адрес └────┬────────┬───┘ └──────────────┬──────────────┘

│ │ │

┌───────┘ │ │

│ Таблица дескрипторов │

│ ┌───────────────────┐ │

│ │ │ │

│ │ │ │

│ │ │ │

│ ├───────────────────┤Базовый┌───┐ │

└──>Дескриптор сегмента├───────> + <──┘

├───────────────────┤ адрес └─┬─┘

│ │ │

│ │ │

└───────────────────┘ ┌────┘

┌─────────────┬───────∙────────┬─────────────┐

Линейный │ Каталог │ Страница │ Смещение │

адрес └─────────────┴────────────────┴─────────────┘

Рис. 3.25. Преобразование сегмента

Преобразование страниц Во второй фазе преобразования адреса МП 80386 преобразует линейный адрес в физический. Эта фаза преобразования адреса является базовым средством, необходимым для странично-ориентированных систем виртуальной памяти и странично-уровневой защиты. Шаг преобразования страниц необязателен. Преобразование страниц выполняется только тогда, когда флажок PG в регистре CR0 установлен в 1. Этот флажок обычно устанавливается во время программной инициализации. Он должен быть установлен, если операционная система поддерживает несколько виртуальных задач МП 8086, странично-ориентированную защиту или странично-ориентированную виртуальную память.

Линейный адрес Линейный адрес косвенно связан с физическим адресом через определители таблицы страниц, страницу внутри этой таблицы и смещение внутри этой таблицы. На рис. 3.26 показан формат линейного адреса.

┌─────────────┬────────────────┬─────────────┐

│ Каталог │ Страница │ Смещение │

└─────────────┴────────────────┴─────────────┘

Рис. 3.26. Формат линейного адреса

На рис. 3.27 показано, как микропроцессор преобразует поля "Каталог", "Страница" и "Смещение" линейного адреса в физический адрес в результате использования двухуровневой таблицы страниц. Механизм адресации использует поле "Каталог" как индекс в каталоге страниц и поле "Страница" как индекс в таблице страниц, определенной каталогом страниц, а также поле "Смещение" как адрес байта внутри страницы, определенной таблицей страниц.

┌─────────────┬────────────────┬─────────────┐

│ Каталог │ Страница │ Смещение │

└──────┬──────┴────────┬───────┴──────┬──────┘

│ │ │

│ │ │

│ │ │

┌─────────────────┘ ┌────────┘ │

│ │ │ ┌───────────────┐

│ Каталог страниц │ Таблица страниц └────> │

│ ┌─────────────────┐ │┌────────────────┐ │ Физический │

│ │ │ ││ │ │ адрес │

│ │ │ │├────────────────┤ │ │

│ ├─────────────────┤ ││Элемент таблицы │ │ │

└─>Элемент каталога ├─┐ └> страниц ├──────────> │

├─────────────────┤ │ ├────────────────┤ └───────────────┘

│ │ │ │ │

│ │ │ │ │

└────────°────────┘ │ └───────°────────┘

│ └───────────┘

Регистр PDBR│

┌─────┐ │

│ CR3 ├────┘

└─────┘

Рис. 3.27. Преобразование страниц

Файловая система