Escrever uma rotina startio

Como o nome sugere, uma rotina StartIo é responsável por iniciar uma operação de E/S no dispositivo físico.

A maioria dos drivers de nível mais baixo fornece uma rotina StartIo e depende do gerenciador de E/S para enfileirar IRPs em uma fila de dispositivos fornecida pelo sistema. Alguns drivers de nível mais baixo são projetados para configurar e gerenciar suas próprias filas IRP complementares, mas mesmo elas geralmente também fornecem uma rotina StartIo . (Para obter mais informações sobre filas complementares, consulte Configurando e usando filas de dispositivos e gerenciando filas de dispositivos.)

Drivers de nível superior, incluindo FSDs e drivers de função PnP e filtro, raramente têm uma rotina StartIo porque isso pode dificultar o desempenho. Em vez disso, a maioria dos drivers do sistema de arquivos configura e mantém filas internas de IRPs. Outros drivers de nível superior têm filas internas para IRPs ou simplesmente passam IRPs para reduzir os drivers de suas rotinas de expedição. Consulte Filas DE IRP gerenciadas pelo driver para obter mais informações.

Você pode usar a rotina IoSetStartIoAttributes para definir atributos que modificam a manipulação do StartIo para o driver.

Esta seção contém os seguintes tópicos:

Rotinas do StartIo em drivers de Lowest-Level

Rotinas do StartIo em drivers de Higher-Level

Pontos a serem considerados para rotinas startio