Nota:
El acceso a esta página requiere autorización. Puede intentar iniciar sesión o cambiar directorios.
El acceso a esta página requiere autorización. Puede intentar cambiar los directorios.
La mayoría de las rutinas de distribución de controladores se llaman en un contexto de subproceso arbitrario en IRQL = PASSIVE_LEVEL, con las siguientes excepciones:
Se llama a las rutinas de distribución del controlador de nivel más alto en el contexto del subproceso que originó la solicitud de E/S, que suele ser un subproceso de aplicación en modo de usuario.
En otras palabras, las rutinas de despacho de los controladores del sistema de archivos y otros controladores de nivel superior se llaman en un contexto de hilo no arbitrario en IRQL = PASSIVE_LEVEL.
Las rutinas DispatchRead, DispatchWrite y DispatchDeviceControl de controladores de dispositivo de nivel más bajo y de controladores intermedios superpuestas por encima de ellos en la ruta de paginación del sistema, se pueden llamar en IRQL = APC_LEVEL y en un contexto de subproceso arbitrario.
Las rutinas DispatchRead o DispatchWrite , y cualquier otra rutina que también procese solicitudes de lectura o escritura en un dispositivo de nivel inferior o un controlador intermedio, deben residir en todo momento. Estas rutinas de controlador no pueden ser paginables ni formar parte de la sección de imagen paginable de un controlador; no deben tener acceso a ninguna memoria paginable. Además, no deben depender de ninguna llamada de bloqueo (como KeWaitForSingleObject con un tiempo de espera distinto de cero).
Se puede llamar a la rutina DispatchPower de los controladores en las rutas de hibernación o paginación en IRQL = DISPATCH_LEVEL. Las rutinas DispatchPnP de estos controladores deben estar preparadas para manejar solicitudes de PnP IRP_MN_DEVICE_USAGE_NOTIFICATION.
Se puede invocar a la rutina DispatchPower de los controladores que requieren corriente de irrupción al iniciarse en IRQL = DISPATCH_LEVEL.
Para obtener más información, consulte Administración de prioridades de hardware.