Сделать свой сайт бесплатно

Реклама

Создай свой сайт в 3 клика и начни зарабатывать уже сегодня.

@ADVMAKER@

24.Структура защищенного режима

21.01.2012

24.Структура защищенного режима

При работе в защищённом режиме процессор контролирует практически все действия программ и позволяет разделить операционную систему, драйвера и прикладные программы разными уровнями привилегий. Благодаря этому ОС может ограничить области памяти, выделяемой программам, запретить или разрешить ввод/вывод по любым адресам, управлять прерываниями и многое другое. При попытке программы выйти за допустимый диапазон адресов памяти, выделенной ей, либо при обращении к "запрещённым" для неё портам процессор будет генерировать исключения - специальный тип прерываний. Грамотно оперируя исключениями, операционная система может контролировать действия программ, организовать систему виртуальной памяти, мультизадачность и другие программные технологии. 

Кольца защиты:

1. обычным программам запрещается выполнять некоторые команды;

2. обычным программам должны быть недоступны определенные сегменты, доступные операционной системе;

3. должно быть невозможным получение привилегии операционной системы, кроме как входом в нее в разрешенной точке входа.

Уровни привилегий определяются полями DPL дескриптора (2 бита).

уровень 0: ядро операционной системы, уровень 1: драйвера ОС, уровень 2: интерфейс ОС,

уровень 3: прикладные программы.

1. Данные из сегмента могут быть выбраны программой, имеющей такой же или

более высокий уровень привилегий.

2. Сегмент программы или процедуры может быть вызван программой, имеющей

такой же или более низкий уровень привилегий.

Адресация памяти также производится через сегмент и смещение в сегменте, для чего используется пара регистров, но для описания сегмента используется больше информации, а именно: 32-разрядный адрес., 20-разрядный предел сегмента (предел = размер - 1)., номер уровня привилегий сегмента., тип сегмента (код, стек, данные или системный объект), и дополнительные свойства.

Комментарии (0)Просмотров (299)


Зарегистрированный
Анонимно