Электронный учебник:


Курс лекций:


Дополнительно:

Практикум:



Наши хостеры:

Прерывания

Прерывания (аппаратные) – это сигналы, при поступлении которых нормальная последовательность выполнения программы может быть прервана, при этом система запоминает информацию, необходимую для возобновления работы прерванной программы, и передает управление подпрограмме обработки прерывания (ISR, Interrupt Service Routine). По завершению обработки, как правило, управление возвращается прерванной программе.

Все прерывания можно разделить на три основных типа:

·         аппаратные прерывания от периферийных устройств;

·         внутренние аппаратные прерывания (называемые также исключениями, exceptions);

·         программные прерывания.

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

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

предыдущаяследующая