モニター クラスの関数ドライバー
モニターが接続されているディスプレイ アダプター上の各ビデオ出力は、ディスプレイ アダプターのデバイス ノードの子であるデバイス ノードで表されます。
通常、(ビデオ出力とモニターの) ペアを表すデバイス スタックには、物理デバイス オブジェクト (PDO) と機能デバイス オブジェクト (FDO) の 2 つのデバイス オブジェクトしかありません。 場合によっては、ベンダーが提供するフィルター ドライバーに関連付けられるフィルター DO が、FDO の上に存在することがあります。 ノート PC 組み込みのフラット パネルなどの統合型モニターの場合、ACPI (Advanced Configuration and Power Interface) ドライバーに関連付けられたフィルター DO が、PDO の上に存在する可能性があります。
次の表は、モニターが接続されているビデオ出力のデバイス スタックをまとめたものです。
Device オブジェクト | 必須/任意 | Driver |
---|---|---|
フィルター DO |
オプション (通常は不要) |
モニター ベンダーによって提供されるフィルター ドライバー |
FD0 |
必須 |
Microsoft が提供するモニター クラス ファンクション ドライバー (Monitor.sys) |
フィルター DO |
統合型 ACPI ディスプレイ パネルのみで必要 |
Microsoft が提供する ACPI ドライバー (Acpi.sys) |
PDO |
必須 |
ディスプレイ アダプター ベンダーによって提供されるバス ドライバー (ディスプレイ ミニポート/ポート ペア) |
ユーザー モード アプリケーションは、WMI を使用して、モニター クラス ファンクション ドライバーのサービスを呼び出します。 これらのサービスには、モニターの識別データを公開するものや、(ACPI ディスプレイの場合) ディスプレイの明るさを設定するものなどがあります。
モニターは、自身の識別情報と機能情報を EDID (Extended Display Identification Data) 構造に格納します。この形式により、ディスプレイは、モニターとホストの間で使用される通信プロトコルとは無関係に、自身の ID と機能に関する情報をホストに提供できます。 ユーザー モード アプリケーションからのモニターの EDID 読み取り要求は、そのモニターのデバイス スタックのファンクション ドライバー (Monitor.sys) によって処理されます。 モニター ファンクション ドライバーは、モニターの EDID を取得するための要求を受信すると、モニターのデバイス スタックの下部にある物理デバイス オブジェクト (PDO) によって表されるディスプレイ ポート/ミニポート ドライバーのペアに要求を送信します。 ディスプレイ ポート/ミニポート ドライバーのペアは、DDC (Display Data Channel) プロトコルを使用して、すべての標準モニター ケーブルに組み込まれた単純な 2 線式バスである I²C バス経由でモニターの EDID を読み取ります。
EDID は、エイリアスが Dispmprt.h で定義されている ACPI_METHOD_OUTPUT_DDC メソッドを使用して取得できます。 このメソッドは、EDID データを返す別の標準メカニズムがない統合型 LCD では必須です。
ディスプレイ アダプターとモニター間の通信の詳細については、以下のトピックを参照してください。
EDID 構造と DDC プロトコルの詳細については、ビデオ エレクトロニクス標準協会 (VESA) が公開している以下の標準を参照してください。
Enhanced Display Data Channel Standard (E-DDC)
Enhanced EDID Standard (E-EDID)
これらの標準は、「無料標準」セクションの vesa.org からダウンロードできます。
I²C バスの詳細については、Philips Semiconductors が発行する I²C バス仕様を参照してください。
フィードバック
https://aka.ms/ContentUserFeedback」を参照してください。
以下は間もなく提供いたします。2024 年を通じて、コンテンツのフィードバック メカニズムとして GitHub の issue を段階的に廃止し、新しいフィードバック システムに置き換えます。 詳細については、「フィードバックの送信と表示