Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Arkhitektura.docx
Скачиваний:
6
Добавлен:
25.09.2019
Размер:
2.08 Mб
Скачать

13. Системные регистры мп i486 (15 штук) регистры защ.Реж.

Это часть архитектуры МП, и с помощью этих регистров происходит переключение между различными режимами МП.

1 Регистры PM

а) Регистр глобальной дескрипторной таблицы GDTR и регистр дескрипторной таблицы прерываний IDTR

Оба регистра 48 разрядные и определяют дескрипторные таблицы в памяти: GDT - глобальная дескрипторная таблица, содержит дескрипторы всех имеющихся сегментов ОП. IDT – дескрипторная таблица прерываний, содержит дескрипторы прерываний по аналогии с векторами прерываний RM. Максимальный размер обеих таблиц 216=64К, а базовый начальный адрес, содержащий 32 бита говорит о том, что таблицы GDT и IDT можно размещать в любом линейном адресном пространстве в 4 Гб.

б) Регистр локальной дескрипторной таблицы LDTR и регистр задач TR

LDT является частной собственностью текущей задачи, то есть содержит дескрипторы сегментов этой текущей задачи. Селектор, загружаемый в регистр LDTR, выбирает из GDT специальный дескриптор, описывающий таблицу LDT.

Регистр TR определяет текущий сегмент состояния задачи TSS – Task State Segment, предназначенный для сохранения контекста (состояния) задачи при переключении МП с одной задачи на другую.

Селектор, загружаемый в регистр TR, выбирает из таблицы GDT специиальный дескриптор, описывающий сегмент TSS.

14. Регистры cr0-cr3.

а) CR0

MSW – Machine Status Word

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

Младшие 16 бит – MSW.

NE – Number error – численная ошибка. NE = 1 разрешает стандартный механизм сообщения об ошибках.

ET – Extended type – тип расширения. ET=1 показывает команды математического сопроцессора.

TS – задача переключена. Устанавливается в 1 при каждом переключении задач.

EM – эмуляция – работает в паре с TS. При переключении задач TS=1, EM=0. Если же TS=1 и EM = 1, то численная операция вызывают недоступность сопроцессора.

MP – присутствие сопроцессора. Начиная с i486DX сопроцессор встроен, поэтому MP равен 1 всегда.

PE! – protect enable – разрешение защиты. PE равный единицы устанавливает защищённый режим на уровне сегментов.

Остальные флаги

PG! – страничное преобразование. =1 разрешает деление сегментов на страницы.

CD – Cash disable – запрещение кэш L1,но это практически не используется, по этому CD = 0 всегда.

NW – несквозная запись в кэш L2. NW = 0 разрешает сквозную запись, 1 – запрещает, что может привести к переполнению кэш L2 и пустой L1, что не выгодно,по этому NW = 0 всегда.

AM – маска выравнивания. AM=1 разрешает контроль выравнивания по двоичной маске.

WP! – Write Protect. Защита записи. WP = 1 защищает от записи страницу уровня пользователя от обращения супервизора. WP функционирует только при разрешённом страничном преобразовании, то есть CR0[31] = 1 – PG.

б) CR2 – регистр линейного адреса страничного нарушения. Программа обработчик считывает этот регистр для выяснение причин страничного нарушения.Это особый случай находится в ROM BIOS под №14.

Все стандартные виды ошибок, называемые особыми случаями, пронумерованы от 0 до 255 и занесены ROM BIOS. Программы-обработчики этих особых случаев тоже находятся в ROM BIOS. CR2 работает только при PG = 1

в) CR3

Функционирует при PG = 1 и называется базовым регистром каталога страниц PDBR, который содержит 20 разрядный физический адрес каталога страниц. Каталог страниц – это таблица страниц первого уровня, которую формирует ОС при делении сегментов на страницы. Младшие 12 бит регистра CR3 практически 0, то есть каталог страниц выровнен на границу страниц в 4К. В этом поле задействованы 2 бита:

PCD – Page Cash Disable– запрещение кэширования страниц в КЭШ L1.

PWT – Page write – несквозная запись в КЭШ L2.

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]