ммы), сегменты данных и стеков.
По возможностям использования сегменты характеризуются так:
CS – исполняемые и читаемые безусловно, записываемые – по биту разрешения,
SS – неисполняемые, читаемые и записываемые безусловно,
ES, DS, FS, GS – неисполняемые и читаемые безусловно, записываемые – по биту разрешения,
Дескрипторы шлюзов программ.
Дескрипторы шлюзов программ. Шлюзы (Gate) – это точки входа в программы (программный сегмент). В МП IA-32 вызов процедур операционной системы (передача управления с повышением уровня привилегий) производится только с использованием шлюзов и только по командам передачи управления с возможностью возврата (запрещено использование команды Jmp).
Программисту известен только символьный адрес программы (адрес дескриптора сегмента). Этот прием предотвращает указание некорректного входа в программу, например, указание не на первый байт команды, что может привести к неуправляемой работе процессора.
Но все это справедливо только при использовании процедур передачи управления, но не процедур переключения задач.
Структура дескриптора шлюза программных сегментов представлена на рис. 3. 9.
Дескриптор шлюза программных сегментов содержит три поля:
селектора сегмента,
смещения в сегменте (offset),
атрибутов.
6348471615
0
СелекторOffset (Смещение в сегменте)Атрибуты
Индекс(13 бит)G/LRPL (2 бита)
Счетчик двойных словPDPL0Tipe(4бита)
Рис. 3. 9. Структура дескриптора шлюза программных сегментов.
Селектор сегмента.
Все дескрипторы, кроме дескрипторов прерываний, (сегментов, задач, шлюзов сегментов или задач) хранятся в оперативной памяти в специальных таблицах GDT (глобальная таблица дескрипторов) и LDT (ло
Страницы: << < 16 | 17 | 18 | 19 | 20 > >>