PROCESSOR_NUMBER结构(miniport.h)
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 结构的内核模式例程包括 KeGetCurrentProcessorNumberEx、KeGetProcessorIndexFromNumber、KeGetProcessorNumberFromIndex和 KeQueryLogicalProcessorRelationship。
要求
要求 | 价值 |
---|---|
最低支持的客户端 | 在 Windows 7 及更高版本的 Windows作系统中受支持。 |
标头 | miniport.h(包括 Windows.h、Ntdef.h、Wdm.h、Ntddk.h、Winnt.h、Minitape.h) |