다음을 통해 공유


샘플 디바이스 및 드라이버 구성

이 섹션에서는 키보드와 마우스 디바이스를 예로 사용하여 하드웨어와 드라이버 구성 간의 관계를 보여 줍니다. 구성은 다른 디바이스에 따라 다릅니다. 모든 디바이스 구성에 대한 자세한 내용은 WDK(Windows 드라이버 키트)의 디바이스별 설명서를 참조하세요.

다음 그림에서는 키보드 및 마우스 디바이스에 대해 가능한 두 가지 하드웨어 구성을 보여 줍니다.

  • 시스템 버스의 어딘가에 직접 연결된 각

  • 키보드 및 보조 디바이스 컨트롤러를 통해 모두 연결됨

키보드 및 마우스 하드웨어 구성을 보여 주는 다이어그램

다음 그림에서는 이전 그림에 표시된 디바이스에서 I/O 작업에 해당하는 계층화된 드라이버를 보여 줍니다.

키보드 및 마우스 드라이버 계층.

하드웨어 구성에 관계없이 키보드 및 마우스 디바이스의 드라이버는 시스템의 키보드 클래스 및 마우스 클래스 드라이버를 사용하여 하드웨어 독립적 작업을 처리할 수 있습니다. 각 클래스는 특정 디바이스 클래스 에 대해 시스템 필수이지만 하드웨어 독립적 지원을 제공하므로 클래스 드라이버라고 합니다.

해당 포트 드라이버는 각 물리적 디바이스에서 필요한 I/O 작업을 수행하기 위해 디바이스별 지원을 구현합니다. x86 기반 플랫폼용 시스템(i8042) 키보드 및 보조 디바이스 포트 드라이버는 마우스와 키보드 모두에 대한 디바이스별 작업을 관리합니다. 키보드 및 마우스 하드웨어 구성을 보여 주는 그림과 같이 각 디바이스가 별도로 연결된 하드웨어 구성에서 각 시스템 클래스 드라이버를 별도의 디바이스별 포트 드라이버 위에 계층화하거나 각 디바이스에 대한 단일 드라이버를 별도의 모놀리식(최하위 수준) 드라이버로 구현할 수 있습니다.

PnP 필터 드라이버와 같은 새 중간 드라이버를 키보드 및 마우스 드라이버 계층을 보여 주는 그림의 구성에 추가할 수 있습니다. 예를 들어 키보드 클래스 드라이버 위에 추가된 필터 드라이버는 I/O 서비스를 통해 요청된 하위 시스템에 전달하기 전에 플랫폼별 방식으로 키보드 입력을 필터링할 수 있습니다. 이러한 필터 드라이버는 키보드 클래스 드라이버와 동일한 IRP 및 IOCTL을 인식해야 합니다.