(miniport.h) PROCESSOR_NUMBER 结构

PROCESSOR_NUMBER结构按处理器的组号和组相对处理器编号来标识处理器。

语法

typedef struct _PROCESSOR_NUMBER {
  USHORT Group;
  UCHAR  Number;
  UCHAR  Reserved;
} PROCESSOR_NUMBER, *PPROCESSOR_NUMBER;

成员

Group

组编号。 如果多处理器系统包含 n 个 组,则组的编号从 0 到 n-1

Number

组相对处理器编号。 如果组包含 m 逻辑处理器,则处理器的编号从 0 到 m-1

Reserved

保留供将来使用。 初始化为零。

注解

Windows 7 是第一个支持处理器组的 Windows 版本。 在 Windows 7 中,只有 64 位版本的 Windows 支持多个组;32 位版本的 Windows 仅支持一个组。 如果多处理器系统运行的是 64 位版本的 Windows,并且包含的逻辑处理器不超过 64 个,则 Windows 会将所有处理器分配给组 0。 运行 32 位版本的 Windows 的多处理器系统可以包含不超过 32 个处理器。

在 Windows 7 中,多处理器系统中的最大组数为 4,但此值在 Windows 的未来版本中可能会更改。 确定 Windows 7 或更高版本中最大组数的最安全方法是调用 KeQueryMaximumGroupCount 例程。 如果用于计算最大组数的公式在 Windows 的未来版本中发生更改,则调用 KeQueryMaximumGroupCount 的内核模式驱动程序不需要代码更改。

使用 PROCESSOR_NUMBER 结构的内核模式例程包括 KeGetCurrentProcessorNumberExKeGetProcessorIndexFromNumberKeGetProcessorNumberFromIndexKeQueryLogicalProcessorRelationship

要求

要求
最低受支持的客户端 在 Windows 操作系统的 Windows 7 及更高版本中受支持。
标头 miniport.h (包括 Windows.h、Ntdef.h、Wdm.h、Ntddk.h、Winnt.h、Minitape.h)

另请参阅

KeGetCurrentProcessorNumberEx

KeGetProcessorIndexFromNumber

KeGetProcessorNumberFromIndex

KeQueryLogicalProcessorRelationship

KeQueryMaximumGroupCount