Типы прерываний. Прерывания, возникающие при работе вы- числительной системы, можно разделить на 4 группы, представ- ленные на схеме на рис. 105.
Аппаратные прерывания вызываются физическими устройства- ми и возникают по отношению к программе асинхронно, то есть в общем случае невозможно предсказать, когда и по какой причине программа будет прервана.
Рис. 105. Типы прерываний ПЛК
Аппаратные прерывания не координируются c работой про- граммного обеспечения. Когда вызывается прерывание, то процес- сор оставляет свою работу, выполняет прерывание, a затем возвращается на прежнее место.
Внешние прерывания возникают по сигналу какого-либо внеш- него устройства, например:
прерывание, которое информирует систему о том, что требуе- мый сектор диска уже прочитан, его содержимое доступно про- грамме;
прерывание, которое информирует систему о том, что завер- шилась печать символа на принтере и необходимо выдать следую- щий символ;
прерывания по нарушению питания;
нормальное завершение некоторой операции ввода/вывода
(нажатие клавиши на клавиатуре);
Прерывание по таймеру вызывается интервальным таймером. Этот таймер содержит регистр, которому может быть присвоено определенное начальное значение посредством специальной при- вилегированной команды. Значение этого регистра автоматически уменьшается на 1 по истечении каждой миллисекунды времени. Когда это значение становятся равным нулю, происходит преры- вание по таймеру. Подобный интервальный таймер используется операционной системой для определения времени, в течение ко- торого программа пользователя может оставаться под управлени- ем машины.
Внутренние прерывания вызываются событиями, которые свя- заны с работой процессора и являются синхронными с его опера- циями, а именно прерывание происходит:
при нарушении адресации (в адресной части выполняемой ко- манды указан запрещенный или несуществующий адрес, обраще- ние к отсутствующему сегменту или странице при организации механизмов виртуальной памяти);
наличии в поле кода не задействованной двоичной комбинации;
делении на нуль;
переполнении или исчезновении порядка;
обнаружении ошибок четности, ошибок в работе различных устройств аппаратуры средствами контроля.
Достарыңызбен бөлісу: |