Freigeben über


KeGetCurrentProcessorNumber-Funktion (ntddk.h)

Die KeGetCurrentProcessorNumber Routine gibt die vom System zugewiesene Nummer des aktuellen Prozessors zurück, auf dem der Aufrufer ausgeführt wird.

Syntax

ULONG KeGetCurrentProcessorNumber();

Rückgabewert

KeGetCurrentProcessorNumber gibt einen ULONG-Wert zurück, der den Prozessor darstellt, auf dem der Aufrufer derzeit ausgeführt wird.

Bemerkungen

KeGetCurrentProcessorNumber kann aufgerufen werden, um die Drehungssperre auf SMP-Computern während der Treiberentwicklung zu debuggen. Ein Treiber kann auch KeGetCurrentProcessorNumber- aufrufen, wenn er einige Daten pro Prozessor verwaltet und versucht hat, die Cachezeilenverknügung zu reduzieren.

Die Anzahl der Prozessoren in einem SMP-Computer ist ein nullbasierter Wert.

Windows 7 und höhere Versionen von Windows unterstützen Prozessorgruppen. Treiber, die für die Verarbeitung von Informationen zu Prozessorgruppen konzipiert sind, sollten die KeGetCurrentProcessorNumberEx Routine verwenden, die eine Prozessorgruppe angibt, anstelle von KeGetCurrentProcessorNumber, was nicht. Die Implementierung von KeGetCurrentProcessorNumber- in Windows 7 und höheren Versionen von Windows bietet jedoch Kompatibilität für Treiber, die für frühere Versionen von Windows geschrieben wurden. In dieser Implementierung gibt KeGetCurrentProcessorNumber die gruppenrelative Prozessornummer zurück, wenn der Aufrufer auf einem Prozessor in Gruppe 0 ausgeführt wird, der mit dem Verhalten dieser Routine in früheren Versionen von Windows kompatibel ist, die keine Prozessorgruppen unterstützen. Wenn der Anrufer auf einem Prozessor in einer anderen Gruppe als Gruppe 0 ausgeführt wird, gibt diese Routine eine Zahl zurück, die kleiner als die Anzahl der Prozessoren in Gruppe 0 ist. Dieses Verhalten stellt sicher, dass der Rückgabewert kleiner als der Rückgabewert der KeQueryActiveProcessorCount Routine ist.

Wenn der Aufruf von KeGetCurrentProcessorNumber bei IRQL-<= APC_LEVEL erfolgt, kann ein Prozessorwechsel zwischen Anweisungen erfolgen. Folglich werden Aufrufer von KeGetCurrentProcessorNumber in der Regel bei IRQL >= DISPATCH_LEVEL ausgeführt.

Anforderungen

Anforderung Wert
mindestens unterstützte Client- Ab Windows 2000 verfügbar.
Zielplattform- Desktop
Header- ntddk.h (include Ntddk.h)
IRQL- Siehe Abschnitt "Hinweise".
DDI-Complianceregeln Irql_Miscellaneous_Function(ndis)

Siehe auch

KeGetCurrentProcessorNumberEx

KeQueryActiveProcessorCount