Программирование драйверов Windows

       

Процедура обслуживания прерываний


Процедура обслуживания прерываний (Interrupt Service Routine, ISR), входящая в набор процедур драйвера, вызывается диспетчером прерываний ядра (Kernel's interrupt dispatcher) всякий раз, когда устройство генерирует сигнал прерывания. На этой процедуре лежит обязанность полного обслуживания аппаратного прерывания.

Собственно в ISR процедуре драйвера должна быть реализована самая минимальная обработка создавшейся ситуации. Если дополнительная, требующая больших временных затрат обработка прерывания требуется по логике работы устройства, то следует прибегнуть к использованию механизма DPC (отложенных процедурных вызовов), то есть запланировать отложенный процедурный вызов в текущей процедуре обработки прерываний (ISR). После этого, остаток работы ISR процедуры можно завершить на уровне IRQL ниже уровня аппаратных прерываний (DIRQL), понизив приоритет выполняемого кода данных комплексом мер.



Содержание раздела







Forekc.ru
Рефераты, дипломы, курсовые, выпускные и квалификационные работы, диссертации, учебники, учебные пособия, лекции, методические пособия и рекомендации, программы и курсы обучения, публикации из профильных изданий