
- •Архитектура системного уровня процессоров ia-32 Задачи архитектуры системного уровня (system-level architecture)
- •Компоненты архитектуры системного уровня
- •Защищенный режим Общие сведениия Назначение защищенного режима микропроцессоров ia-32
- •Режим виртуального процессора 8086
- •Концепция защиты
- •Дескрипторы и таблицы дескрипторов. Системные сегменты
- •Регистры дескрипторов таблиц и системных сегментов
- •Механизм использования глобальной и локальной таблиц дескрипторов
- •Привилегии
- •Кольца защиты Привилегии задач (Task Privilege)
- •Привилегии дескриптора (Descriptor Privilege)
- •Привилегии селектора (Selector Privilege)
- •Привилегии ввода-вывода
- •Дескрипторы системных сегментов
- •Поля байта управления доступом к системным сегментам
- •Межсегментная передача управления
- •Типы и назначение шлюзов
- •Механизм использования шлюза вызова
- •Дескриптор шлюза вызова
- •Поля байта управления доступом дескриптора шлюза
- •Проверка условий, порождающих исключения
- •Инструкции тестирования указателей
- •Виртуальная память
- •Составляющие элементы механизма страничной переадресации
- •Адресация в защищенном режиме
- •Варианты организации страниц виртуальной памяти
- •Управление режимом страничной переадресации
- •Переключение стека
- •Операция переключения задач процессора (Task Switch Operation)
- •Переключение между реальным и защищенным режимами
- •Переключение в защищенный режим из реального:
- •Переключение процессора в реальный режим из защищенного
- •Регистры управления cr1, cr2, cr3
- •Регистр управления cr4
- •Управление прерываниями от fpu
- •Управление блоком fpu
- •Средства отладки по
- •Регистры отладки
- •Средства, предоставляющие дополнительные возможности отладки.
- •Регистр DebugCtlMsr:
- •Режим управления системой (smm)
- •Включение режима
- •Карта контекста процессора в smram
- •Идентификатор smm (Revision Identifier)
- •Базовый адрес smram
- •Некорректность восстановления контекста
- •Инициализация регистров процессора при входе в smm
- •Начальный сброс и тестирование Аппаратный сброс (hardware reset)
- •Установки при сбросе
- •Внутренний тест процессора
- •Начало нормального функционирования процессора
- •Инициализация по сигналу init («мягкий» сброс)
- •Тестирование аппаратных средств процессора
Проверка условий, порождающих исключения
1. Проверка при ____________ _______________ _____________
превышение лимита таблицы дескрипторов à #GP;
несуществующий дескриптор сегмента à #NP или #SS;
нарушение привилегий à #GP;
загрузка неверного дескриптора или типа сегмента à #GP:
для SS: сегмента кода или сегмента данных только для чтения;
для DS, ES или SS: управляющих дескрипторов или только исполняемых сегментов;
для CS: сегмента данных.
2. Проверка _________ _____________
запись: в сегмент ______ или сегмент _________ только для чтения à #GP;
чтение: из только исполняемого сегмента ______ à #GP;
превышение лимита сегмента à #SS или #GP.
3. Проверка привилегий инструкций
______:
LIDT, LLDT, LGDT, LTR, LMSW, CTS, HLT, INVD, INVLPG, WBINVD à #GP;
операций с регистрами DRn, TRn, CRn à #GP;
___________:
STI, CLI, инструкции с префиксом LOCK (для 80286) à #GP;
IN, INS, OUT, OUTS к портам, не разрешенным битовой картой ввода-вывода à #GP.
4. IRET и POPF с недостаточным уровнем привилегий
IF и IOPL в регистре флагов ___ _______________, исключения не порождаются;
IF не меняется при ____>______;
IOPL не меняется, если ____>_.
5. Передача управления по инструкциям JMP, CALL, RET, INT и IRET
проверка ссылок ___ _________ (в «ближних» формах JMP, CALL и RET выполняется только это);
проверка _________ _______________ при межсегментных передачах через шлюзы.
Инструкции тестирования указателей
Назначение: проверка возможности использования _____________ или ____________ без риска порождения исключения.
ARPL – выравнивание RPL: RPL селектора приравнивается максимальному значению из текущего RPL селектора и поля RPL в указанном регистре. Если при этом RPL изменился, устанавливается ZF=1.
VERR, VERW – проверка возможности чтения или записи, соответственно; если сегмент, на который указывает селектор, допускает операцию, устанавливается ZF=1.
LSL, LAR – загрузка в регистр лимита сегмента или байта доступа дескриптора, соответственно; выполняется, если позволяют привилегии; при успешном завершении устанавливается ZF=1.
Виртуальная память
Страничная организация памяти (Paging).
Средство организации виртуальной памяти с _____________ __________ ___ __________ (Demand-Paged Virtual Memory).
Сегментация: программы и данные организуются в модули различного размера.
Страничная организация: операции с памятью, как с набором модулей одинакового размера.
В момент обращения страница может:
присутствовать в физической оперативной памяти;
быть выгруженной на внешнюю (дисковую) память.
При обращении к выгруженной странице памяти:
процессор вырабатывает _______________ ____ (отказ страницы);
обработчик исключения (часть ОС) получает необходимую информацию для ____________ («____________») отсутствующей страницы с диска.
Составляющие элементы механизма страничной переадресации
каталог страниц (Page Directory);
таблицы страниц (Page Table);
собственно страницы (Page Frame).
Регистр CR2 хранит ____________ _______ _________ (Page Fault Linear Address) – адрес памяти, но которому был обнаружен последний отказ страницы.
Регистр CR3 хранит _______________ _______ ____________ страниц (Page Directory Base Address); младшие 12 бит – нулевые (каталог выравнивается по границе страницы).