이름에서 알 수 있듯이 StartIo 루틴은 물리적 디바이스에서 I/O 작업을 시작하는 역할을 합니다.
가장 낮은 수준의 드라이버는 StartIo 루틴을 제공하고, I/O 관리자가 IRP를 시스템에서 제공하는 디바이스 큐에 대기시킵니다. 일부 최저 수준 드라이버는 자체 보조 IRP 큐를 설정하고 관리하도록 설계되었지만, 이러한 드라이버도 일반적으로 StartIo 루틴을 제공합니다. (추가 큐에 대한 자세한 내용은 디바이스 큐 설정 및 사용 및 디바이스 큐 관리을 참조하세요.)
FSD 및 PnP 함수 및 필터 드라이버를 포함한 상위 수준의 드라이버는 StartIo 루틴을 거의 가지지 않는데, 이는 성능을 저해할 수 있기 때문입니다. 대신 대부분의 파일 시스템 드라이버는 IRP의 내부 큐를 설정하고 유지 관리합니다. 다른 상위 수준 드라이버는 IRP에 대한 내부 큐를 가지고 있거나 단순히 디스패치 루틴에서 낮은 드라이버에 IRP를 전달합니다. 자세한 내용은 Driver-Managed IRP 큐를 참조하시기 바랍니다.
IoSetStartIoAttributes 루틴을 사용하여 드라이버에 대한 StartIo 처리를 수정하는 특성을 설정할 수 있습니다.
이 섹션에는 다음 항목이 포함되어 있습니다.
Higher-Level 드라이버의 StartIo 루틴