24
привилегированную команду в режиме процесса вызывает исключение
(см. ниже). В системе ESA, например, таких основных состояний два (есть
еще ряд промежуточных) [20, 45], они называются "супервизор" и
"задача", такие же названия они имеют в процессоре Power PC. В
процессорах Intel-Pentium аналогичную роль играют уровни привилегий,
они же – кольца защиты [32], причем из четырех аппаратно
обеспечиваемых уровней привилегий в современных ОС используются два
или три. Возможность для пользователя разрабатывать модули,
работающие в режиме ядра, обычно строго регламентируется ОС. Хорошо
защищенная ОС должна безоговорочно пресекать попытки процесса
перейти в состояние ядра.
В число регистров процессора входят регистры общего назначения,
которые в основном используются для манипулирования с прикладными
данными, но также и специальные регистры, такие как регистр адреса
команды, регистр флагов-признаков, регистр режима процессора и т.п.
Содержимое регистра режима процессора определяет привилегированное
или непривилегированное состояние процессора, команды, изменяющие
содержимое этого регистра, обязательно являются привилегированными. В
различных архитектурах специальные регистры могут либо представлять
собой отдельные аппаратные компоненты, либо интегрироваться в более
сложные аппаратные структуры.
Содержимое специальных аппаратных регистров процессора
(обязательно включая регистр адреса команды) составляет вектор
состояния программы/процесса. В большинстве процессорных
архитектур вектор состояния может быть загружен в соответствующие
регистры или считан из них в память одной или несколькими
командами. Так, в процессорах Intel-Pentium имеется структура данных,
называемая TSS (Task State Segment – сегмент состояния задачи),