Скачать 1.73 Mb.
|
Недостатки:
Чтобы избежать недостатка №3 был предложен сегментно-страничный способ распределения памяти. Сегментно-страничный способ распределения памяти Программа разбивается на сегменты. Адрес, по-прежнему, состоит из двух частей - сегмент + смещение. Но смещение относительно начала сегмента может состоять из двух полей: виртуальной страницы и индекса. Для доступа к памяти необходимо:
Недостаток: Задержка в доступе к памяти (в три раза больше, чем при прямой адресации). Чтобы избежать этого вводится кэширование (кэш строится по ассоциативному принципу). Плоская модель памяти Если считать, что задача состоит из одного сегмента, который, в свою очередь, разбит на страницы, то фактически мы получаем только один страничный механизм работы с виртуальной памятью. Этот подход называется плоской памятью. Достоинства:
В абсолютном большинстве современных 32-разрядных ОС (для микропроцессоров Intel) используется плоская модель памяти. Лекция №10 Защищенный режим работы микропроцессора Вопросы
Впервые защищенный режим появился в микропроцессоре i80286 фирмы Intel. Именно этот режим позволяет полностью использовать все возможности, предоставляемые микропроцессором. Все современные многозадачные операционные системы работают только в этом режиме. Поэтому для понимания всех процессов, происходящих в компьютере во время работы многозадачной операционной системы, необходимо знать основы функционирования микропроцессора в защищенном режиме. Мы подробно рассмотрим архитектуру микропроцессора в защищенном режиме и основные правила программирования этого режима. Вспомним основные характеристики реального режима. Любой современный микропроцессор, находясь в реальном режиме, очень мало отличается от старого доброго i8086. Это лишь его более быстрый аналог с увеличенным (до 32 бит) размером всех регистров, кроме сегментных. Чтобы получить доступ ко всем остальным архитектурным и функциональным новшествам микропроцессора, необходимо перейти в защищенный режим. В реальном режиме работы микропроцессора
Формирование физического адреса происходит по правилам реального режима: для определения физического адреса команды содержимое сегментного регистра CS умножается на 16 за счет добавления справа (к младшим битам) четырех нулей, после чего к полученному значению прибавляется содержимое указателя команд (регистр IP). Получается двадцатибитовое значение (20-разрядная шина адреса). Теперь рассмотрим ключевые моменты защищенного режима. В защищенном режиме изменились принцы работы микропроцессора с памятью. Память по-прежнему является сегментированной, но изменяются функции и номенклатура программно-аппаратных компонентов, участвующих в сегментации. Вспомним, что прежде всего режим должен обеспечивать многозадачность. Для обеспечения совместной работы нескольких задач необходимо защитить их от взаимного влияния, а также регулировать взаимодействие между ними в случае необходимости. Для решения этих проблем сегментам присваиваются определенные атрибуты, такие, что часть контроля за доступом к сегментам можно переложить на сам микропроцессор. Любой сегмент памяти в защищенном режиме описывается дескриптором сегмента. Дескриптор сегмента имеет размер 8 байт и содержит следующие атрибуты:
Обратим внимание, что в защищенном режиме микропроцессор поддерживает два типа защиты — по привилегиям и доступу к памяти. В отличие от реального режима в защищенном режиме программа уже не может запросто обратиться по любому физическому адресу памяти. Для этого она должна иметь определенные полномочия и удовлетворять ряду требований. Все дескрипторы собираются вместе в одну из 3 дескрипторных таблиц. В какую именно таблицу должен быть помещен дескриптор, определяется его назначением. Адрес, по которому размещаются эти дескрипторные таблицы, может быть любым; он хранится в специально предназначенном для этого адреса системном регистре. ! Формирование физического адреса происходит по правилам защищенного режима, поэтому программы, созданные для реального режима функционировать в защищенном не могут. Адреса задаются 32-битовыми значениями. Возможна страничная трансляция адресов. Системные регистры микропроцессора Эти регистры обеспечивают работу защищенного режима. Их также можно рассматривать как часть архитектуры микропроцессора, которая намеренно оставлена видимой для того, чтобы квалифицированный системный программист мог выполнить самые низкоуровневые операции. Системные регистры можно разделить на три группы:
! Большинство из системных регистров программно доступны. Регистры управления В группу регистров управления входят 4 регистра: сгО, сг1, сг2, сгЗ. Эти регистры предназначены для общего управления системой (определяют режимы работы микропроцессора). Они 32-битовые. Регистры управления доступны только программам с уровнем привилегий 0. Хотя микропроцессор имеет четыре регистра управления, доступными являются только три из них; исключается сг1, функции которого пока не определены (он зарезервирован для будущего использования). Регистр сг0 содержит системные флаги, управляющие режимами работы микропроцессора и отражающие его состояние глобально, независимо от конкретных выполняющихся задач. Регистр сг0 используется при страничной модели организации памяти. Назначение системных флагов:
Регистр сг2 используется при страничной организации оперативной памяти для регистрации ситуации, когда текущая команда обратилась по адресу, содержащемуся в странице памяти, отсутствующей в данный момент времени в памяти. В такой ситуации в микропроцессоре возникает исключительная ситуация 14, и линейный 32-битный адрес команды, вызвавшей это исключение, записывается в регистр сг2. Имея эту информацию, обработчик исключения 14 определяет нужную страницу, осуществляет ее подкачку в память и возобновляет нормальную работу программы. Регистр сгЗ также используется при страничной организации памяти. Это так называемый регистр каталога страниц первого уровня. Он содержит 20-битный физический базовый адрес каталога страниц текущей задачи. Этот каталог содержит 1024 32-битных дескриптора, каждый из которых содержит адрес таблицы страниц второго уровня. В свою очередь, каждая из таблиц страниц второго уровня содержит 1024 32-битных дескриптора, адресующих страничные кадры в памяти. Размер страничного кадра — 4 Кбайт. Регистры системных адресов (регистры управления памятью) Они предназначены для защиты программ и данных в мультизадачном режиме работы микропроцессора. При работе в защищенном режиме микропроцессора адресное пространство делится:
Этим разделением и объясняется то, что в архитектуре микропроцессора присутствуют следующие системные регистры:
1) базовый адрес дескрипторной таблицы прерываний IDT (32-битовый) 2) предел - размер (в байтах) таблицы GDT (16-бит);
Регистры отладки Эти регистры предназначены для аппаратной отладки. Средства аппаратной отладки впервые появились в микропроцессоре i486. Аппаратно микропроцессор содержит 8 регистров отладки, но реально из них используются только 6. Регистры dr0, dr1, dr2, dr3 имеют разрядность 32 бит и предназначены для задания линейных адресов четырех точек прерывания. Используемый при этом механизм следующий: любой формируемый текущей программой адрес сравнивается с адресами в регистрах dr0.. .dr3, и при совпадении генерируется исключение отладки 1. Регистр dг6 называется регистром состояния отладки. Биты этого регистра устанавливаются в соответствии с причинами, которые вызвали возникновение последнего исключения 1. Перечислим эти биты и их назначение: b0 — если этот бит=1, то последнее исключение (прерывание) возникло в результате достижения контрольной точки, определенной в регистре dr0; b1 — аналогично b0, но для контрольной точки в регистре dr1; b2 — аналогично b0, но для контрольной точки в регистре dr2; b3 — аналогично b0, но для контрольной точки в регистре dr3; bd (бит 13) служит для защиты регистров отладки; bs (бит 14) = 1, если исключение 1 было вызвано состоянием флага tf = 1 в регистре eflags; bt (бит 15) = 1, если исключение 1 было вызвано переключением на задачу с установленным битом ловушки в TSS t = 1. Все остальные биты в этом регистре заполняются нулями. Обработчик исключения 1 по содержимому dr6 должен определить причину, по которой произошло исключение, и выполнить необходимые действия. Регистр dг7 называется регистром управления отладкой. В нем для каждого из четырех регистров контрольных точек отладки имеются поля, с помощью которых можно уточнить следующие условия, при которых следует сгенерировать прерывание:
Лекция №11 Защищенный режим работы микропроцессора (продолжение) Вопросы:
Структуры данных защищенного режима Повторение ключевых моментов Мы уже отмечали, что физический адрес в защищенном режиме вычисляется по правилам, отличным от реального режима. Кроме того, в защищенном режиме любой запрос к памяти как со стороны операционной системы, так и со стороны прикладных программ должен быть санкционирован. Микропроцессор аппаратно контролирует доступ программ к любому адресу в оперативной памяти. ! В защищенном режиме всегда действует сегментный способ организации распределения памяти. Кроме того, может быть включен и страничный механизм (страничная трансляция). |
Техническое задание на разработку программного обеспечения, используемого... Государственное образовательное учреждение высшего профессионального образования Академия народного хозяйства |
Инструкция по установке программного обеспечения ас «Поликлиника» «Поликлиника» поставляется в виде исполняемых модулей и дополнительного программного обеспечения сторонних производителей на компакт-диске.... |
||
Программа дисциплины «Системное программное обеспечение» для специальности... Программа предназначена для преподавателей, ведущих данную дисциплину, учебных ассистентов и студентов специальности 230101. 65 «Вычислительные... |
Программа дисциплины «Системное программное обеспечение» для специальности... Программа предназначена для преподавателей, ведущих данную дисциплину, учебных ассистентов и студентов специальности 230101. 65 «Вычислительные... |
||
Программа дисциплины «Системное программное обеспечение» для специальности... Программа предназначена для преподавателей, ведущих данную дисциплину, учебных ассистентов и студентов специальности 230101. 65 «Вычислительные... |
Инструкция программное обеспечение для лазерного гравера Qualitech rdca 0 Система управления лазерным гравером включает в себя материнскую плату, lcd дисплей и программное обеспечение. Данная инструкция... |
||
Техническое задание Предмет закупки: продление лицензий Программное обеспечение для защиты рабочих мест пользователей от вредоносного программного обеспечения |
1. Коммерческие условия поставки программного обеспечения Программное обеспечение Adobe, графические и видео редакторы, издательские системы, средства web-разработки 6 |
||
1. Коммерческие условия поставки программного обеспечения Программное обеспечение Adobe, графические и видео редакторы, издательские системы, средства web-разработки 7 |
Лекция 1 Молчанов А. Ю. Системное программное обеспечение. Лабораторный практикум: – спб.: Питер, 2005. – 284 с |
||
Вопросы для подготовки к экзамену по профессиональному модулю пм.... Дисциплины: мдк. 09. 01 Установка и настройка системного программного обеспечения компьютерных систем и комплексов |
2 2 Ключевые вопросы сопровождения программного обеспечения 152 Программная инженерия и сущность инженерного подхода к созданию программного обеспечения 9 |
||
Задачах программирования лабораторный практикум по дисциплине «Системное... Методические указания предназначены для подготовки дипломированных специалистов направления 230100 «Информатика и вычислительная... |
Порядок действий при утрате/повреждении ключа шифрования программного обеспечения ViPNet Client Рением «. dst») программного обеспечения ViPNet Client производится в случае утраты ключевого носителя с записанным ключом шифрования... |
||
Методические рекомендации по выполнению внеаудиторной самостоятельной... ПМ. 01 Разработка программных модулей программного обеспечения для компьютерных систем |
Расчетов за услуги связи «Fastcom» версия 12 Руководство системного... Бпо – Базовое программное обеспечение программное обеспечение фирмы oracle, необходимое для функционирования ппо |
Поиск |