Глава 1. Назначение, концепции и компоненты защищенного режима.1.1. Назначение и основные концепции.Защищенный режим работы в МП Intel предусматривает аппаратную поддержку различных вариантов защиты информации от помех. Предусмотренные возможности и глубина защиты определяются используемыми операционными системами. Необходимость в защите информации появилась при переходе на многопрограммные режимы работы. Было ясно, что ЭВМ, допускающие многопрограммные режимы работы, должны обеспечивать следующие требования:
Независимость подготовки пользовательских программ и их защита от взаимных помех. Это требование означает, что:
Указанные проблемы в МП Intel в защищенном режиме решаются механизмом управления виртуальной памяти. Виртуальная память предусматривает гибкое программное распределение ресурсов памяти, динамическую переадресацию и разделение адресных пространств совместно выполняемых программ. Виртуальная память допускает многопрограммное выполнение прикладных программ, но при этом программы изолируются друг от друга таким образом, что ошибки в одной из них не влияют на корректное выполнение других программ. Когда программа осуществляет "некорректное" обращение к памяти, механизм виртуальной памяти блокирует обращение и сообщает о попытке нарушения защиты. В МП Intel реализованы два уровня виртуальной памяти - верхний и нижний. Верхний уровень реализован механизмом трансляции сегментов, нижний уровень - механизмом трансляции страниц. На уровне трансляции страниц разделение адресных пространств пользователей производится при разделении таблиц страниц. Каждая программа использует свою таблицу страниц, которая определяет доступ к соответствующим (своим) страницам. Защита программ операционной системы от помех при сбоях в пользовательских программах. Выполнение этого требования является более сложной задачей. Дело в том, что операционная система служит не только для организации определенного режима работы и обеспечения "дружелюбного" экранного интерфейса. Одной из важнейших функций операционной системы является предоставление сервисных процедур пользовательским программам. По этой причине глобальная таблица дескрипторов, определяющая сегменты операционной системы, должна быть доступна пользовательским программам, но не во вред защите программ операционной системы. Для разрешения этой проблемы используется механизм защиты по режимам работы (уровням привилегий). Практически во всех компьютерах для целей защиты предусматриваются как минимум два режима работы - системный режим, называемый также режимом супервизора (Supervisor), и пользовательский режим (User). Основное различие между ними состоит в том, что программам, работающим в режиме супервизора, доступны все ресурсы системы, у программ, работающих в пользовательском режиме, возможности доступа к ресурсам системы ограничены. В современных МП такой механизм защиты называют защитой по уровням привилегий (PL - Privilege Level). Этот механизм открывает пользовательским программам доступ только к определенным программам операционной системы и обеспечивает достаточно корректное использование этих программ. Защита программ верхнего уровня операционной системы от помех при сбоях в программах нижнего уровня операционной системы. Такая защита программ необходима, потому что обычно операционные системы имеют иерархическую структуру. Ошибки на разных уровнях этой структуры имеют различные по тяжести последствия в виде возможных нарушений в работе системы. Естественно, что "жесткость" защиты от помех на разных уровнях иерархии программ операционной системы должна быть различной. По этой причине увеличивают количество уровней привилегий. В процессоре Intel имеется аппаратная поддержка четырех уровней привилегий. Однако в страничном преобразовании адреса применяется упомянутый простой двухуровневый механизм защиты: пользователь/супервизор. Защита программ от отрицательных последствий при программных сбоях. Наиболее опасными здесь являются ошибки в использовании адресов данных или переходов. Нередко эти сбои приводят к фатальным последствиям: порче массивов данных и кодов. Дескриптор является "поисковым" образом объекта, определяющим функциональные свойства объекта с учетом определенных требований информационной безопасности. Дескриптор определяет не только место расположения объекта в памяти, но и его тип, степень защиты и права доступа. На основе информации дескриптора механизм защиты осуществляет блокировку обращения к "неверному" пространству памяти и сообщает о возникновении этой ситуации. Защита целостности функционирования вычислительной системы. Вычислительные системы проектируются под конкретные режимы работы, определяемые операционной системой. Четкое выполнение административных функций по поддержке заданных режимов входит в понятие целостности вычислительной системы. Обеспечение целостности функционирования вычислительной системы реализуется механизмами разделения адресного пространства и защитой по уровням привилегий. При изучении механизма защиты следует учесть, что:
Все проверки (например, адресов обращения) осуществляются в процессоре сравнением вычисленных и допустимых эталонных величин. При положительных результатах сравнения адреса посылаются в память. При пересылке адресов и данных возможно их искажение из-за аппаратных сбоев. Механизм защиты перед такими сбоями бессилен. Для борьбы с ними в вычислительных системах используется другой слой защиты - встроенный непрерывной контроль безошибочной работы аппаратуры.
|