Дескриптор сегмента его состав и назначение

Каждый сегмент в защищенном режиме должен иметь соответствующую ему структуру данных наз. дескриптором. Дескриптор (describe - описать) содержит основные характеристики соответствующего ему сегмента памяти. Каждый дескриптор состоит из 8байт (т.е. 64 разряда).

Формат дескриптора:

63         47   32
БА G D X U Предел AR БА
31         15   0

БА

предел

 

Предел – 20бит отводится для хранения max размера сегмента.

БА (базовый адрес) – 32 бита (2,3,4,7 байты) хранят базовый адрес соответствующего сегмента – линейный БА.

G - бит градуальности, определяет единицу счета этого предела (при 0 – байты; при 1- страницы (4Кб))

D – введен для совместимости режима работы 80286 процессора. (при 0 - = 32 бита; при 1 - = 16 бит)

X – резервный бит

U – user пользовательский бит

AR – байт прав доступа, определяет права сегмента и его назначение.

 

 

Опишите состав поля байта прав доступа (AR) дескриптора сигмента

AR – байт прав доступа, определяет права сегмента и его назначение.

Формат AR:

P DPL S Тип А

А – бит доступа. Используется для операционной с-мы для подсчета кол-ва обращений к сегменту, при этом надо учитывать что при обнулении этого бита должна заполнится ОС.

Устанавливается в 1 – при обращении к данному сегменту (процессор этот бит устанавливает автоматически).

Тип – определяет назначении и характер данных хранящихся в данном сегменте.

состоит из 3-х бит:

1-й бит определяет при 0 – сегмент данных, при 1- сегмент кода

I – этот бит наз бит расширения вниз (при 0 – сегмент данных, при 1 - стека)

II – этот бит определяет режим доступа к данным (о – доступ чтения и запись данных в этот сегмент; 1 – только чтение)

III - это бит подчиненности (0 – обычный кодовый сегмент; 1 – подчиненный кодовый сегмент)

IV - этот бит определяет при 0 – чтение исполнения, при 1 – только исполнение.

 

S – бит системы. Если

=0 – то дескриптор описывает системный объект который может явл сегментом памяти, а может и не явл-ся;

=1 – то сегмент пользовательский.

DPL – уровень привилегий соответствующего сегмента. Определяет 1-н из 4-х уровней привилегий, используется в механизме защиты.

Р – бит присутствия (present). Определяет находится ли этот сегмент в физической ОП, либо отсутствует. Если его нет, то он находится на жестком диске. Если осущ-ся обращение к не присутствующему в памяти сегменту(Р=0) то процессор генерирует особый случай не присутствия, и обработчик находит отсутствующий в памяти сегмент и загружает его в ОП, устанавливая бит Р в 1. при этом может потребоваться выгрузка из ОП ненужного на данный момент субъекта для освобождения места.

 


Понравилась статья? Добавь ее в закладку (CTRL+D) и не забудь поделиться с друзьями:  



double arrow
Сейчас читают про: