Freigeben über


WdmlibIoGetAffinityInterrupt-Funktion (iointex.h)

Die WdmlibIoGetAffinityInterrupt--Funktion ruft die Gruppenaffinität eines Interruptobjekts ab.

Syntax

NTSTATUS WdmlibIoGetAffinityInterrupt(
  [in]  PKINTERRUPT     InterruptObject,
  [out] PGROUP_AFFINITY GroupAffinity
);

Parameter

[in] InterruptObject

Ein Zeiger auf ein Interrupt-Objekt. Dieser Parameter verweist auf eine KINTERRUPT--Struktur, die eine Registrierung durch einen Treiber darstellt, um Geräteunterbrechungen zu empfangen. Die Struktur ist undurchsichtig. Der Aufrufer hat diesen Zeigerwert in einem vorherigen Aufruf an die WdmlibIoConnectInterruptEx oder IoConnectInterrupt Routine abgerufen.

[out] GroupAffinity

Ein Zeiger auf einen vom Aufrufer zugewiesenen Puffer, in den die Routine eine GROUP_AFFINITY Struktur schreibt, die die Gruppenaffinität des Interruptobjekts angibt, auf das InterruptObject verweist. Dieser Puffer muss groß genug sein, um die Struktur zu enthalten.

Rückgabewert

WdmlibIoGetAffinityInterrupt gibt STATUS_SUCCESS zurück, wenn der Aufruf erfolgreich ist. Mögliche Fehlerrückgabewerte sind:

Rückgabecode Beschreibung
STATUS_INVALID_PARAMETER
Der parameter InterruptObject verweist nicht auf ein gültiges Interruptobjekt.

Bemerkungen

Ein Kernelmodustreiber ruft diese Routine auf, um den Satz logischer Prozessoren abzurufen, auf dem die registrierte Interruptdienstroutine (ISR) des Treibers Geräteunterbrechungen empfangen kann. Dieser Satz von Prozessoren wird durch eine GROUP_AFFINITY Struktur beschrieben, die eine Gruppennummer und eine Affinitätsmaske angibt. Alle Prozessoren, die einer bestimmten ISR-Registrierung zugewiesen sind, müssen derselben Gruppe angehören.

Der Treiber registriert den ISR in einem vorherigen Aufruf an die WdmlibIoConnectInterruptEx oder IoConnectInterrupt Routine.

In Windows 7 WdmlibIoConnectInterruptEx und IoConnectInterrupt Geräteunterbrechungen nur logischen Prozessoren in Gruppe 0 zuweisen. Dies ist standardmäßig der Fall. Ein Treiber kann eine andere Interruptaffinität für sein Gerät in einer INF-Datei oder in seiner Antwort auf eine IRP_MN_FILTER_RESOURCE_REQUIREMENTS Anforderung angeben. Weitere Informationen zum Ändern der Interruptaffinität finden Sie in den unterstützenden Systeme mit mehr als 64 Prozessoren Whitepaper auf der WHDC-Website.

Anforderungen

Anforderung Wert
mindestens unterstützte Client- Verfügbar in Windows 7 und höheren Versionen von Windows.
Zielplattform- Fenster
Header- iointex.h (include Iointex.h, Wdm.h, Ntddk.h, Ntifs.h)
Library NtosKrnl.lib
DLL- NtosKrnl.exe
IRQL- Beliebige Ebene

Siehe auch

GROUP_AFFINITY

IRP_MN_FILTER_RESOURCE_REQUIREMENTS

IoConnectInterrupt-

KINTERRUPT-

WdmlibIoConnectInterruptEx