ВУЗ:
Составители:
110
Рассмотрим эти понятия и возможности их использования
в защищенном режиме более подробно.
4.3.2. Применение сегментации
в защищенном режиме
Сегмент является средством объединения областей памяти
с общими атрибутами и их (сегментов) использование в защи-
щенном режиме осуществляется только через таблицы дескрип-
торов.
Существуют три типа таблиц дескрипторов – локальная
таблица дескрипторов LDT (Local Descriptor Table), глобальная
таблица дескрипторов GDT (Global Descriptor Table) и таблица
дескрипторов прерываний IDT (Interrupt Descriptor Table). Раз-
меры таблиц могут находиться в пределах 8 байт – 64 Кб, что
соответствует числу элементов в таблице от 1 до 8К.
С каждой из этих таблиц связан соответствующий регистр
процессора.
Глобальная таблица (GDT) содержит дескрипторы, дос-
тупные всем задачам. Она может содержать дескрипторы любых
типов, кроме дескрипторов прерываний и ловушек.
Локальная таблица (LDT) может быть собственной для
каждой задачи, она может содержать только дескрипторы сег-
ментов, вентилей задачи и вызовов. Сегмент недоступен задаче,
если его дескриптора нет в текущий момент ни в GDT, ни в
LDT.
Выбор таблицы (локальная или глобальная) определяется
по значению бита TI селектора, а положение (номер) дескрипто-
ра задается 13-битным полем INDEX селектора. При ссылке на
дескриптор, выходящий за лимит таблицы, возникает исключе-
ние.
Таблица дескрипторов прерываний (IDT) может содер-
жать описания до 256 прерываний. Таблица может содержать
только вентили задач, прерываний и ловушек. Ссылка на эле-
менты IDT происходит по командам INT, аппаратным прерыва-
ниям и исключениям процессора. При возникновении прерыва-
ния или исключения, дескриптор которого выходит за лимит
таблицы, вырабатывается соответствующее исключение.
Рассмотрим эти понятия и возможности их использования
в защищенном режиме более подробно.
4.3.2. Применение сегментации
в защищенном режиме
Сегмент является средством объединения областей памяти
с общими атрибутами и их (сегментов) использование в защи-
щенном режиме осуществляется только через таблицы дескрип-
торов.
Существуют три типа таблиц дескрипторов – локальная
таблица дескрипторов LDT (Local Descriptor Table), глобальная
таблица дескрипторов GDT (Global Descriptor Table) и таблица
дескрипторов прерываний IDT (Interrupt Descriptor Table). Раз-
меры таблиц могут находиться в пределах 8 байт – 64 Кб, что
соответствует числу элементов в таблице от 1 до 8К.
С каждой из этих таблиц связан соответствующий регистр
процессора.
Глобальная таблица (GDT) содержит дескрипторы, дос-
тупные всем задачам. Она может содержать дескрипторы любых
типов, кроме дескрипторов прерываний и ловушек.
Локальная таблица (LDT) может быть собственной для
каждой задачи, она может содержать только дескрипторы сег-
ментов, вентилей задачи и вызовов. Сегмент недоступен задаче,
если его дескриптора нет в текущий момент ни в GDT, ни в
LDT.
Выбор таблицы (локальная или глобальная) определяется
по значению бита TI селектора, а положение (номер) дескрипто-
ра задается 13-битным полем INDEX селектора. При ссылке на
дескриптор, выходящий за лимит таблицы, возникает исключе-
ние.
Таблица дескрипторов прерываний (IDT) может содер-
жать описания до 256 прерываний. Таблица может содержать
только вентили задач, прерываний и ловушек. Ссылка на эле-
менты IDT происходит по командам INT, аппаратным прерыва-
ниям и исключениям процессора. При возникновении прерыва-
ния или исключения, дескриптор которого выходит за лимит
таблицы, вырабатывается соответствующее исключение.
110
Страницы
- « первая
- ‹ предыдущая
- …
- 108
- 109
- 110
- 111
- 112
- …
- следующая ›
- последняя »
