Обработка прерываний
Выполнение основной программы иногда может приостанавливаться для осуществления неотложных действий, связанных, например, с реакцией на щелчок мыши или со сбоем в цепи электропитания. Такой режим работы, когда временно приостанавливается выполнение основной программы и происходит обслуживание запроса, называется прерыванием. По завершению обслуживания прерывания процессор возвращается к выполнению временно отложенной программы.
Запросы на прерывание могут возникать из-за сбоев в аппаратуре, переполнения разрядной сетки, деления на ноль, требования внешним устройством выполнения операции ввода информации и т.д. Например, при нажатии клавиши на клавиатуре возникает прерывание, обработка которого сводится к записи кода нажатой клавиши в буфер клавиатуры.
Обслуживание прерываний осуществляется с помощью специальных процедур обработки прерываний. Каждое прерывание имеет уникальный номер и с ним может быть связана определенная процедура обработки прерывания, призванная обслуживать возникшую ситуацию.
После получения сигнала о прерывании процессор делает следующее:
- запоминает состояние прерванной программы;
- распознает источник прерывания;
- вызывает и выполняет специальную системную программу обработки прерываний, входящую в состав операционной системы или BIOS;
- восстанавливает состояние прерванной программы и, при возможности, продолжает ее исполнение.
Назначение программы обработки прерываний – понять и в удобной для пользователя форме вывести на экран сообщение о причине прерывания, а иногда дать рекомендации о возможной реакции на эту причину.
Дата добавления: 2015-01-29; просмотров: 891;