Oharra
Baimena behar duzu orria atzitzeko. Direktorioetan saioa has dezakezu edo haiek alda ditzakezu.
Baimena behar duzu orria atzitzeko. Direktorioak alda ditzakezu.
Los controladores usan sus rutinas SynchCritSection para dos propósitos básicos:
Programación de un dispositivo para una operación de E/S
Acceso a la información de estado compartido
Al igual que un ISR, una rutina SynchCritSection debe ejecutarse lo más rápido posible, haciendo solo lo necesario para configurar registros de dispositivos o actualizar datos de contexto, antes de volver.
Dado que KeSynchronizeExecution contiene el bloqueo de número de interrupción de un controlador de dispositivo mientras se ejecuta su rutina SynchCritSection , el ISR del controlador no se puede ejecutar hasta que la rutina SynchCritSection devuelva el control.
Para cualquier IRP recibido, un controlador de dispositivo debe realizar tanto procesamiento de E/S como sea posible en IRQL PASSIVE_LEVEL en sus rutinas de envío (o posiblemente subprocesos dedicados al dispositivo), o en IRQL DISPATCH_LEVEL en su rutina StartIo y rutinas DPC.
Para obtener más información sobre cómo se sincronizan las secciones críticas, vea Uso de bloqueos de número: un ejemplo.