logo
Программа ГЭ_спец_2012 ответы light

Защищенный режим процессора Intel 80386: страничная адресация, переключение контекста, использование возможностей защищенного режима различными ос.

С помощью введенных 4-х уровней привилегий (0,1,2,3) в 386+ введен принцип мандатного ограничения доступа. При исполнении процесса ему присваивается текущий уровень привилегии (изначально предполагается, что ядро ОС – 0 уровень, пользовательское приложение – 3 уровень, 1 и 2 уровни на усмотрения ОС). При вызове процедур или при переходе между сегментами разрешается использовать код, имеющий более высокий уровень привилегии, при этом уровень привилегии текущего процесса не изменяется. Если необходимо изменение (повышение обычно уровня привилегии), то используются шлюзы переходов. При вызове подобного прерывания меняется уровень привилегии процесса, процесс переходит на другой сегмент, стек.

Контекст задачи – структура данных, описывающая текущее содержимое регистров, селекторов сегментов, флагов, текущих значений привилегий и др. информация, используемая для аппаратного переключения между процессами.

В процессорах 80386 преодолено жесткое ограничение на длину непрерывно сегмента памяти и составляет 64Кбайта. В защищенном режиме 32 разрядных процессоров оно отодвинулось до 4Гбайт. Процессоры могут работать в 2 режимах: Real address mode – режим реальной адресации, полностью совместим с 8086(этом режиме возможна адресация до 1мб); Protected Virtual Address mode – защищенный режим (в этом режиме возможна адресация до 4гб физической памяти).

Страница в 80386 имеет длину 4к байт. Этот размер находится в согласии с промышленной тенденцией к увеличению длины страниц и ведет к увеличению производительности по двум направлениям. Во-первых, он обеспечивает хорошее отношение показаний страниц в кэш при данном объеме кэш-памяти. Во-вторых, 4кбайтов являются эффективным размером блока для дисковых передач.

80386 включает страничный механизм, устанавливая бит PG в управляющем регистре 0 при помощи привилегированной команды. Когда страничный механизм включен, процессор транслирует линейный адрес в физический адрес, используя страничные таблицы. Страничные таблицы являются частью таблиц дескрипторов сегментов. Так же как таблицы дескрипторов сегментов задачи определяют ее логическое адресное пространство, страничные таблицы задачи определяют ее линейное адресное пространство. Аналогично супер-мини-эвм и большим эвм страничные таблицы 80386 организованы по принципу двухуровневой иерархии. Каждая задача может иметь справочник системных таблиц. Системный регистр CR3 процессора 80386 (база справочника системных таблиц) указывает на справочник страничных таблиц работающей задачи. Процессор обновляет регистр CR3 при каждом переключении задачи, получая новый адрес задачи из TSS(сегмент состояния задачи) новой задачи. Справочник страничных таблиц имеет длину, равную одной странице и содержит элементы страничной таблицы описывают 1024 страницы. Таким образом, каждая страничная таблица описывает 4м байта, а оглавление может описать до 4г байт - максимальное адресное пространство.

Windows графическая 32 разрядная многозадачная ОС. Windows 1) основана на защищенном 386+; 2) динамически загружаемые библиотеки DLL. Блок программного кода, который по требованию может быть загружен в ОЗУ, используется несколькими программами одновременно и может быть выгружен в тот момент когда надобность в нем отпадает. (exe ->dll->dll). Основные DLL это Kernel, работа с файлами, потоками, процессами, событиями, сообщениями, системными часами, управление памятью, загрузка библиотек, запуск и остановка процесса.

Advapi32 – системный log файл.

Gdi32 – графический интерфейс.

User32 - клавиатура, мышь, сообщения пользователю и высоко уровненная работа с графическим интерфейсом.

II. СПЕЦИАЛЬНЫЕ ДИСЦИПЛИНЫ