PEP_PROCESSOR_IDLE_STATE结构 (pep_x.h)

PEP_PROCESSOR_IDLE_STATE 结构描述处理器空闲状态的功能。

语法

typedef struct _PEP_PROCESSOR_IDLE_STATE {
  union {
    ULONG Ulong;
    struct {
      ULONG Interruptible : 1;
      ULONG CacheCoherent : 1;
      ULONG ThreadContextRetained : 1;
      ULONG CStateType : 4;
      ULONG Reserved : 25;
    };
  };
} PEP_PROCESSOR_IDLE_STATE, *PPEP_PROCESSOR_IDLE_STATE;

成员

Ulong

将访问的位和状态字段标记为单个 32 位无符号整数值。

Interruptible

处于此空闲状态时,处理器是否可以响应中断。 如果处理器可以响应中断,请将此标志位设置为 1;如果无法响应,请将此标志位设置为 0。

CacheCoherent

处理器的本地缓存还是缓存在此处理器空闲状态的持续时间内保持一致。 如果缓存一致性保持在此空闲状态,请将此标志位设置为 1;否则,请将此标志位设置为 0。

ThreadContextRetained

线程上下文是否保留在此处理器空闲状态。 如果处理器硬件在整个空闲转换中保留线程上下文,请将此标志位设置为 1。 如果处理器使用多处理器停车协议退出空闲状态并将控制权返回给操作系统,则设置为 0。 有关此协议的详细信息,请参阅 ACPI 组件体系结构站点上标题为 ARM 平台的多处理器启动文档。

CStateType

处理器空闲状态的 C 状态类型。 如果此空闲状态与 ACPI 定义的 C 状态不对应,请将此位字段设置为零。 否则,请将此位字段设置为 C 状态编号。 也就是说,为 C1 设置 CStateType = 1,为 C2 设置 CStateType = 2,依此。 有关 C 状态的详细信息,请参阅 ACPI 5.0 规范的第 8.1,处理器电源状态

Reserved

保留供将来使用。

注解

未命名的联合包含标志位和状态字段的集合,这些字段可以作为位字段单独访问,也可以一起作为 32 位无符号整数值进行访问。

未命名的结构包含作为单个位字段访问的标志位和状态字段。

PEP_PPM_QUERY_IDLE_STATES 结构的 IdleStates 成员是PEP_PROCESSOR_IDLE_STATE结构数组中的第一个元素。

要求

要求
最低受支持的客户端 从 Windows 10 开始支持。
标头 pep_x.h (包括 Pepfx.h)

另请参阅