Оглавление Об учебном пособии
Использованные источники1 Использованные источники2 Использованные источники3 Использованные источники4 Использованные источники5 Использованные источники6

Глава 1. Назначение, концепции и компоненты защищенного режима.

1.1. Назначение и основные концепции.

Защищенный режим работы в МП Intel предусматривает аппаратную поддержку различных вариантов защиты информации от помех. Предусмотренные возможности и глубина защиты определяются используемыми операционными системами.

Необходимость в защите информации появилась при переходе на многопрограммные режимы работы. Было ясно, что ЭВМ, допускающие многопрограммные режимы работы, должны обеспечивать следующие требования:

  1. независимость подготовки пользовательских программ и их защита от взаимных помех;
  2. защиту программ операционной системы от помех при сбоях в пользо-вательских программах;
  3. защиту программ операционной системы верхнего уровня от помех при сбоях в программах операционной системы нижнего уровня;
  4. защиту программ от отрицательных последствий при программных сбоях;
  5. защиту целостности системы.

Независимость подготовки пользовательских программ и их защита от взаимных помех. Это требование означает, что:

  • при разработке своей программы пользователь не должен учитывать возможное взаимное расположение программ в оперативной памяти и может рассчитывать на любое место в памяти;
  • предусматривается локализация возможных негативных последствий программных ошибок в пределах адресных пространств соответствующих программ.

Указанные проблемы в МП Intel в защищенном режиме решаются механизмом управления виртуальной памяти.

Виртуальная память предусматривает гибкое программное распределение ресурсов памяти, динамическую переадресацию и разделение адресных пространств совместно выполняемых программ.

Виртуальная память допускает многопрограммное выполнение прикладных программ, но при этом программы изолируются друг от друга таким образом, что ошибки в одной из них не влияют на корректное выполнение других программ. Когда программа осуществляет "некорректное" обращение к памяти, механизм виртуальной памяти блокирует обращение и сообщает о попытке нарушения защиты.

В МП Intel реализованы два уровня виртуальной памяти - верхний и нижний. Верхний уровень реализован механизмом трансляции сегментов, нижний уровень - механизмом трансляции страниц.

На уровне трансляции сегментов разделение адресных пространств пользовательских программ осуществляется при помощи локальных таблиц дескрипторов сегментов.

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

Защита программ операционной системы от помех при сбоях в пользовательских программах. Выполнение этого требования является более сложной задачей. Дело в том, что операционная система служит не только для организации определенного режима работы и обеспечения "дружелюбного" экранного интерфейса. Одной из важнейших функций операционной системы является предоставление сервисных процедур пользовательским программам. По этой причине глобальная таблица дескрипторов, определяющая сегменты операционной системы, должна быть доступна пользовательским программам, но не во вред защите программ операционной системы.

Для разрешения этой проблемы используется механизм защиты по режимам работы (уровням привилегий).

Практически во всех компьютерах для целей защиты предусматриваются как минимум два режима работы - системный режим, называемый также режимом супервизора (Supervisor), и пользовательский режим (User). Основное различие между ними состоит в том, что программам, работающим в режиме супервизора, доступны все ресурсы системы, у программ, работающих в пользовательском режиме, возможности доступа к ресурсам системы ограничены. В современных МП такой механизм защиты называют защитой по уровням привилегий (PL - Privilege Level).

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

Защита программ верхнего уровня операционной системы от помех при сбоях в программах нижнего уровня операционной системы. Такая защита программ необходима, потому что обычно операционные системы имеют иерархическую структуру.

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

В процессоре Intel имеется аппаратная поддержка четырех уровней привилегий. Однако в страничном преобразовании адреса применяется упомянутый простой двухуровневый механизм защиты: пользователь/супервизор.

Защита программ от отрицательных последствий при программных сбоях. Наиболее опасными здесь являются ошибки в использовании адресов данных или переходов. Нередко эти сбои приводят к фатальным последствиям: порче массивов данных и кодов.

Механизм защиты программ от отрицательных последствий при программных сбоях опирается на описание различных системных объектов с помощью дескрипторов.

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

На основе информации дескриптора механизм защиты осуществляет блокировку обращения к "неверному" пространству памяти и сообщает о возникновении этой ситуации.

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

При изучении механизма защиты следует учесть, что:

  • защита производится на логическом уровне;
  • Все проверки (например, адресов обращения) осуществляются в процессоре сравнением вычисленных и допустимых эталонных величин. При положительных результатах сравнения адреса посылаются в память. При пересылке адресов и данных возможно их искажение из-за аппаратных сбоев. Механизм защиты перед такими сбоями бессилен. Для борьбы с ними в вычислительных системах используется другой слой защиты - встроенный непрерывной контроль безошибочной работы аппаратуры.

  • рассматриваемый механизм является только аппаратной поддержкой защиты. Глубина реализованной защиты определяется операционной системой.


Вопросы для самопроверки:

  1. Что входит в понятие защиты программ от взаимных помех.
  2. Каким механизмом решается проблема защиты программ от взаимных помех на одном уровне привилегий.
  3. Как реализуется разделение адресных пространств выполняемых программ.
  4. В чем заключается основная проблема организации защиты программ операционной системы.
  5. Заменяет ли работа механизма защиты традиционные средства контроля безошибочной работы ЭВМ.
  6. Для каких целей в механизме защиты МП корпорации Intel увеличили количество уровней привилегий.
  7. Какую основную функцию в механизме защиты выполняют схемы управления виртуальной памятью.
  8. Какую функцию в механизме защиты выполняет процедура трансляция сегментов.
  9. Какую функцию в механизме защиты выполняет процедура трансляция страниц.
<< Предыдущая страница Следущая страница >>