ACPI デバイスのサポート
このセクションでは、ベンダーが Windows の WDM ファンクション ドライバーを使用して、Advanced Configuration and Power Interface (ACPI) デバイスの機能を強化する方法について説明します。
ACPI デバイスには、バッテリ、温度ゾーン、システムの ACPI 名前空間で定義されているその他のデバイスなど、低レベルのシステム デバイスが含まれます。 ACPI 名前空間は、ACPI BIOS がオブジェクトの参照に使用する階層型名前空間です。
システムが提供する ACPI ドライバー と ACPI BIOS を組み合わせた操作は、ACPI デバイスの基本的な機能をサポートし、オペレーティング システムの他の部分に対して透過的です。 ACPI デバイスは、ACPI システム記述テーブルの定義ブロックによって指定されます。 デバイスの定義ブロックは、特に、デバイス データへのアクセスに使用されるデバイス メモリの連続したブロックを指定する操作領域を指定します。
ACPI デバイスの機能を強化するために、ベンダーは WDM ファンクション ドライバーを提供できます。WDM ファンクション ドライバーは、ドライバーによって提供される操作領域を介して ACPI BIOS と通信します。 ACPI ドライバーは、ファンクション ドライバーによって提供される操作領域ハンドラーを呼び出すことによって、操作領域にアクセスします。
ACPI 操作領域を介して通信することで、ファンクション ドライバーは、通常は BIOS によってのみ制御されるデバイスに間接的にアクセスでき、BIOS はドライバーとホスト システムの構成に依存するデバイス固有の操作を呼び出すことができます。 基本的な動作メカニズムは次のとおりです。
ACPI BIOS は、デバイスの操作領域のデータを読み取りまたは書き込みます。
操作領域にアクセスするには、ACPI ドライバーは、ファンクション ドライバーの操作領域ハンドラーを呼び出します。
操作領域ハンドラーは、アクセスに対してプログラムされたアクションを実行し、アクセスに関連付けられている情報を返します。
次の 2 つの例は、ベンダーがファンクション ドライバーを使用して ACPI デバイスの機能を強化する方法を示しています。
ACPI デバイスは、ファンクション ドライバーの操作領域のインデックスにアクセスでき、それによってドライバーがベンダーのプレインストールされているソフトウェアでサウンド カード ボリューム制御を有効にできます。
ドライバーは、バッテリの残存容量、温度ゾーンの温度、および通常は BIOS のみアクセス可能なその他のものを監視します。
次のトピックでは、ACPI デバイスのファンクション ドライバーを提供する方法について説明します。
ACPI デバイス関数ドライバーをサポートするシステム提供のサポート ルーチンの詳細については、「ACPI 操作領域ハンドラー リファレンス」を参照してください。
ACPI デバイスと名前空間の詳細については、Advanced Configuration and Power Interface (ACPI) 仕様を参照してください。