カーネル ストリーミング サービスは、ストリーミング データのカーネル モード処理をサポートします。 このモデルでは、ストリーミング データは、フィルターと呼ばれるブロックにグループ化された一連のノードを通過します。 各フィルターは、データに対して実行される処理タスクをカプセル化します。 KS フィルターは、カーネル モードのDRIVER_OBJECTとして実装されます。
KS フィルターは、ユーザー モードで DirectShow フィルターとしてプロキシを介して表示されます。 そのため、グラフ ビルダーとユーザー モード アプリケーションは KS フィルターと対話できます。 アクティブなグラフでは、カーネル モード コンポーネントは引き続き直接通信するため、ユーザー モードとカーネル モードの間のリソース消費の遷移はなくなります。
データは、ピンと呼ばれる接続ポイントでフィルターに流れ込み、またはフィルターから流れ出ます。 ピン インスタンスは、デジタル オーディオなどのデータ ストリームをレンダリングまたはキャプチャします。
フィルター グラフは、接続されたフィルターのグループです。 フィルター グラフは、ストリームで実行される複数の処理タスクをリンクします。 Microsoft Windows Driver Kit (WDK) の GraphEdit ツールを使用して、さまざまな フィルター グラフ構成 をテストできます。 詳細については、 フィルター グラフ エディター ツール の Web サイトを参照してください。
オンボード クロックをサポートするドライバー は、クロック をファイル オブジェクトとして公開します。 ミニドライバーは 、クロック時間のクエリを実行したり、クロックが特定の時刻に達したときに 通知を受 け取ったりすることもできます。
カスタム メモリ管理インターフェイスをサポートするミニドライバーは、このインターフェイスを アロケーターと呼ばれるファイル オブジェクトとして公開します。 たとえば、オンボード メモリを処理するデバイス マネージャーは、このようなインターフェイスを公開する可能性があります。 ミニドライバーは、関連するファイル オブジェクトを使用してメモリの割り当てと割り当てを解除できます。
このセクションには、次のトピックに関する追加情報が含まれています。