'

Процессоры Intel в защищенном режиме

Понравилась презентация – покажи это...





Слайд 0

Процессоры Intel в защищенном режиме


Слайд 1

Недостатки реального режима Невозможно адресовать пространство памяти свыше 1-го Мб Невозможно работать с массивами, длиной более 64 Кб, т.к. используются 16 разрядные смещения Невозможно запустить более одной программы (однозадачный режим) Невозможно реализовать защиту адресного пространства от постороннего вмешательства


Слайд 2

Возможности защищенного режима Возможность адресации участков памяти размером 4 Гб Использование массивов размером 4Гб Использование дополнительных регистров Использование новых способов организации памяти Реализация многозадачности Реализация защиты адресного пространства


Слайд 3

Регистры процессора в P-режиме


Слайд 4

Регистры процессора Intel в Р-режиме


Слайд 5

Регистры управления памятью GDTR (Global Descriptor Table Register) Длина 6 байт 32 бита – линейный адрес таблицы глобальных дескрипторов (GDT) 16 бит – размер GDT Используется для определения дескриптора сегмента в GDT совместно с сегментными регистрами


Слайд 6

Регистры управления памятью IDTR (Interruption Descriptor Table Register) Длина 6 байт 32 бита – линейный адрес таблицы глобальных дескрипторов прерываний (IDT) 16 бит – размер IDT Когда происходит прерывание, процессор передает управление на обработчик, описываемый дескриптором из IDT, с указанным номером


Слайд 7

Регистры управления памятью LDTR (Local Descriptor Table Register) Длина 6 байт 32 бита – линейный адрес таблицы локальных дескрипторов (LDT) 16 бит – размер LDT Используется для определения дескриптора сегмента в LDT совместно с сегментными регистрами


Слайд 8

Регистры управления памятью TR (Task Register) Длина 10 байт 16-битный селектор сегмента состояния задачи (TSS) из GDT 8 байт – дескриптор сегмента состояния задачи (TSS) из GDT TSS хранит всю информацию о задаче, если ее выполнение прервано. При выполнении задачи информация о TSS загружается в регистр TR.


Слайд 9

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


Слайд 10

Организация памяти в P-режиме


Слайд 11

Способы организации памяти Сегментный Страничный


Слайд 12

Сегментная организация памяти R-режим Память разбивается на смежные участи памяти – сегменты Адреса начал сегментов хранятся в сегментных регистрах Для получения линейного адреса к адресу начала сегмента добавляется 16-ти битное смещение Р-режим Память разбивается на смежные участки памяти – сегменты Адреса начал сегментов и другая информация хранятся в специальных таблицах дескрипторов сегментов (GDT и LDT) В сегментных регистрах хранятся селекторы дескрипторов сегментов Получение линейного адреса по более сложной схеме


Слайд 13

Селектор дескриптора сегмента Хранится в сегментном регистре Используется для получения дескриптора сегмента в одной из таблиц дескрипторов сегментов – GDT или LDT


Слайд 14

Селектор дескриптора сегмента 0-1 – уровень привилегии запроса 2 – индикатор таблицы дескриптора 0 – GDT 1 – LDT 3-15 – номер дескриптора в таблице дескрипторов сегментов 0 1 2 3 15


Слайд 15

Дескриптор сегмента Содержит информацию об адресе начала сегмента (используется при формировании линейного адреса при сегментом способе организации памяти в P-режиме) Содержит дополнительную информацию о сегменте (разрядность, размер, уровень защиты…) Размер дескриптора 8 байт


Слайд 16

Структура дескриптора слово 3 (старшее): биты 15 – 8: биты 31 – 24 базы бит 7: бит гранулярности (0 — лимит в байтах, 1 — лимит в 4-килобайтных единицах) бит 6: бит разрядности (0/1 — 16-битный/32-битный сегмент) бит 5: 0 бит 4: зарезервировано для операционной системы биты 3 – 0: биты 19 – 16 лимита слово 2: бит 15: бит присутствия сегмента биты 14 – 13: уровень привилегий дескриптора (DPL) бит 12: тип дескриптора (0 — системный, 1 — обычный) биты 11 – 8: тип сегмента биты 7 – 0: биты 23 – 16 базы слово 1: биты 15 – 0 базы слово 0 (младшее): биты 15 – 0 лимита


Слайд 17

Формирование линейного адреса при сегментной организации памяти GDTR Сегментный регистр GDT + + Смещение ЛА


Слайд 18

Особенности сегментной организации памяти при многозадачности Каждая задача может содержать собственную таблицу локальных дескрипторов сегментов (LDT) В состав TSS входит значение LDTR для данной задачи Определение линейного адреса строится на выборе дескриптора из LDT задачи


Слайд 19

Особенности сегментной организации памяти при многозадачности


Слайд 20

Страничная организация памяти память разбивается на смежные участки фиксированного размера (4Kб, для Pentium Pro и выше – возможно по 4 Мб) процессор физически обращается не по линейному адресу, а по тому физическому адресу, с которого начинается данная страница описание каждой страницы из линейного адресного пространства, включающее в себя ее физический адрес и дополнительные атрибуты, хранится в одной из специальных системных таблиц страничная адресация абсолютно невидима для программы


Слайд 21

Каталог и таблицы страниц Каталог страниц имеет размер 4096 байт (ровно одна страница) и содержит 1024 4-байтных указателя на таблицы страниц Каждая таблица страниц имеет размер 4096 байт и содержит указатели до 1024 4-килобайтных страниц


Слайд 22

Структура адреса при страничной организации памяти 22-31 – номер таблицы страниц в каталоге 12-21 – номер страницы в таблице страниц 0-11 – смещение от физического адреса начала страницы в памяти 0 11 12 21 22 31


Слайд 23

Элементы каталога и таблицы страниц (4 байта) биты 31 – 12: биты 31 – 12 физического адреса (таблицы страниц или самой страницы) биты 11 – 9: доступны для использования операционной системой бит 8: G — «глобальная страница» — страница не удаляется из буфера TLB при переключении задач или перезагрузке регистра CR3 (только на Pentium Pro, если установлен бит PGE регистра CR4) бит 7: PS — размер страницы. 1 — для страницы размером 2 или 4 мегабайта, иначе — 0 бит 6: D — «грязная страница» — устанавливается в 1 при записи в страницу; всегда равен нулю для элементов каталога страниц бит 5: А — бит доступа (устанавливается в 1 при любом обращении к таблице страниц или отдельной странице) бит 4: PCD — бит запрещения кэширования бит 3: PWT — бит разрешения сквозной записи бит 2: U — страница/таблица доступна для программ с CPL = 3 бит 1: W — страница/таблица доступна для записи бит 0: Р — страница/таблица присутствует. Если этот бит — 0, остальные биты элемента система может использовать по своему усмотрению, например, чтобы хранить информацию о том, где физически находится отсутствующая страница


Слайд 24

Формирование линейного адреса при страничной организации памяти CR3 Каталог таблиц страниц Таблица страниц Смещение K N


×

HTML:





Ссылка: