클래스 함수 드라이버 모니터링
디바이스 노드는 연결된 모니터가 있는 디스플레이 어댑터의 각 비디오 출력을 나타내는 데 사용됩니다. 디바이스 노드는 디스플레이 어댑터 디바이스 노드의 자식입니다.
일반적으로 디바이스 스택에는 비디오 출력/모니터 쌍을 나타내는 디바이스 개체가 두 개뿐입니다.
- PDO(물리적 디바이스 개체)입니다.
- 기능 디바이스 개체(FDO)입니다.
경우에 따라 공급업체에서 제공하는 필터 드라이버와 연결된 DO(필터 디바이스 개체)가 있습니다. 이 필터 디바이스 개체는 FDO 위에 있습니다.
노트북 컴퓨터의 기본 제공 플랫 패널과 같은 통합 모니터의 경우 ACPI(고급 구성 및 전원 인터페이스) 드라이버와 연결된 필터 DO가 있을 수 있습니다. 이 필터 DO는 PDO 위에 있습니다.
다음 표에서는 연결된 모니터가 있는 비디오 출력에 대한 디바이스 스택을 보여줍니다.
디바이스 개체 | 필수/선택 | 드라이버 |
---|---|---|
DO 필터링 | 선택 사항( 일반적으로 필요하지 않음) | 모니터 공급업체에서 제공하는 필터 드라이버 |
FDO | Required | Microsoft에서 제공하는 클래스 함수 드라이버(Monitor.sys) 모니터링 |
DO 필터링 | 통합 ACPI 디스플레이 패널에만 필요 | Microsoft에서 제공하는 ACPI 드라이버(Acpi.sys) |
PDO | Required | 디스플레이 어댑터 공급업체에서 제공하는 버스 드라이버(디스플레이 미니포트/포트 쌍) |
사용자 모드 애플리케이션은 WMI를 사용하여 모니터 클래스 함수 드라이버의 서비스를 호출합니다. 이러한 서비스에는 모니터의 식별 데이터 노출이 포함됩니다. ACPI 디스플레이의 경우 서비스에는 디스플레이의 밝기 설정이 포함됩니다.
모니터는 식별 및 기능 정보를 EDID(확장 표시 식별 데이터) 구조에 저장합니다. EDID는 모니터와 호스트 간에 사용되는 통신 프로토콜과 관계없이 디스플레이에서 해당 ID 및 기능에 대한 정보를 호스트에 제공할 수 있는 메타데이터 형식입니다. FDO는 사용자 모드 애플리케이션의 요청을 처리하여 해당 모니터의 디바이스 스택에서 모니터의 EDID를 읽습니다. FDO가 모니터의 EDID를 검색하라는 요청을 수신하는 경우:
- FDO는 모니터의 디바이스 스택 아래쪽에 있는 PDO에 요청을 보냅니다.
- PDO는 DDC(디스플레이 데이터 채널) 프로토콜을 사용하여 모든 표준 모니터 케이블에 내장된 간단한 2선 버스인 I²C 버스를 통해 모니터의 EDID를 읽습니다.
별칭이 Dispmprt.h에 정의된 ACPI_METHOD_OUTPUT_DDC 메서드를 사용하여 EDID를 가져올 수 있습니다. 이 메서드는 EDID 데이터를 반환하기 위한 다른 표준 메커니즘이 없는 통합된LCD에 필요합니다.
디스플레이 어댑터와 모니터 간의 통신에 대한 자세한 내용은 디스플레이 어댑터의 I2C Bus 및 자식 디바이스를 참조하세요.
EDID 구조 및 DDC 프로토콜에 대한 자세한 내용은 VESA(Video Electronics Standards Association)에서 게시한 다음 표준을 참조하세요.
E-DDC(향상된 디스플레이 데이터 채널 표준)
E-EDID(Enhanced EDID Standard)
무료 표준 섹션의 vesa.org 이러한 표준을 다운로드할 수 있습니다 .
I²C 버스에 대한 자세한 내용은 필립스 반도체에서 게시한 I²C 버스 사양을 참조하세요.