1. Сохранение информации о прерванной программе, которую не удалось спасти на шаге 2 с помощью аппаратуры. В некоторых процессорах предусматривается запоминание довольно большого объема информации о состоянии прерванных вычислений.
2. Выполнение программы, связанной с обработкой прерывания. Эта работа может быть выполнена той же подпрограммой, на которую было передано управление на шаге 3, но в операционных системах достаточно часто она реализуется путем последующего вызова соответствующей подпрограммы.
3. Восстановление информации, относящейся к прерванному процессу (этап, обратный шагу 4).
4. Возврат на прерванную программу.
Главные функции механизма прерываний:
1. Распознавание или классификация прерываний
2. Передача управления соответствующему обработчику прерываний
3. Корректное возвращение к прерванной программе
Вопрос №2. «Классы прерываний. Вектор прерывания. Таблица векторов прерываний».
Классы прерываний:
1. внешние (их иногда называют асинхронными)
|
|
2. внутренние (синхронные).
Внешние прерывания вызываются асинхронными событиями, которые происходят вне прерываемого процесса, например:
· прерывания от таймера. Внутренний таймер ПК обладает способностью прерываться для того, чтобы дать возможность хронометрирующей программе "слышать" каждый "удар" часов-таймера, который повторяется 18 раз/с. Микропроцессор может выполнить десятки тысяч команд за промежуток времени между двумя ударами часов, следовательно, прерывания таймера не отнимают у него много времени;
· прерывания от внешних устройств - это аппаратные прерывания ПК, которые сигнализируют микропроцессору о событиях, произошедших в аппаратуре (например, отсутствие бумаги в принтере или завершение работы дисковода).
· прерывания по нарушению питания - это аппаратные прерывания микропроцессора.
· прерывания с пульта оператора вычислительной системы;
· прерывания от другого процессора или другой вычислительной системы.
Структура прерываний: