Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
программирование и основы алгоритмизации.doc
Скачиваний:
34
Добавлен:
21.08.2019
Размер:
4.84 Mб
Скачать

Управляющие регистры Регистр cr0.

0-й бит, разрешение защиты (РЕ). Переводит процессор в защищенный режим.

1-й бит, мониторинг сопроцессора (МР). Вызывает исключение 7 по каждой команде WAIT.

2-й бит, эмуляция сопроцессора (ЕМ). Вызывает исключение 7 по каждой команде сопроцессора.

3-й бит, бит переключения задач (TS). Позволяет определить, относится данный контекст сопроцессора к текущей задаче или нет. Вызывает исключение 7 при выполнении следующей команды сопроцессора.

4-й бит, индикатор поддержки инструкций сопроцессора (ЕТ).

5-й бит, разрешение стандартного механизма сообщений об ошибке сопроцессора (NE).

5-15-й бит, не используются.

16-й бит, разрешение защиты от записи на уровне привилегий супервизора (WP).

17-й бит, не используется.

18-й бит, разрешение контроля выравнивания (AM).

19-28-й бит, не используются.

29-й бит, запрет сквозной записи кэша и циклов аннулирования (NW).

30-й бит, запрет заполнения кэша (CD).

31-й бит, включение механизма страничной переадресации.

Регистр CR1 пока не используется.

Регистр CR2 хранит 32-битный линейный адрес, по которому был получен последний отказ страницы памяти.

Регистр CR3 - в старших 20 битах хранится физический базовый адрес таблицы каталога страниц.

Остальные биты.

3-й бит, кэширование страниц со сквозной записью (PWT).

4-й бит, запрет кэширование страницы (PCD).

Регистр CR4

0-й бит, разрешение использования виртуального флага прерываний в режиме V8086 (VME).

1-й бит, разрешение использования виртуального флага прерываний в защищенном режиме (PVI).

2-й бит, превращение инструкции RDTSC в привилегированную (TSD).

3-й бит, разрешение точек останова по обращению к портам ввода-вывода (DE).

4-й бит, включает режим адресации с 4-мегабайтными страницами (PSE).

5-й бит, включает 36-битное физическое адресное пространство (РАЕ).

6-й бит, разрешение исключения МС (МСЕ).

7-й бит, разрешение глобальной страницы (PGE).

8-й бит, разрешает выполнение команды RDPMC (РМС).

9-й бит, разрешает команды быстрого сохранения/восстановления состояния сопроцессора (FSR).

Системные адресные регистры

GDTR - 6-байтный регистр, в котором содержится линейный адрес глобальной дескрипторной таблицы.

IDTR - 6-байтный регистр, содержащий 32-битный линейный адрес таблицы дескрипторов обработчиков прерываний.

LDTR - 10-байтный регистр, содержащий 16-битный селектор (индекс) для GDT и 8-байтный дескриптор.

TR - 10-байтный регистр, содержащий 16-битный селектор для GDT и весь 8-байтный дескриптор из GDT, описывающий TSS текущей задачи.

Регистры отладки

DR0...DR3 - хранят 32-битные линейные адреса точек останова.

DR6 (равносильно DR4) - отражает состояние контрольных точек.

DR7 (равносильно DR5) - управляет установкой контрольных точек.

Режимы работы микропроцессора

Реальный режим (Real Mode). После инициализации (системного сброса) МП находится в реальном режиме. В реальном режиме МП работает как очень быстрый 8086 с возможностью использования 32-битных расширений. Механизм адресации, размеры памяти и обработка прерываний (с их последовательными ограничениями) МП 8086 полностью совпадают с аналогичными функциями других МП IA-32 в реальном режиме.

Режим системного управления (System Management Mode). В новых поколениях МП Intel появился еще один режим работы - режим системного управления. Он предназначен для выполнения некоторых действий с возможностью их полной изоляции от прикладного программного обеспечения и даже от операционной системы. МП переходит в этот режим только аппаратно: по низкому уровню на контакте SMI# или по команде с шины APIC (Pentium+). Никакой программный способ не предусмотрен для перехода в этот режим. МП возвращается из режима системного управления в тот режим, при работе в котором был получен сигнал SMI#. Возврат происходит по команде RSM. Эта команда работает только в режиме системного управления и в других режимах не распознается, генерируя исключение #6 (недействительный код операции).

Защищенный режим (Protected Mode) является основным режимом работы МП. Ключевые особенности защищенного режима: виртуальное адресное пространство, защита и многозадачность. МП может быть переведен в защищенный режим установкой бита 0 (Protect Enable) в регистре CR0. Вернуться в режим реального адреса МП может по сигналу RESET или сбросом бита PE.

В защищенном режиме программа оперирует с адресами, которые могут относиться к физически отсутствующим ячейкам памяти, поэтому такое адресное пространство называется виртуальным. Размер виртуального адресного пространства программы может превышать емкость физической памяти и достигать 64Тбайт.

Виртуальный режим i8086 (V86). В режим V86 процессор может перейти из защищённого режима, если установить в регистре флагов EFLAGS бит виртуального режима (VM-бит). Номер бита VM в регистре EFLAGS - 17. Когда процессор находится в виртуальном режиме, его поведение во многом напоминает поведение процессора i8086. В частности, для адресации памяти используется схема <сегмент:смещение>, размер сегмента составляет 64 килобайта, а размер адресуемой в этом режиме памяти - 1 мегабайт. Виртуальный режим предназначен для работы программ, ориентированных на процессор i8086 (или i8088). Но виртуальный режим – это не реальный режим процессора i8086, имеются существенные отличия. Процессор фактически продолжает использовать схему преобразования адресов памяти и средства мультизадачности защищённого режима.

В виртуальном режиме используется трансляция страниц памяти. Это позволяет в мультизадачной операционной системе создавать несколько задач, работающих в виртуальном режиме. Каждая из этих задач может иметь собственное адресное пространство, каждое размером в 1 мегабайт.

Все задачи виртуального режима обычно выполняются в третьем, наименее привилегированном кольце защиты. Когда в такой задаче возникает прерывание, процессор автоматически переключается из виртуального режима в защищённый. Поэтому все прерывания отображаются в операционную систему, работающую в защищённом режиме.

Обработчики прерываний защищённого режима могут моделировать функции соответствующих прерываний реального режима, что необходимо для правильной работы программ, ориентированных на реальный режим операционной системы MS-DOS.