KeQueryMaximumProcessorCount 函数 (wdm.h)
KeQueryMaximumProcessorCount 例程返回最大处理器数。
语法
ULONG KeQueryMaximumProcessorCount();
返回值
KeQueryMaximumProcessorCount 将最大处理器数作为 ULONG 值返回。
注解
KeQueryMaximumProcessorCount 例程返回的值在运行时不会更改。
如果代码使用缓冲区数组(每个处理器有一个缓冲区),则必须决定是具有基于 KeQueryMaximumProcessorCount 的静态大小数组还是基于 KeQueryActiveProcessorCount 的动态大小数组。
若要根据处理器数进行优化,需要适用于 Windows Server 2008 的可调整大小结构。 在这种情况下,请使用 KeQueryActiveProcessorCount。
如果不进行优化,并且使用最大处理器计数生成的数据结构相对较小,则不需要调整大小的结构。 在这种情况下,请使用 KeQueryMaximumProcessorCount 来确定静态数组的大小。
Windows 7 及更高版本的 Windows 支持处理器组。 旨在处理处理器组相关信息的驱动程序应使用 KeQueryMaximumProcessorCountEx 例程(该例程指定处理器组),而不是 KeQueryMaximumProcessorCount,后者不指定。 但是,Windows 7 及更高版本中 KeQueryMaximumProcessorCount 的实现为不支持处理器组的早期 Windows 版本编写的驱动程序提供兼容性。 在此实现中, KeQueryMaximumProcessorCount 返回组 0 中可以的最大逻辑处理器数。
要求
要求 | 值 |
---|---|
最低受支持的客户端 | 在 Windows Vista 和更高版本的 Windows 中可用。 |
目标平台 | 通用 |
标头 | wdm.h (包括 Wdm.h、Ntddk.h) |
Library | NtosKrnl.lib |
DLL | NtosKrnl.exe |
IRQL | 任何级别 |