Аллея «Матери России»
- 1 year ago
- 0
- 0
Обрабо́тчик прерыва́ний (или процедура обслуживания прерываний) — специальная процедура, вызываемая по прерыванию для выполнения его обработки. Обработчики прерываний могут выполнять множество функций, которые зависят от причины, которая вызвала прерывание.
Обработчик прерываний — это низкоуровневый эквивалент обработчика событий. Эти обработчики вызываются либо по аппаратному прерыванию, либо соответствующей инструкцией в программе, и соответственно обычно предназначены для взаимодействия с устройствами или для осуществления вызова функций операционной системы.
На современных ПК обработчики основных аппаратных и программных прерываний находятся в памяти
BIOS
. Современная операционная система, во время своей загрузки, заменяет эти обработчики своими. При загрузке
драйверов
устройств
операционная система
распределяет управление обработкой прерывания между ними. В операционных системах семейства
Windows
программные прерывания используются для вызовов многих
API
функций. В
ассемблере
x86
прерывание вызывается командой
INT
.
В современных системах обработчики прерываний делятся на высокоприоритетные обработчики прерываний (ВОП) и низкоприоритетные обработчики прерываний (НОП).
К выполнению ВОП обычно предъявляются жесткие требования: малое время на выполнение, малое количество операций, разрешенных к выполнению, особая надежность, так как ошибки, допущенные во время выполнения, могут обрушить операционную систему, которая не может корректно их обработать. Поэтому ВОП обычно выполняют минимально необходимую работу: быстро обслуживают прерывание, собирают критичную информацию, которая доступна только в это время, и планируют выполнение НОП для дальнейшей обработки.
ВОП, которые обслуживают аппаратные устройства, обычно маскируют своё прерывание для того, чтобы предотвратить вложенные вызовы, которые могут вызвать переполнение стека .
НОП завершает обработку прерывания. НОП либо имеет собственный поток для обработки, либо заимствует на время обработки поток из системного пула. Эти потоки планируются наравне с другими, что позволяет добиться более гладкого выполнения процессов. НОП выполняется с гораздо менее жесткими ограничениями по времени и ресурсам, что облегчает программирование и использование драйверов .
В разных системах ВОП и НОП именуются по-разному. В операционной системе Windows ВОП называется обработчиком прерывания, а НОП — отложенный вызов процедуры ( DPC , Deferred Procedure Call)
|
В статье
не хватает
ссылок на источники
(см.
рекомендации по поиску
).
|
|
Это
заготовка статьи
об
информационных технологиях
и
вычислительной технике
. Помогите Википедии, дополнив её.
|