共用方式為


KeGetCurrentProcessorNumber 函式 (ntddk.h)

KeGetCurrentProcessorNumber 例程會傳回呼叫者執行所在的目前處理器系統指派號碼。

語法

ULONG KeGetCurrentProcessorNumber();

傳回值

KeGetCurrentProcessorNumber 會傳回 ULONG 值,代表呼叫端目前正在執行的處理器。

言論

可以呼叫KeGetCurrentProcessorNumber,在驅動程式開發期間偵錯 SMP 機器上的微調鎖定使用量。 如果驅動程式維護一些每個處理器的數據,並嘗試減少快取行爭用,則驅動程式也可以呼叫 KeGetCurrentProcessorNumber

SMP 機器中的處理器數目是以零起始的值。

Windows 7 和更新版本的 Windows 支援處理器群組。 設計來處理處理器群組相關信息的驅動程式應該使用 KeGetCurrentProcessorNumberEx 例程,指定處理器群組,而不是 KeGetCurrentProcessorNumber,但不會。 不過,在 Windows 7 和更新版本中實作 KeGetCurrentProcessorNumber,可為針對舊版 Windows 所撰寫的驅動程式提供相容性。 在此實作中,KeGetCurrentProcessorNumber 如果呼叫端在群組 0 中的處理器上執行,則會傳回群組相對處理器號碼,這與舊版 Windows 不支持處理器群組的這個例程行為相容。 如果呼叫端在群組 0 以外的任何群組的處理器上執行,此例程會傳回小於群組 0 中處理器數目的數位。 此行為可確保傳回值小於 KeQueryActiveProcessorCount 例程的傳回值。

如果呼叫 KeGetCurrentProcessorNumber 發生在 IRQL <= APC_LEVEL,則處理器參數可以在指令之間發生。 因此,KeGetCurrentProcessorNumber 的呼叫者通常會在 IRQL >= DISPATCH_LEVEL 執行。

要求

要求 價值
最低支援的用戶端 從 Windows 2000 開始提供。
目標平臺 桌面
標頭 ntddk.h (包括 Ntddk.h)
IRQL 請參閱一節。
DDI 合規性規則 Irql_Miscellaneous_Function(ndis)

另請參閱

KeGetCurrentProcessorNumberEx

KeQueryActiveProcessorCount