Прерывания

Для правильного функционирования системы необходимо взаимодействие между диспетчером, выполняющимся процессом и подсистемой ввода/вывода. Обычно истечение кванта времени или завершение ввода/вывода выявляется в результате прерывания. Прерывания вызывают и другие события, и поэтому обработка прерываний является важным аспектом управления процессором. Рассмотрим процессор, который последовательно выполняет команды некоторой программы, среди которых нет условных и безусловных переходов. Прерывание можно определить как навязанную программе передачу управления на команду программы, отличную от той, которая должна была выполняться в момент прерывания. Прерывание удобно считать средством передачи управления процессу обработки прерывания, который неизвестен прерванному процессу.

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

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

Далее...

   Обложка   Учебник   Экзамен   Глоссарий   Информация 
Hosted by uCoz