На Рисунке 6-1 показаны поля дескриптора сегмента, используемые механизмом защиты. Отдельные биты поля Типа именуются по выполняемым ими функциям. Параметры защиты помещаются в дескриптор при его создании. В целом, прикладным программистам эти параметры знать не требуется.
Дескриптор сегмента данных 2 1 1 1 1 1 1 1 1 1 131 0 9 8 7 6 5 4 3 2 1 0 9 8 7 0----------------------------------------------------------------| | | | | | | | D | | | | | | || BASE 31:24 | | | | |LIMIT | | P |1|0|E|W|A| BASE 23:16 | +4| | | | | |19:16 | | L | | | | | | ||--------------------------------------------------------------|| База сегмента 15:00 | Граница сегмента 15:00 | +0---------------------------------------------------------------- Дескриптор сегмента кода 2 1 1 1 1 1 1 1 1 1 131 0 9 8 7 6 5 4 3 2 1 0 9 8 7 0----------------------------------------------------------------| | | | | | | | D | | | | | | || BASE 31:24 | | | | |LIMIT | | P |1|1|C|R|A| BASE 23:16 | +4| | | | | |19:16 | | L | | | | | | ||--------------------------------------------------------------|| База сегмента 15:00 | Граница сегмента 15:00 | +0---------------------------------------------------------------- A Доступ произошелC КонформныйDPL Уровень привилегированности дескриптораE Расширение внизR Доступный для чтенияLIMIT Граница сегментаW Доступный для записи Рисунок 6-1. Поля дескриптора, используемые для защиты (Часть 1 из 2) Дескриптор системного сегмента 2 1 1 1 1 1 1 1 1 1 131 0 9 8 7 6 5 4 3 2 1 0 9 8 7 0----------------------------------------------------------------| | | | | | | | D | | | || BASE 31:24 | | | | |LIMIT | | P |0| Тип | BASE 23:16 | +4| | | | | |19:16 | | L | | | ||--------------------------------------------------------------|| База сегмента 15:00 | Граница сегмента 15:00 | +0---------------------------------------------------------------- DPL Уровень привилегированности дескриптораLIMIT Граница сегмента Рисунок 6-2. Поля дескриптора, используемые для защиты (Часть 2 из 2)
Когда программа загружает в сегментный регистр селектор сегмента, процессор автоматически загружает туда базовый адрес этого сегмента и информацию о его защите. Невидимая часть каждого сегментного регистра хранит базовый адрес, границу, тип и уровень привилегированности. Благодаря тому, что эта информация резидентно находится в сегментном регистре, все последующие проверки защиты для этого регистра могут быть выполнены без дополнительных затрат времени на ее поиск.