Супервизор прерываний.

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

Основная цель прерываний: координация и параллельное функционирование отдельных устройств ВС и реагирование на состояние, возникающее при работе процессора.

Прерывания являются основной движущей силой любой ОС.

Механизм прерываний осуществляется аппаратными и программными средствами.

  1. Установление факта прерывания(сигнал запроса на прерывание) и идентификация прерывания.
  2. Запоминание состояния прерванного процесса вычислений.
  3. Управление аппаратно передается на подпрограмму обработки прерываний.
  4. Сохранение информации о прерванной программе, с помощью программы обработки прерывания.
  5. Обработка прерывания.
  6. Восстановление информации, относящейся к прерванному процессу.
  7. Возврат на прерванную программу.

Главные функции механизма прерываний:

  1. распознавание или классификация прерываний.
  2. передача управления соответствующему обработчику прерываний.
  3. корректное возвращение к прерванной программе.

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

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

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