Nota
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare ad accedere o modificare le directory.
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare a modificare le directory.
La funzione WdmlibIoGetAffinityInterrupt ottiene l'affinità di gruppo di un oggetto interrupt.
Sintassi
NTSTATUS WdmlibIoGetAffinityInterrupt(
[in] PKINTERRUPT InterruptObject,
[out] PGROUP_AFFINITY GroupAffinity
);
Parametri
[in] InterruptObject
Puntatore a un oggetto interrupt. Questo parametro punta a una struttura KINTERRUPT che rappresenta una registrazione da parte di un driver per ricevere gli interrupt del dispositivo. La struttura è opaca. Il chiamante ha ottenuto questo valore del puntatore in una chiamata precedente alla routine WdmlibIoConnectInterruptEx o IoConnectInterrupt.
[out] GroupAffinity
Puntatore a un buffer allocato dal chiamante in cui la routine scrive una struttura GROUP_AFFINITY che specifica l'affinità di gruppo dell'oggetto interrupt a cui interruptObject punta. Questo buffer deve essere sufficientemente grande da contenere la struttura.
Valore restituito
WdmlibIoGetAffinityInterrupt restituisce STATUS_SUCCESS se la chiamata ha esito positivo. I possibili valori restituiti dall'errore includono quanto segue:
Codice restituito | Descrizione |
---|---|
|
Il parametro InterruptObject non punta a un oggetto interrupt valido. |
Osservazioni
Un driver in modalità kernel chiama questa routine per ottenere il set di processori logici in cui la routine del servizio interrupt registrato del driver (ISR) può ricevere interrupt del dispositivo. Questo set di processori è descritto da una struttura GROUP_AFFINITY, che specifica un numero di gruppo e una maschera di affinità. Tutti i processori assegnati a una particolare registrazione ISR devono appartenere allo stesso gruppo.
Il driver ha registrato l'ISR in una chiamata precedente alla routine WdmlibIoConnectInterruptEx o IoConnectInterrupt.
In Windows 7 WdmlibIoConnectInterruptEx e IoConnectInterrupt assegnare interrupt del dispositivo solo ai processori logici nel gruppo 0. Questa opzione è per impostazione predefinita. Un driver può specificare un'affinità di interruzione diversa per il dispositivo in un file INF o nella risposta a una richiesta di IRP_MN_FILTER_RESOURCE_REQUIREMENTS. Per altre informazioni su come modificare l'affinità di interruzione, vedere il white paper Support Systems that have More Than 64 Processors white paper (Sistemi di supporto di con più di 64 processori sul sito Web WHDC).
Fabbisogno
Requisito | Valore |
---|---|
client minimo supportato | Disponibile in Windows 7 e versioni successive di Windows. |
piattaforma di destinazione | Finestre |
intestazione | iointex.h (include Iointex.h, Wdm.h, Ntddk.h, Ntifs.h) |
libreria | NtosKrnl.lib |
dll | NtosKrnl.exe |
IRQL | Qualsiasi livello |