Regiones críticas y regiones protegidas

Un subproceso que se encuentra dentro de una región crítica se ejecuta con las API de usuario y las API de kernel normales deshabilitadas. Un subproceso dentro de una región protegida se ejecuta con todas las API deshabilitadas.

Regiones críticas

Un controlador puede entrar y salir de una región crítica de la siguiente manera:

Cada llamada a KeEnterCriticalRegion debe tener una llamada coincidente a KeLeaveCriticalRegion.

Regiones protegidas

Un controlador puede entrar y salir de una región protegida de la siguiente manera:

Cada llamada a KeEnterGuardedRegion debe tener una llamada coincidente a KeLeaveGuardedRegion.

Los controladores desarrollados para Windows Server 2003 y versiones posteriores de Windows pueden usar regiones protegidas para deshabilitar las API de kernel especiales. Los controladores desarrollados para sistemas operativos anteriores pueden deshabilitar las API de kernel especiales mediante la generación del IRQL actual para APC_LEVEL mediante una llamada a KeRaiseIrql. Use KeLowerIrql para reducir el IRQL actual al valor anterior.