Microsoft が提供するクラスドライバは、ベンダが書いたミニドライバとオペレーティングシステムとの間に簡単なインターフェイスを提供するように設計された中間ドライバです。 ミニドライバーは、Microsoft が提供するクラス ドライバーを使用して関数呼び出しを通じてほとんどのアクションを実行し、デバイス固有のコントロールのみを提供するハードウェア固有の DLL です。
WDM では、ミニドライバーは、関連付けられているハードウェア アダプターをクラス ドライバーに登録し、クラス ドライバーは、登録する各アダプターを表すファイル オブジェクトを作成します。 ミニドライバーは、クラス ドライバーのデバイス オブジェクトを使用してシステム呼び出しを実行します。 クラス ドライバーは、WDM ストリーミングを通じてユーザー モード クライアントによってアクセスされます。
クラス ドライバーとミニドライバーの間の相互作用は次のとおりです。
ミニドライバーはデバイス オブジェクトを作成しませんが、必要に応じてクラス ドライバーのデバイス オブジェクトを共有します。 これにより、システムリソースを節約できます。
アダプターごとに作成されるデバイス オブジェクトは 1 つだけです。 アダプターでサポートされている複数のサブデバイス (ストリームと呼ばれます) は、WDM ストリーミング ピンによって表されます。