Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Микропроцессоры Лекции.docx
Скачиваний:
0
Добавлен:
01.04.2025
Размер:
65.84 Кб
Скачать

Регистры управления

В группу регистров управления входит 5 регистров: От cr0 до cr4 – эти регистры предназначены для общего управления системой. Регистры управления доступны только программам с уровнем привилегий «0».

Хотя микропроцессор имеет 5 регистров управления, доступны только 4. Исключается регистр cr1, так как его функции пока не определены, и он зарезервирован для будущего использования.

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

Назначения системных флагов:

  • pe – разрешение защищённого режима. Состояние флага показывает в каком из 2 режимов реально (pe = 0) или защищённо (pe = 1) работает микропроцессор в данный момент времени.

  • Mp – флаг наличия сопроцессора. Всегда равен «1»

  • Ts - Переключение задач. Процессор автоматически устанавливает этот бит при переключении на выполнение другой задачи.

  • Am – маска выравнивания. Этот бит разрешает при (am = 1) или запрещает (am = 0) контроль выравнивания

  • Cd – запрещение кэш-памяти. С помощью этого бита можно запретить или разрешить использование кэш-памяти 1-го уровня (L1).

  • Pg – разрешение (1) или запрещение (0) страничного преобразования.

Регистр cr2 используется при страничной организации оперативной памяти. Для регистрации ситуации, когда текущая память обратилась по адресу к странице памяти, отсутствующей в данный момент. В такой момент в микропроцессоре возникает исключительная ситуация и линейный 32-битный адрес команды вызвавший это исключение, записывается в регистр cr2. Имея эту информацию, обработчик исключений определяет нужную страницу, осуществляет её подкачку в память и возобновляет нормальную работу.

Регистр cr3 так же используется при страничной организации памяти. Это регистр каталога страниц первого уровня. Он содержит 20-битный физический базовый адрес каталога страниц текущей задачи.

Регистр cr4 содержит признаки, в основном разрешительного характера, который характеризуют те или иные архитектурные элементы.

Регистры системных адресов

Эти регистры называются регистрами управления памятью. Они предназначены для защиты программ и данных в мульти задачном режиме работы микропроцессора. При работе в защищённом режиме. Адресной пространство делится на глобальное и локальное.

В защищённом режиме запрос к памяти как со стороны операционные системы, как и со стороны прикладные программ должен быть санкционирован.

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

В защищённом режиме меняется роль сегментного регистра. Теперь он содержит не адрес, а индекс в таблице дескриптора сегментов, но он по прежнему указывает на сегмент данных, команд, стека.

Размер сегментов в защищённом режиме может достигать размера всего адресного пространства.

Выведение информации о базовом адресе сегмента и его размере на уровень микропроцессора позволяет аппаратное контролировать работу программ с памятью и предотвращать обращение по несуществующим адресам.

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

Существуют 3 дескрипторные страницы:

  1. GDT – глобальная дескрипторная страница. Это основная общесистемная таблица к которой допускается обращение со стороны программ, обладающими достаточными привилегиями. Расположение таблицы в памяти произвольно. Содержит следующие типы дескрипторов:

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

    2. Дескриптор сегмента данных программ

    3. Дескриптор стековых сегментов программ

    4. Дескриптор TSS(сегменты состояния задач)

    5. Дескриптор таблицы LDT(локальная дескрипторная таблица)

    6. Шлюзы вызова и шлюзы задач

  2. LDT – для любой задачи в системе может быть создана своя дескрипторная таблица, тем самым адресное пространство задачи локализуется в пределах, установленных набором дескрипторов страницы. Содержит следующие типы дескрипторов:

    1. Дескриптор сегментов кода программ

    2. Дескриптор сегмента данных программ

    3. Дескриптор стековых сегментов

    4. Шлюзы вызова и шлюзы задач

  3. IDT – дескрипторная таблица прерываний. Содержит дескрипторы специального типа, который определяют местоположение программ – обработчиков всех видов прерываний. Элементы данной таблицы называются шлюзами.

Шлюзы бывают 3 типов:

  1. Шлюзы задач

  2. Шлюзы прерываний

  3. Шлюзы ловушек