다음을 통해 공유


UMDF의 일반 I/O 대상

경고

UMDF 2는 UMDF의 최신 버전이며 UMDF 1을 대체합니다. 모든 새 UMDF 드라이버는 UMDF 2를 사용하여 작성해야 합니다. UMDF 1에는 새로운 기능이 추가되지 않으며 최신 버전의 Windows 10에서는 UMDF 1에 대한 지원이 제한되어 있습니다. 유니버설 Windows 드라이버는 UMDF 2를 사용해야 합니다.

보관된 UMDF 1 샘플은 Windows 11 버전 22H2 - 2022년 5월 드라이버 샘플 업데이트찾을 수 있습니다.

자세한 내용은 UMDF 시작하기를 참조하세요.

로컬 또는 원격일 수 있는 일반 I/O 대상은 USB 요청 블록과 같은 특수한 디바이스별 데이터 형식을 지원하지 않는 I/O 대상입니다. 드라이버는 일반 I/O 대상으로 데이터를 보내기 전에 I/O 대상 및 디바이스가 해석할 수 있는 형식으로 데이터를 쓰기 버퍼에 넣어야 합니다. 마찬가지로 드라이버가 일반 I/O 대상에서 데이터를 읽을 때 드라이버는 대상에서 수신하는 데이터 버퍼의 내용을 해석할 수 있어야 합니다.

로컬 I/O 대상
드라이버는 종종 드라이버 스택의 다음 하위 드라이버에 I/O 요청을 보냅니다. 따라서 각 UMDF 기반 드라이버에는 디바이스의 다음 하위 드라이버인 각 디바이스에 대한 기본 I/O 대상이 있습니다. 가장 낮은 수준 UMDF 기반 드라이버의 기본 I/O 대상은 커널 모드 리플렉터입니다.

경우에 따라 UMDF 기반 드라이버는 파일 또는 네트워크 소켓과 같은 파일 핸들 기반 I/O 대상에 I/O 요청을 보내야 합니다. 따라서 프레임워크는 파일 핸들 기반 I/O 대상 개체도 제공합니다.

UMDF 기반 드라이버는 이러한 대상을 사용하여 드라이버 스택이 지원하는 디바이스에 I/O 요청을 보내기 때문에 기본 I/O 대상과 파일 핸들 기반 I/O 대상을 모두 로컬 I/O 대상이라고 합니다.

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

원격 I/O 대상은 드라이버 스택이 지원하지 않는 디바이스, 해당 디바이스의 파일 또는 해당 디바이스에 대한 디바이스 인터페이스 일 수 있습니다.

다음 섹션에서는 일반 I/O 대상을 초기화하고 사용하는 방법을 설명합니다.