Лекция: Супервизор прерываний.
Прерывания представляют собой механизм, позволяющий координировать параллельное функционирование устройств ВС. Прерывание- это принудительная передача управления от выполняемой программы к ОС, а через нее к соответствующей программе обработки прерываний.
Основная цель прерываний: координация и параллельное функционирование отдельных устройств ВС и реагирование на состояние, возникающее при работе процессора.
Прерывания являются основной движущей силой любой ОС.
Механизм прерываний осуществляется аппаратными и программными средствами.
- Установление факта прерывания(сигнал запроса на прерывание) и идентификация прерывания.
- Запоминание состояния прерванного процесса вычислений.
- Управление аппаратно передается на подпрограмму обработки прерываний.
- Сохранение информации о прерванной программе, с помощью программы обработки прерывания.
- Обработка прерывания.
- Восстановление информации, относящейся к прерванному процессу.
- Возврат на прерванную программу.
Главные функции механизма прерываний:
- распознавание или классификация прерываний.
- передача управления соответствующему обработчику прерываний.
- корректное возвращение к прерванной программе.
внешние — возникают в результате воздействия пользователя или оператора за терминалом, или в результате поступления сигналов от аппаратных устройств- сигналов завершения операций ввода-вывода, сигналов от датчиков управляемых компьютером, технических объектов и др.
внутренние- происходят синхронно выполнению программы. При появлении аварийной ситуации, в ходе исполнения некоторой программы- делении на ноль, ошибки зашиты памяти, обращение по несуществующему адресу, попытка выполнить привилегированную инструкцию в пользовательском режиме и т.п.
программные — возникают при выполнении особой команды процессора, выполнение которой имитирует прерывание, то есть переход на новую последовательность инструкций. Прерыванием приписывается приоритет, с помощью которого они ранжируются по степени важности и срочности.