logo
АВМиС - бывшее АПЭВМ / apvem / всякаявсячина

Привилегии и защита программ

МП 80386/80286 управляют межуровневым доступом к данным и процедурам согласно следующим правилам:

1) данные, хранящиеся в сегменте с уровнем привилегий р, могут быть доступны только при выполнении команд с такими же или меньшими привилегиями, чем р;

2) кодовый сегмент с уровнем привилегий р может быть вызван задачей, выполняемой на том же самом уровне или более привилегированном, чем р.

Отметим, что при работе с МП 80386 нужно иметь в виду, что под сегментами данных, кроме сегментов DS и ES, которые присутствуют и в МП 80286, понимаются все сегменты данных МП 80386, а именно: DS, ES, FS, GS.

Поэтому все правила работы с сегментами данных на различных уровнях привилегий распространяются и на сегменты FS, GS. Кроме того, МП 80386 предоставляет дополнительный тип защиты на базе страничной организации (при условии разрешенного к ней доступа).

Защита МП 80386/80286 включает в себя пять компонентов: 1) контроль типа дескриптора сегмента; 2) контроль границ (предела); 3) ограничение области адресуемости; 4) ограничение процедуры точек входа; 5) ограничение набора команд.

Аппаратура защиты МП 80386 - общая для обоих способов управления памятью, т.е. защита действует как при преобразовании сегмента, так и при преобразовании страниц.

Как в МП 80286, так и в МП 80386 каждое обращение к памяти контролируется для выяснения, удовлетворяет ли оно критерию защиты. Весь контроль происходит перед началом выполнения команды, а любое нарушение защиты приводит к его завершению и к прерыванию по исключительной ситуации. Благодаря тому, что контроль производится одновременно с формированием адреса, он позволяет исключить возможность возникновения непредсказуемых последствий в дальнейшем.