次の方法で共有


サンプル デバイスとドライバー構成

このセクションでは、例としてキーボードとマウス デバイスを使用して、ハードウェア構成とドライバー構成の関係を示します。 構成は、他のデバイスによって異なります。 デバイス構成の詳細については、Windows Driver Kit (WDK) のデバイス固有のドキュメントを参照してください。

次の図は、キーボードとマウス デバイスで使用できる 2 つのハードウェア構成を示しています。

  • 各システム バス上のどこかに直接接続されている

  • キーボードと補助装置コントローラーを介して接続されている

diagram illustrating keyboard and mouse hardware configurations.

次の図は、前の図に示したデバイスでの I/O 操作に対応する階層化されたドライバーを示しています。

keyboard and mouse driver layers.

キーボードおよびマウス デバイスのドライバーは、ハードウェア構成に関係なく、システムのキーボード クラスとマウス クラス ドライバーを使用して、ハードウェアに依存しない操作を処理できることに注意してください。 これらをクラス ドライバーと呼びます。各ドライバーは、特定のクラスのシステムに必要であって、ただしハードウェアに依存しないサポートを提供するためです。

対応するポート ドライバーは、各物理デバイスで必要な I/O 操作を実行するデバイス固有のサポートを実装します。 システムの (i8042) キーボードと x86 ベースのプラットフォーム用の補助デバイス ポート ドライバーは、マウスとキーボードの両方のデバイス固有の操作を管理します。 キーボードとマウスのハードウェア構成を示す図に示すように、各デバイスが個別に接続されているハードウェア構成では、各システム クラス ドライバーを個別のデバイス固有のポート ドライバーに重ねて配置することも、デバイスごとに 1 つのドライバーを個別のモノリシック (最下位レベル) ドライバーとして実装することもできます。

PnP フィルター ドライバーなどの新しい中間ドライバーを、キーボードとマウス ドライバーのレイヤーを示す図の構成に追加できます。 たとえば、キーボード クラス ドライバーの上に追加されたフィルター ドライバーは、I/O サービスを介して要求したサブシステムに渡す前に、プラットフォーム固有の方法でキーボード入力をフィルター処理する場合があります。 このようなフィルター ドライバーは、キーボード クラス ドライバーと同じ IRP と IOCTL を認識する必要があります。