WdmlibIoGetAffinityInterrupt 函式 (iointex.h)
WdmlibIoGetAffinityInterrupt 函式會取得中斷物件的群組親和性。
語法
NTSTATUS WdmlibIoGetAffinityInterrupt(
[in] PKINTERRUPT InterruptObject,
[out] PGROUP_AFFINITY GroupAffinity
);
參數
[in] InterruptObject
中斷物件的指標。 此參數指向 KINTERRUPT 結構,表示驅動程式接收裝置中斷的註冊。 結構不透明。 呼叫端在先前呼叫 WdmlibIoConnectInterruptEx 或 IoConnectInterrupt 例程中取得這個指標值。
[out] GroupAffinity
呼叫端配置緩衝區的指標,例程會寫入 GROUP_AFFINITY 結構,指定 InterruptObject 指向之中斷物件的群組親和性。 這個緩衝區必須夠大,才能包含 結構。
傳回值
如果呼叫成功,WdmlibIoGetAffinityInterrupt 會傳回STATUS_SUCCESS。 可能的錯誤傳回值包括:
傳回碼 | Description |
---|---|
|
InterruptObject 參數不會指向有效的中斷物件。 |
備註
內核模式驅動程式會呼叫此例程,以取得驅動程式註冊中斷服務例程的一組邏輯處理器, (ISR) 可以接收裝置中斷。 這個處理器集是由 GROUP_AFFINITY 結構所描述,該結構會指定組號和親和性遮罩。 指派給特定ISR註冊的所有處理器都必須屬於相同的群組。
驅動程式已在先前呼叫 WdmlibIoConnectInterruptEx 或 IoConnectInterrupt 例程中註冊 ISR。
在 Windows 7 中, WdmlibIoConnectInterruptEx 和 IoConnectInterrupt 只會將裝置中斷指派給群組 0 中的邏輯處理器。 這是預設的結果。 驅動程式可以在 INF 檔案中指定其裝置的不同中斷親和性,或指定其回應 IRP_MN_FILTER_RESOURCE_REQUIREMENTS 要求。 如需如何變更插斷親和性的詳細資訊,請參閱 WHDC 網站上 有超過 64 個處理器白皮書的支持系統 。
規格需求
需求 | 值 |
---|---|
最低支援的用戶端 | 適用於 Windows 7 和更新版本的 Windows。 |
目標平台 | Windows |
標頭 | iointex.h (包括 Iointex.h、Wdm.h、Ntddk.h、Ntifs.h) |
程式庫 | NtosKrnl.lib |
Dll | NtosKrnl.exe |
IRQL | 任何層級 |