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 Interruptobjekt. Dieser Parameter verweist auf eine KINTERRUPT-Struktur , die eine Registrierung durch einen Treiber zum Empfangen von Geräteunterbrechungen darstellt. Die Struktur ist undurchsichtig. Der Aufrufer hat diesen Zeigerwert in einem vorherigen Aufruf der 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 |
---|---|
|
Der InterruptObject-Parameter zeigt nicht auf ein gültiges Interruptobjekt. |
Hinweise
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 hat den ISR in einem vorherigen Aufruf der WdmlibIoConnectInterruptEx - oder IoConnectInterrupt-Routine registriert.
In Windows 7 weisen WdmlibIoConnectInterruptEx und IoConnectInterrupt Geräteunterbrechungen nur logischen Prozessoren in Gruppe 0 zu. Dies ist die Standardeinstellung. 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 im Whitepaper Unterstützende Systeme mit mehr als 64 Prozessoren auf der WHDC-Website.
Anforderungen
Anforderung | Wert |
---|---|
Unterstützte Mindestversion (Client) | Verfügbar in Windows 7 und späteren Windows-Versionen. |
Zielplattform | Windows |
Kopfzeile | iointex.h (einschließlich Iointex.h, Wdm.h, Ntddk.h, Ntifs.h) |
Bibliothek | NtosKrnl.lib |
DLL | NtosKrnl.exe |
IRQL | Beliebige Ebene |