PO_FX_COMPONENT_PERF_SET構造体 (wdm.h)
PO_FX_COMPONENT_PERF_SET 構造体は、デバイス内の 1 つのコンポーネントのパフォーマンス状態のセットを表します。
構文
typedef struct _PO_FX_COMPONENT_PERF_SET {
UNICODE_STRING Name;
ULONGLONG Flags;
PO_FX_PERF_STATE_UNIT Unit;
PO_FX_PERF_STATE_TYPE Type;
union {
struct {
ULONG Count;
PPO_FX_PERF_STATE States;
} Discrete;
struct {
ULONGLONG Minimum;
ULONGLONG Maximum;
} Range;
};
} PO_FX_COMPONENT_PERF_SET, *PPO_FX_COMPONENT_PERF_SET;
メンバーズ
Name
パフォーマンス状態セットによって制御されるコンポーネント プロパティを記述するために使用される省略可能な文字列。 たとえば、"クロック周波数" や "メモリ帯域幅" などです。
Flags
0 に設定します。 現在、このメンバーにはフラグは定義されていません。
Unit
パフォーマンス状態セットによって制御される単位の種類を指定する PO_FX_PERF_STATE_UNIT 値。
Type
セット内のパフォーマンス状態の種類を指定する PO_FX_PERF_STATE_TYPE 値 (状態の不連続数または最小値と最大値の間の状態の連続分布)。
Discrete
個別の数のパフォーマンス状態を表すセットの場合 (つまり、Type メンバーが PoFxPerfStateTypeDiscrete 場合)、この入れ子になった構造体は状態を記述します。
Discrete.Count
セット内のパフォーマンス状態の数。
Discrete.States
PO_FX_PERF_STATE 配列へのポインター。 この配列の長さは、Count メンバーによって指定されます。 各配列要素は、セット内の 1 つの電源状態を記述します。
Range
パフォーマンス状態の継続的な分布を表すセット (つまり、Type メンバーが PoFxPerfStateTypeRange ) の場合、この入れ子になった構造体は、パフォーマンス状態の範囲の最小値と最大値を記述します。
Range.Minimum
パフォーマンス状態の最小値。
Range.Maximum
パフォーマンス状態の最大値。
備考
デバイス ドライバーは、PoFxRegisterComponentPerfStates ルーチンを呼び出して、電源管理フレームワーク (PoFx) でパフォーマンス状態サポート用のコンポーネントを登録する場合、ドライバーは、コンポーネントでサポートされるパフォーマンス状態のセットを記述する PO_FX_COMPONENT_PERF_INFO 構造体を提供できます。 PO_FX_COMPONENT_PERF_INFO 構造体の PerfStateSets メンバーには、サポートされているパフォーマンス状態を表す PO_FX_COMPONENT_PERF_SET 構造体の配列が含まれています。
ほとんどのドライバーでは、コンポーネントごとに 1 つのパフォーマンス状態のセットを定義することが期待されます。 たとえば、ドライバーは、コンポーネントのクロック周波数を制御するパフォーマンス状態の 1 つのセットを定義できます。 ただし、一部のドライバーでは、コンポーネントのパフォーマンス状態の複数のディメンションを制御するために、複数のパフォーマンス状態セットを定義する必要があります。 たとえば、ドライバーは、クロック周波数とバス帯域幅を制御するパフォーマンス状態の 2 つのセットを定義できます。
必要条件
要件 | 価値 |
---|---|
サポートされる最小クライアント | Windows 10 以降でサポートされています。 |
ヘッダー | wdm.h (Wudfwdm.h を含む) |
関連項目
PoFxRegisterComponentPerfStates の