Студопедия.Орг Главная | Случайная страница | Контакты | Мы поможем в написании вашей работы!  
 

Схема трансляции сегментов



МП содержит 6 регистров сегментов. Это означает, что одновременно могут быть активными и участвовать в процедуре трансляции только 6 сегментов. Для загрузки сегментов данных, включая сегмент стека, имеются специальные команды "загрузить сегмент".

В работе механизма защиты при обращении к данным можно выделить два этапа:

· загрузка (активизация) сегмента данных,

· обращение к сегменту данных для чтения или записи операндов при выполнении команд программы (с использованием процедуры трансляции сегмента).

Загрузка сегментов данных (включая стековые)производится командами "Загрузка указателя в регистр смещения". Это команда типа регистр - память:

(LDS, LES, LFS, LGS, LSS) reg, mem.

Основные этапы выполнения команды:

· чтение по адресу "mem";

· прочитанные данные интерпретируются как селектор целевого сегмента и смещение (адрес в целевом сегменте),

· сохранение выбранных значений в буферных регистрах,

· обращение к таблице дескрипторов по выбранному целевому селектору,

· сохранение значения дескриптора целевого сегмента в дескрипторный регистр, ассоциативно связанный с заданным сегментным регистром;

· загрузка в РОН, указанный полем reg команды, смещения, выбранного при чтении по адресу "mem". В дальнейшим этот адрес может использоваться в качестве базового для задания адресов компонентами.

Схема выполнения команды загрузки сегментного регистра (рис. 3.19).

Обобщенная схема вычисления линейного адреса в защищенном режиме представлена на рис. 3.20.


Результатом трансляции сегмента является линейный адрес. Это адрес линейной (плоской) памяти. Но он необязательно должен совпадать с адресом физической памяти. Все зависит от бита включения механизма подкачки страниц (трансляции страниц) в управляющем регистре СR3. Если он не включен, то линейный адрес является адресом обращения к физической памяти, иначе производится трансляция страниц для формирования физического адреса.

Вопросы для самопроверки:

1. 5 групп двуместных команд.

2. Структура команд МП IA-32 (побайтно).

3. Префикс блокировки шины.

4. Префикс блокировки замены сегмента.

5. Префикс переключения разрядности адреса.

6. Префикс повторения.

7. Поля и назначение постбайта в МП IA-32.

8. Поля и назначение SIB-байта в МП IA-32.

9. Процедура активации сегментов в МП IA-32.

10. Процедура трансляции сегментов в МП IA-32.

11. Определите и расшифруйте коды поля md постбайта в МП IA-32.

12. Определите и расшифруйте коды поля r/r постбайта в МП IA-32.

13. Определите и расшифруйте коды поля r/m постбайта в МП IA-32.





Дата публикования: 2014-11-03; Прочитано: 457 | Нарушение авторского права страницы | Мы поможем в написании вашей работы!



studopedia.org - Студопедия.Орг - 2014-2024 год. Студопедия не является автором материалов, которые размещены. Но предоставляет возможность бесплатного использования (0.005 с)...