Escribir una rutina StartIo

Como su nombre sugiere, una rutina StartIo es responsable de iniciar una operación de E/S en el dispositivo físico.

La mayoría de los controladores de nivel más bajo proporcionan una rutina StartIo y dependen del administrador de E/S para poner en cola los IRP en una cola de dispositivos proporcionada por el sistema. Algunos controladores de nivel más bajo están diseñados para configurar y administrar sus propias colas IRP complementarias, pero incluso estas normalmente también proporcionan una rutina StartIo . (Para obtener más información sobre las colas complementarias, consulte Configuración y uso de colas de dispositivos y administración de colas de dispositivos).

Los controladores de nivel superior, incluidos los controladores FSD y PnP y los controladores de filtro, rara vez tienen una rutina StartIo porque puede dificultar el rendimiento. En su lugar, la mayoría de los controladores del sistema de archivos configuran y mantienen colas internas de IRP. Otros controladores de nivel superior tienen colas internas para IRP o simplemente pasan IRP a controladores inferiores desde sus rutinas de envío. Consulte Colas de IRP administradas por controladores para obtener más información.

Puede usar la rutina IoSetStartIoAttributes para establecer atributos que modifiquen el control de StartIo para el controlador.

Esta sección contiene los siguientes temas:

Rutinas StartIo en controladores de Lowest-Level

Rutinas StartIo en controladores de Higher-Level

Puntos a tener en cuenta para rutinas StartIo