KeQueryActiveGroupCount 函数 (wdm.h)
KeQueryActiveGroupCount 例程返回多处理器系统中活动处理器组的数目。
语法
USHORT KeQueryActiveGroupCount();
返回值
KeQueryActiveGroupCount 返回活动组的计数。
注解
如果处理器组包含一个或多个活动逻辑处理器,则为活动。
活动逻辑处理器是 Windows 已启动并添加到多处理器系统的逻辑处理器。 术语 “活动处理器 ”适用于可用于执行处理工作的处理器,无论处理器当前是正在执行处理工作还是处于空闲状态。 在某些系统中,从系统启动到关闭,活动处理器的数量可能保持不变。 在其他系统中,Windows 可能会在系统运行时动态添加活动处理器。 Windows 从不从系统中删除活动处理器。
因此,在系统启动和关闭之间,多处理器系统中的活动处理器数可能会增加,但此数字永远不会减少。 同样,如果在系统运行时将处理器动态添加到非活动组,则系统中的活动组数可能会增加。 活动组数永远不会减少。
相比之下, KeQueryMaximumGroupCount 返回的值在运行时保持不变。 此值是系统可以具有的最大组数。
调用 KeQueryActiveProcessorCountEx 例程以确定特定组中的活动逻辑处理器数。
Windows 7 是第一个支持处理器组的 Windows 版本。 在 Windows 7 中,只有 64 位版本的 Windows 支持多个组;32 位版本的 Windows 仅支持一个组。 如果多处理器系统运行的是 64 位版本的 Windows,并且包含的逻辑处理器不超过 64 个,则 Windows 会将所有处理器分配给组 0。 运行 32 位版本的 Windows 的多处理器系统包含的处理器不能超过 32 个。
要求
要求 | 值 |
---|---|
最低受支持的客户端 | 从 Windows 7 开始可用。 |
目标平台 | 通用 |
标头 | wdm.h (包括 Ntddk.h、Wdm.h、Ntddk.h) |
Library | NtosKrnl.lib |
DLL | NtosKrnl.exe |
IRQL | 任何级别 |