I/O 대상 소개

이 섹션의 topics WDF(Windows 드라이버 프레임워크) 드라이버가 I/O 요청을 전달하거나 I/O 대상이라는 새 요청을 만들어 다른 드라이버에 보내는 방법을 설명합니다.

함수 드라이버, 필터 드라이버 또는 미니포트 드라이버가 I/O 요청을 받으면 드라이버가 자체 요청을 처리할 수 있거나 다른 드라이버의 지원이 필요할 수 있습니다. 드라이버에 도움이 필요한 경우 요청을 다른 드라이버에 전달하거나 하나 이상의 새 요청을 만들어 다른 드라이버로 보낼 수 있습니다.

Kernel-Mode Driver Framework에서 I/O 대상은 I/O 요청의 대상인 디바이스 개체를 나타냅니다. 함수, 필터 또는 미니포트 드라이버는 I/O 대상을 사용하여 다른 드라이버에 I/O 요청을 보낼 수 있습니다. 이러한 드라이버는 종종 I/O 요청을 드라이버 스택의 다음 하위 드라이버로 보냅니다. 따라서 각 프레임워크 기반 함수, 필터 및 미니포트 드라이버에는 디바이스의 다음 하위 드라이버인 각 디바이스에 대한 로컬 I/O 대상이 있습니다.

경우에 따라 드라이버는 다른 드라이버 스택의 위쪽 또는 전송 드라이버 스택 내의 일부 다른 드라이버와 같은 다른 대상에 I/O 요청을 보내야 합니다. 따라서 프레임워크는 로컬 I/O 대상을 제외한 모든 I/O 대상으로 구성된 원격 I/O 대상도 제공합니다.

각 I/O 대상은 I/O 대상 개체로 표시됩니다. 각 I/O 대상 개체는 주로 요청이 대상 디바이스 개체에 전달되는 시기를 제어하는 큐입니다. 드라이버가 I/O 대상에 요청을 보내면 프레임워크는 대상 디바이스 개체에 요청을 전달할 수 있을 때까지 큐에 요청을 저장합니다.

프레임워크는 일반 I/O 대상특수 I/O 대상을 모두 지원합니다.

  • 일반 I/O 대상은 모든 함수, 필터 및 미니포트 드라이버에서 사용할 수 있지만 특별한 디바이스별 데이터 형식은 지원하지 않습니다.

  • 특수 I/O 대상을 사용하면 함수, 필터 및 미니포트 드라이버가 특수한 대상별 데이터 서식이 필요한 I/O 요청을 쉽게 보낼 수 있습니다. 현재 프레임워크는 다음과 같은 특수 I/O 대상을 지원합니다.

프레임워크가 디바이스의 데이터 형식을 지원하는 특수 I/O 대상을 제공하는 경우 드라이버는 특수 I/O 대상을 사용해야 합니다. 그렇지 않으면 드라이버는 일반 I/O 대상을 사용해야 합니다.