KeQueryMaximumProcessorCountEx 函式 (ntddk.h)
KeQueryMaximumProcessorCountEx 例程會傳回多處理器系統中指定群組中的邏輯處理器數目上限。
語法
ULONG KeQueryMaximumProcessorCountEx(
[in] USHORT GroupNumber
);
參數
[in] GroupNumber
指定群組編號。 如果多處理器系統包含 n 個群組,則會將群組編號為 0 到 n-1。 若要取得系統中的最大處理器數目,請將此參數設定為 ALL_PROCESSOR_GROUPS,這是在 Winnt.h 和 Ntdef.h 頭檔中定義的。
傳回值
KeQueryMaximumProcessorCountEx 會傳回指定群組或系統中邏輯處理器的最大數目,如 GroupNumber 參數的值所指示。
備註
KeQueryMaximumProcessorCountEx 傳回的值會在運行時間維持不變。 此值取決於多處理器系統的硬體組態,但永遠不能超過 Windows 作業系統所設定的固定限制。 此限制為32位版本的Windows和64位版本的Windows64邏輯處理器32個邏輯處理器。
相反地, KeQueryActiveProcessorCountEx 例程所傳回的值可以在運行時間期間變更,因為處理器會動態新增至系統。
相關的例程 KeQueryMaximumProcessorCount 會傳回處理器計數上限,但此例程與 KeQueryMaximumProcessorCountEx 不同,不接受群組編號做為輸入參數。 在 Windows 7 和更新版本的 Windows 作業系統中, KeQueryMaximumProcessorCount 會傳回群組 0 中邏輯處理器的最大數目,這與舊版 Windows 中不支援群組的這個例程行為相容。 此行為可確保呼叫 KeQueryMaximumProcessorCount 且不使用任何群組導向功能的現有驅動程式會在具有兩個或多個群組的多處理器系統中正確執行。 不過,在 Windows 7 和更新版本的 Windows 作業系統中使用任何群組導向功能的驅動程式應該呼叫 KeQueryMaximumProcessorCountEx ,而不是 KeQueryMaximumProcessorCount。
規格需求
需求 | 值 |
---|---|
最低支援的用戶端 | 適用於 Windows 7 和更新版本的 Windows。 |
目標平台 | Universal |
標頭 | ntddk.h (包含 Wdm.h、Ntddk.h、Ntifs.h) |
程式庫 | NtosKrnl.lib |
Dll | NtosKrnl.exe |
IRQL | 任何層級 |