Главная Случайная страница


Полезное:

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


Категории:

АрхитектураАстрономияБиологияГеографияГеологияИнформатикаИскусствоИсторияКулинарияКультураМаркетингМатематикаМедицинаМенеджментОхрана трудаПравоПроизводствоПсихологияРелигияСоциологияСпортТехникаФизикаФилософияХимияЭкологияЭкономикаЭлектроника






Аппарат привилегированных команд





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

Далее, в центральном процессоре располагается специальный одноразрядный регистр режима работы, который может, естественно, принимать только два значения. Значение этого регистра и определяют тот режим, в котором в данный момент работает центральный процессор: обычный режим (или режим пользователя) или привилегированный режим.[81] В привилегированном режиме центральному процессору разрешается выполнять все команды языка машины, а в режиме пользователя – только обычные (не привилегированные) команды. При попытке выполнить привилегированную команду в пользовательском режиме вырабатывается сигнал прерывания, а сама команда, естественно, не выполняется. Из этого правила выполнения команд легко понять и другое название для привилегированных команд – запрещённые команды, так как их выполнение запрещено в режиме пользователя. Объясним теперь, почему без аппарата привилегированных команд невозможно реализовать мультипрограммный режим работы ЭВМ.

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

Привилегированными должны быть и все команды, которые обращаются к внешним (периферийным) устройствам. Например, нельзя разрешать запись на диск в режиме пользователя, так как диск – это тоже общая память для всех программ, только внешняя, и одна программа может испортить на диске данные, принадлежащие другим программам. То же самое относится и к печатающему устройству: если разрешить всем программам бесконтрольно выводить свои данные на печать, то, конечно, разобраться в том, что же получится на бумаге, будет невозможно.

Итак, в мультипрограммном режиме программе пользователя запрещается выполнять команды, работающие с внешними устройствами (дисками, принтерами, линиями связи и т.д.). Как же быть, если программе необходимо, например, считать данные из своего файла на диске в оперативную память? Выход один – программа пользователя должна обратиться к служебной процедуре с просьбой, выполнить для неё ту работу, которую сама программа пользователя сделать не в состоянии. Служебная программа, естественно, должна работать в привилегированном режиме. Перед выполнением запроса служебная процедура проверяет, имеет ли программы пользователя право на запрашиваемое действие, например, что эта программа имеет необходимые полномочия на чтение из указанного файла.[82]

Переключение из привилегированного режима в режим пользователя обычно производится по специальной (не привилегированной) машинной команде. Значительно сложнее обстоит дело с такой опасной операцией, как переключение центрального процессора в привилегированный режим работы. Это переключение невозможно выполнить по какой-либо машинной команде (поймите, почему это так!). Обычно переключение в привилегированный режим производится автоматически при обработке центральным процессором сигнала прерывания, а иногда – при вызове специальных системных процедур, которые имеют полномочия для работы в привилегированном режиме.

Date: 2015-10-18; view: 403; Нарушение авторских прав; Помощь в написании работы --> СЮДА...



mydocx.ru - 2015-2024 year. (0.005 sec.) Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав - Пожаловаться на публикацию