다음을 통해 공유


UMDF 개요

이 항목에서는 UMDF(User-Mode Driver Framework) 구성 요소에 대한 개략적인 개요를 제공하고 드라이버가 시스템 제공 구성 요소와 상호 작용하는 방법을 설명합니다. UMDF 버전 1과 2 모두에 적용됩니다.

UMDF 드라이버는 하드웨어 기능을 추상화하고, 사용자 모드 환경에서 실행하며, 다양한 서비스에 액세스할 수 있습니다. UMDF 드라이버는 디바이스를 관리하는 드라이버 스택의 일부로 작동합니다. 파일 시스템 드라이버, 디스플레이 드라이버(전체 디스플레이 디바이스의 경우 디스플레이 전용 디스플레이 디바이스 아님) 및 인쇄 드라이버는 UMDF 드라이버가 될 수 없습니다.

UMDF 드라이버는 다음 시스템 제공 구성 요소와 상호 작용합니다.

  • 드라이버 호스트 프로세스

    드라이버 호스트 프로세스는 공급업체에서 제공하는 UMDF 드라이버 및 프레임워크 DLL을 로드하고, 사용자 모드 드라이버에 대한 실행 환경을 제공하고, 사용자 모드 스택의 드라이버 간에 메시지를 라우팅합니다. 자세한 내용은 UMDF 드라이버 호스트 프로세스를 참조하세요.

  • 드라이버 관리자

    드라이버 관리자는 Wudfhost 드라이버 호스트 프로세스의 모든 인스턴스를 관리하는 Windows 서비스입니다. 드라이버 관리자는 각 드라이버 호스트 프로세스에 대한 정보를 시작하고 추적합니다. 각 호스트는 드라이버 관리자의 자식 프로세스입니다. 시스템당 하나의 드라이버 관리자만 존재합니다. 드라이버 관리자는 첫 번째 UMDF 디바이스를 설치하는 동안 시작하고 그 후 시스템에서 실행됩니다.

  • Reflector

    리플렉터 는 애플리케이션 및 드라이버 호스트 프로세스(및 사용자 모드 디바이스 스택)가 통신할 수 있도록 허용하는 커널 모드 드라이버입니다. 리플렉터에서는 각 디바이스 instance 대해 별도의 디바이스 개체를 만들고 각 디바이스 instance 연결된 플러그 앤 플레이(PnP) 및 전원 I/O 요청을 처리합니다. 애플리케이션과 드라이버 호스트 프로세스 간의 모든 통신은 리플렉터를 통해 수행됩니다. 자세한 내용은 UMDF 아키텍처를 참조하세요.

지정된 디바이스에 대한 모든 함수 및 필터 드라이버는 동일한 드라이버 호스트 프로세스에서 실행되어야 하지만 여러 호스트 프로세스를 동시에 실행할 수 있습니다.

다음 다이어그램에서는 드라이버 호스트 프로세스, 드라이버 관리자 및 리플렉터를 사용자 모드/커널 모드 경계 간에 통신하는 방법을 보여 줍니다.

리플렉터의 위쪽 및 아래쪽 디바이스 개체를 포함하는 umdf 구성 요소입니다.