次の方法で共有


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 を含む)

関連項目

デバイス パフォーマンス状態管理の

PO_FX_COMPONENT_PERF_INFO

PoFxRegisterComponentPerfStates