Go to main content
Oracle® Solaris 11.3 デバイスドライバの記述

印刷ビューの終了

更新: 2016 年 11 月
 
 

電源管理インタフェースの変更点

Solaris 8 よりも前のリリースでは、デバイスの電源管理は自動ではありませんでした。電源を管理するデバイスごとに、開発者が /etc/power.conf にエントリを追加する必要がありました。フレームワークでは、すべてのデバイスが 2 つの電源レベル (0 および標準電力) のみをサポートすることを想定していました。

電源では、他のすべての部品が暗示的に部品 0 に依存することを想定していました。コンポーネント 0 がレベル 0 に変化すると、DDI_PM_SUSPEND コマンドを指定してドライバの detach(9E) が呼び出され、ハードウェアの状態を保存していました。部品 0 がレベル 0 から変化すると、DDI_PM_RESUME コマンドを指定して attach(9E) ルーチンが呼び出され、ハードウェアの状態を復元していました。

次のインタフェースおよびコマンドは廃止済みですが、バイナリ目的のために引き続きサポートされています。

  • ddi_dev_is_needed(9F)

  • pm_create_components(9F)

  • pm_destroy_components(9F)

  • pm_get_normal_power(9F)

  • pm_set_normal_power(9F)

  • DDI_PM_SUSPEND

  • DDI_PM_RESUME

Solaris 8 リリース以降、autopm が有効な場合、pm-components プロパティーをエクスポートするデバイスは自動的に電源管理を使用します。

現在のフレームワークは、pm-components プロパティーに基づいて、各デバイスがサポートする電源レベルを認識します。

フレームワークでは、デバイスのさまざまな部品間の依存関係についての想定を行いません。電源レベルが変化したときに、必要に応じてハードウェアの状態を保存および復元する処理はデバイスドライバが担います。

これらの変更により、電源管理フレームワークで最新のデバイス技術に対応できるようになっています。現在の電源管理は、電力の節減効果が大幅に向上しています。電力を節減可能なデバイスをフレームワークで自動検出できます。フレームワークはデバイスの中間的な電源状態を使用できます。システム全体の電源を切らなくても、また何らかの機能を使用しなくても、システムでエネルギー消費目標を達成できます。

表 14  電源管理インタフェース
削除されたインタフェース
代替インタフェース
pm_create_components(9F)
pm_set_normal_power(9F)
pm_destroy_components(9F)
なし
pm_get_normal_power(9F)
なし
ddi_dev_is_needed(9F)
なし
なし
DDI_PM_SUSPEND
なし
DDI_PM_RESUME
なし