私はドライバー開発の初心者です。基本的な質問があります。
WDM デバイス ドライバーの記述では、IoBuildDeviceIoControlRequest / IoBuildSynchronousFsdRequestを呼び出して、別のターゲット ドライバーに渡す同期 IRP を割り当てることができます。基本的な要件の 1 つは、これらの関数を呼び出す前に イベントオブジェクトを割り当てる必要があることです。また、ターゲット ドライバーが IRP を完了するまでに、このイベント オブジェクトがまだ使用可能であることを確認する必要があります。
IoBuildDeviceIoControlRequest/ IoBuildSynchronousFsdRequestを呼び出す関数のローカル スコープからそのイベント オブジェクトを本当に割り当てることができるでしょうか。つまり、非ページ プールからではなく、カーネル スタックからです。サンプル コードの多くは、イベント オブジェクトをローカル スコープ、つまりカーネル スタックから割り当てるだけです。しかし、ターゲット ドライバーがまだ IRP を処理している間に、呼び出し元のドライバーがページ アウトされた場合、実際に問題が発生するでしょうか?