다음을 통해 공유


StartIo 루틴 작성

이름에서 알 수 있듯이 StartIo 루틴은 물리적 디바이스에서 I/O 작업을 시작하는 작업을 담당합니다.

대부분의 가장 낮은 수준의 드라이버는 StartIo 루틴을 제공하고 I/O 관리자를 사용하여 I/O 관리자를 사용하여 IRP를 시스템에서 제공하는 디바이스 큐에 큐에 대기합니다. 일부 최저 수준 드라이버는 자체 보조 IRP 큐를 설정하고 관리하도록 설계되었지만 일반적으로 StartIo 루틴도 제공합니다. (추가 큐에 대한 자세한 내용은 디바이스 큐 설정 및 사용 및 디바이스 큐관리를 참조하세요.)

FSD 및 PnP 함수 및 필터 드라이버를 비롯한 상위 수준 드라이버는 성능을 저하할 수 있기 때문에 StartIo 루틴이 거의 없습니다. 대신 대부분의 파일 시스템 드라이버는 IRP의 내부 큐를 설정하고 유지 관리합니다. 다른 상위 수준 드라이버는 IRP에 대한 내부 큐를 가지고 있거나 단순히 IDP를 전달하여 디스패치 루틴에서 드라이버를 낮춥니다. 자세한 내용은 드라이버 관리 IRP 큐 를 참조하세요.

IoSetStartIoAttributes 루틴을 사용하여 드라이버에 대한 StartIo 처리를 수정하는 특성을 설정할 수 있습니다.

이 섹션에서는 다음 항목을 다룹니다.

Lowest-Level 드라이버의 StartIo 루틴

Higher-Level 드라이버의 StartIo 루틴

StartIo 루틴에 대해 고려해야 할 사항