ドライバーの電源管理の責任

電源管理をサポートするドライバーは、次の役割を担います。

PnP 列挙中のデバイスの電源機能を報告します。

電源管理用のデバイス オブジェクト フラグの設定

電源 マネージャーまたはドライバーから送信された電源 IRP の処理。

システムの起動時またはアイドル状態のシャットダウン後、必要に応じてすぐにデバイスの電源をオンにします。

システムのシャットダウン時にデバイスの電源を切るか、アイドル時にスリープ状態にします。

デバイスがウェイクアップ機能をサポートしている場合は、デバイスのウェイクアップを有効にします。

デバイスのパフォーマンス状態を管理する (デバイスで電力消費量を削減するためのパフォーマンスまたは機能の削減がサポートされている場合)。

すべてのデバイス スタックのすべてのドライバーが、これらのタスクをすべて実行するわけではありません。 通常、バス ドライバーは機能を報告し、フラグを設定し、物理デバイスを操作します。デバイス電源ポリシー マネージャー (通常はファンクション ドライバー) は、デバイスをスリープ状態にしてウェイクアップを有効にする要求を発行します。

いくつかの例外を除き、ドライバーはデバイスの電源をオンにして電源をオフにし、電源 IRP(つまり主要なコードが IRP_MJ_POWERされた IRP) に応答してデバイスをウェイクアップできるようにします。 電源 IRP は、電源マネージャーによって、場合によってはドライバーによって送信できます。