Особенности архитектуры универсальных микропроцессоров. Механов В.Б. - 111 стр.

UptoLike

Составители: 

111
4.3.3. Использование привилегий
в защищенном режиме
Уровни привилегий обеспечивают защиту задач, изоли-
руемых друг от друга локальными таблицами дескрипторов.
Программы операционной системы, обработчики прерываний и
другое системное обеспечение могут включаться в виртуальное
адресное пространство каждой задачи и защищаться системой
привилегий. Каждая часть системы работает на своем уровне
привилегий.
Задачи, дескрипторы и селекторы имеют свои атрибуты
привилегий.
Привилегии задач (Task Privilege) действуют на выполне-
ние инструкций и использование дескрипторов. Текущий уро-
вень привилегии задачи CPL (Current Privilege Level) определя-
ется двумя младшими битами регистра CS. CPL задачи может
изменяться только при передаче управления к новому сегменту
через дескриптор вентиля. Задача начинает выполняться с уров-
ня CPL, указанного селектором кодового сегмента внутри TSS,
когда задача инициируется посредством операции переключе-
ния задач. Задача, выполняемая на нулевом уровне привилегий,
имеет доступ ко всем сегментам, описанным в GDT, и является
самой привилегированной. Задача, выполняемая на уровне 3,
имеет наиболее ограниченные права доступа. Текущий уровень
привилегии может изменяться только при передаче управления
через вентили.
Привилегии дескриптора (Descriptor Privilege) задаются
полем DPL байта управления доступом. DPL определяет наи-
меньший уровень привилегий, с которым возможен доступ к
данному дескриптору. Самый защищенный дескриптор имеет
DPL = 0, к нему имеют доступ только задачи с CPL = 0. Самый
беззащитный дескриптор имеет DPL = 3, его могут использовать
задачи с CPL = 0, 1, 2, 3. Это правило применимо ко всем деск-
рипторам, за исключением дескриптора LDT.
Привилегии селектора (Selector Privilege) задаются полем
RPL (Requested Privilege Level) двумя младшими битами се-
лектора. С помощью RPL можно урезать эффективный уро-
          4.3.3. Использование привилегий
               в защищенном режиме
     Уровни привилегий обеспечивают защиту задач, изоли-
руемых друг от друга локальными таблицами дескрипторов.
Программы операционной системы, обработчики прерываний и
другое системное обеспечение могут включаться в виртуальное
адресное пространство каждой задачи и защищаться системой
привилегий. Каждая часть системы работает на своем уровне
привилегий.
     Задачи, дескрипторы и селекторы имеют свои атрибуты
привилегий.
     Привилегии задач (Task Privilege) действуют на выполне-
ние инструкций и использование дескрипторов. Текущий уро-
вень привилегии задачи CPL (Current Privilege Level) определя-
ется двумя младшими битами регистра CS. CPL задачи может
изменяться только при передаче управления к новому сегменту
через дескриптор вентиля. Задача начинает выполняться с уров-
ня CPL, указанного селектором кодового сегмента внутри TSS,
когда задача инициируется посредством операции переключе-
ния задач. Задача, выполняемая на нулевом уровне привилегий,
имеет доступ ко всем сегментам, описанным в GDT, и является
самой привилегированной. Задача, выполняемая на уровне 3,
имеет наиболее ограниченные права доступа. Текущий уровень
привилегии может изменяться только при передаче управления
через вентили.
     Привилегии дескриптора (Descriptor Privilege) задаются
полем DPL байта управления доступом. DPL определяет наи-
меньший уровень привилегий, с которым возможен доступ к
данному дескриптору. Самый защищенный дескриптор имеет
DPL = 0, к нему имеют доступ только задачи с CPL = 0. Самый
беззащитный дескриптор имеет DPL = 3, его могут использовать
задачи с CPL = 0, 1, 2, 3. Это правило применимо ко всем деск-
рипторам, за исключением дескриптора LDT.
     Привилегии селектора (Selector Privilege) задаются полем
RPL (Requested Privilege Level) – двумя младшими битами се-
лектора. С помощью RPL можно урезать эффективный уро-
                             111