Compartir a través de


Prioridades de subprocesos

Algunos controladores crean sus propios subprocesos de sistema dedicados a controladores o dispositivos y establecen la prioridad base de su subproceso en el valor de prioridad en tiempo real más bajo. Otros controladores de nivel superior, especialmente los controladores del sistema de archivos, usan subprocesos de trabajo del sistema con una prioridad base que normalmente se establece en el valor de prioridad variable más alto. El kernel programa un subproceso con la prioridad en tiempo real más baja para ejecutarse por delante de cada subproceso con una prioridad variable, que incluye casi todos los subprocesos en modo de usuario del sistema.

La mayoría de las rutinas de controlador estándar se ejecutan en un contexto de subproceso arbitrario, delante de todos los subprocesos que están actualmente en estado listo.

Los subprocesos, independientemente de sus respectivas prioridades en tiempo de ejecución, se ejecutan en IRQL = PASSIVE_LEVEL. Muchas rutinas de controlador estándar se ejecutan en una PASSIVE_LEVEL IRQL > , como DISPATCH_LEVEL o DIRQL.

Para obtener más información sobre las prioridades de subprocesos, consulte las notas del producto Programación, Contexto de subprocesos e IRQL .