Защита данных и администрирование

В микропроцессорах Intel реализовано 4 механизма защиты памяти, организованной сегментно. Все эти механизмы работают совместно.

Первый механизм заключается в создании отдельной таблицы дескрипторов для каждого процесса. Таблицы формируются операционной системой на этапе создания процесса, а после активизации процесса в регистр LTDR заносится адрес таблицы LTD для данного процесса. Благодаря этому обеспечивается недоступность для процесса локальных дескрипторов и локальных сегментов данных других процессов.

Второй механизм – защита по привилегиям. Основан на том, что каждый сегмент оперативной памяти наделяется атрибутами безопасности. Эти атрибуты хранятся в дескрипторах сегментов (в поле «байт доступа»). Одним из важнейших атрибутов безопасности сегмента является уровень привилегий дескриптора сегмента, значение которого хранится в DPL байта доступа.

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

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

При обращении к сегментам данных кольца номер N процесс должен обладать уровнем привилегий k≤N (т.е. он может обращаться к данным своего и внешних колец).

Для обращения к сегментам кода кольца номер N процесс должен обладать уровнем привилегий k≥N (т.е. он может обращаться к кодам своего и внутренних колец).

Третий механизм – ограничение на способ использования сегмента. Возможности по использованию сегмента определяются байтом доступа соответствующего сегмента (битами 0-4 и 7). 7-й бит определяет, является сегмент системным или пользовательским. Если сегмент пользовательский, 4-й бит определяет тип сегмента – код или данные. Остальные 3 бита определяют права доступа.

Четвертый механизм – введение привилегированных команд. Привилегированные команды могут выполняться только с сегментами кода с уровнем привилегий 0


Понравилась статья? Добавь ее в закладку (CTRL+D) и не забудь поделиться с друзьями:  



double arrow
Сейчас читают про: