4.2. Защита данных.4.2.1. Стратегия защиты данных.Все прикладные программы в многопрограммном режиме выполняются на одном (нижнем) уровне привилегий. Механизм виртуальной памяти обеспечивает их защиту от взаимных помех. Для сегментов данных системных программ, дескрипторы которых размещены в глобальной таблице дескрипторов, также возможно разделение адресных пространств, но только за счет механизма трансляции страниц. Поэтому всем программам разрешено обращаться к любым данным на своем уровне привилегий. Логика сервисных функций современных операционных систем предусматривает работу с данными программ менее защищенных режимов. Поэтому программам разрешено обращаться к данным и на менее привилегированных уровнях. Защита программ от взаимных помех здесь определяется только корректностью написания системных программ Программам не разрешается считывание/запись элементов данных, которые имеют более высокий уровень привилегий, т.е. "движение" к данным внутрь колец защиты запрещается. Любая такая попытка приводит к фиксации нарушения общей защиты. Это общее правило защиты доступа к данным можно записать в виде условия: CPL (т.е. PL программы) <= DPL (т.е. PL данных) или представить графически в виде допустимых схем обращения к данным (рис. 6.). На рис. 6 уровни привилегий представлены в виде горизонтальных "этажей", сегменты программ - в виде треугольников, данных - в виде квадратов. Стрелками без перекрещивания указаны разрешенные схемы доступа. ![]() Рис. 6. Схемы допустимых обращений к данным. Представленное общее правило защиты доступа к данным является "рамочным", отражающим только максимальные возможности доступа. Полное правило доступа несколько сложнее. В условие проверки вводится параметр "эффективный уровень" привилегий (Effective Privilege Level - EPL) как функция уровня привилегий запросчика RPL: EPL = max [CPL, RPL] Параметр EPL используется в условии проверки разрешения доступа к сегментам вместо CPL. С учетом RPL условие проверки разрешения доступа к данным приобретает вид: EPL <= DPL или max [CPL,RPL] <= DPL или Кроме проверок на соответствие уровней привилегий при обращении к данным производятся и общие проверки:
|