Compartir a través de


Proporcionar información de contexto de ISR

En la entrada, un ISR recibe un puntero al área de contexto que el controlador configuró cuando llamó a IoConnectInterruptEx para registrar la rutina.

La mayoría de los controladores establecen el puntero de contexto en el objeto de dispositivo que representa el dispositivo físico que genera interrupciones o en la extensión de dispositivo del objeto de dispositivo. En la extensión del dispositivo, el controlador puede almacenar información de estado para la rutina ISR y DpcForIsr del controlador, que normalmente realiza casi todo el procesamiento de E/S para satisfacer cada solicitud que provocó la interrupción del dispositivo.

Normalmente, los controladores usan la extensión de dispositivo para almacenar punteros a cada uno de los objetos de interrupción del dispositivo (devueltos desde llamadas a IoConnectInterruptEx). Los controladores también suelen almacenar información en la extensión de dispositivo que permite a un ISR determinar si un dispositivo ha emitido una interrupción que admite el ISR.

(Como alternativa, los punteros de objeto de interrupción se pueden almacenar en un grupo no paginado que asigna el controlador).