ДЕСКРИПТОРЫ
ТАБЛИЦ И СТРАНИЧНЫЕ ДЕСКРИПТОРЫ
Таблицы всех уровней,
кроме нижнего (уровень 4), в качестве элементов содержат дескрипторы
таблиц следующего уровня (базовые адреса этих таблиц); таблица нижнего
уровня содержит страничные дескрипторы. Сущестует два формата дескриптора
таблицы: длинный (64 бита) и короткий (32 бита) (рис.8.11, 8.12).
Дескрипторы таблиц определяют адрес таблицы следующего
уровня, формат дескриптора следующего уровня (длинный или короткий),
а также права доступа (в коротком формате возможно только разрешение
или запрещение записи, в длинном - восьмиуровневая защита раздельно
по чтению и записи).
- U (USED); =1 - дескриптор уже использовался, =0 - дескриптор
не использовался;
- WP (WRITE PROTECT); =1 - запись запрещена;
- DT (DESCRIPTOR TYPE); =2 -дескриптор следующего уровня имеет
короткий формат;
- DT (DESCRIPTOR TYPE); =3 - длинный формат.

Значение полей:
- L/U (LOWER/UPPER) - внутренний (L/U=0) или внешний (L/U=1) предел
таблицы следующего уровня;
- Limit - размер таблицы следующего уровня;
- RAL (READ ACCESS LEVEL) - уровень доступа по чтению;
- WAL (WRITE ACCESS LEVEL) - уровень доступа по записи;
- S (SUPERVISOR); =1 - доступ к таблице следующего уровня возможен
только в режиме супервизора;
- SG (SHARED GLOBALLY); =1 - адресуемое пространство используется
всеми задачами.
Дескриптор страницы также имеет короткий и длинный
формат (рис. 8.13, 8.14). Назначение большинства полей аналогично
соответствующим полям дескриптора таблицы (новые поля описаны в примечаниях
к рисункам). Поле DT в дескрипторах таблиц имеет значение индикатора
допустимости трансляции: DT=1 - трансляция допустима, DT=0 - недопустима.

Значение полей:
- G (GATE); G=1 - страница может содержать дескриптор модуля S;
- CI (CASHE INHIBIT); CI =1 - адрес страницы не записывался в
кэш;
- L (LOCK); L=1 - блокировка кэша по адресу страницы;
- М (MODIFIED); М=1 - страница изменялась.

Длинный формат дескриптора страницы имеет вариант,
в котором не используется старшее слово, определяющее размер страницы.
|