NetDmaRegisterProvider 函式 (netdma.h)
在 Windows 8 和更新版本中。
語法
NET_DMA_EXPORT NTSTATUS NetDmaRegisterProvider(
[in] PVOID ProviderContext,
[in] PVOID *pNetDmaProviderHandle,
[in] PNET_DMA_PROVIDER_CHARACTERISTICS ProviderCharacteristics
);
參數
[in] ProviderContext
驅動程式配置內容資訊的區塊指標,可儲存 DMA 提供者的相關信息。 NetDMA 會在後續呼叫需要 DMA 提供者內容的 ProviderXxx 函式中傳遞內容資訊。
[in] pNetDmaProviderHandle
值的指標,這個值是 NetDmaRegisterProvider 提供用來識別 DMA 提供者的句柄。 DMA 提供者驅動程式會將此句柄傳遞給需要提供者句柄的 NetDmaXxx 函式。
[in] ProviderCharacteristics
的指標 NET_DMA_PROVIDER_CHARACTERISTICS 定義 DMA 提供者特性的結構。
傳回值
NetDmaRegisterProvider 可以傳回下列其中一個值:
傳回碼 | Description |
---|---|
|
作業已成功完成。 |
|
作業失敗,因為資源不足。 |
|
作業因未指定的原因而失敗。 |
備註
DMA 提供者驅動程式會呼叫 NetDmaRegisterProvider 函 式來註冊 DMA 提供者。 DMA 提供者驅動程式在其 AddDevice 例程中呼叫 NetDmaRegisterProvider。
在 AddDevice 例程中,DMA 提供者驅動程式會呼叫 IoCreateDevice 函式來建立功能裝置物件, (FDO) ,並將它插入裝置堆疊頂端。 DMA 提供者驅動程序接著會呼叫 NetDmaRegisterProvider 來註冊相關聯的 DMA 提供者。
DMA 提供者驅動程式提供 NET_DMA_PROVIDER_CHARACTERISTICSNetDmaRegisterProvider的 ProviderCharacteristics 參數結構。 NET_DMA_PROVIDER_CHARACTERISTICS 結構會指定 NetDMA 提供者的特性,包括 ProviderXxx 函式的進入點。
DMA 提供者驅動程式會在 NetDmaRegisterProvider 的 ProviderContext 參數上,提供驅動程式配置內容資訊的區塊指標。 此內容區域會儲存 DMA 提供者的相關信息。 NetDMA 介面會在後續呼叫需要 DMA 提供者內容的 ProviderXxx 函式中傳遞內容資訊。
當 NetDmaRegisterProvider 傳回時,它會在 pNetDmaProviderHandle 參數指定的位置提供句柄。 NetDMA 介面會指派此句柄來識別 DMA 提供者。 DMA 提供者驅動程式會在與 DMA 提供者相關聯之 NetDmaXxx 函式的所有後續呼叫中使用這個句柄。
如果計算機支援 MSI-X,則 NetDMA 介面在 NetDmaRegisterProvider 函式的內容中,會呼叫 DMA 提供者驅動程式的 ProviderSetDmaChannelCpuAffinity 函式,可指定每個 DMA 通道中斷的 CPU 親和性。
如果計算機支援 MSI-X,DMA 提供者驅動程式可以在處理 時指定中斷親和性 IRP_MN_FILTER_RESOURCE_REQUIREMENTS Irp。 在 AddDevice 例程成功傳回之後,隨插即用 (PnP) 管理員會傳送 DMA 提供者的 IRP_MN_FILTER_RESOURCE_REQUIREMENTS IRP。 DMA 提供者驅動程式必須嘗試根據 NetDMA 介面傳遞給 ProviderSetDmaChannelCpuAffinity 的親和性參數來配置 MSI-X 中斷資源。
若要取消註冊 DMA 提供者,DMA 提供者驅動程式會呼叫 NetDmaDeregisterProvider 函 式。
規格需求
需求 | 值 |
---|---|
最低支援的用戶端 | Windows Vista 中 NetDMA 1.0 驅動程序支援。 |
目標平台 | Universal |
標頭 | netdma.h (包含 Netdma.h) |
IRQL | PASSIVE_LEVEL |
另請參閱
IRP_MN_FILTER_RESOURCE_REQUIREMENTS NET_DMA_PROVIDER_CHARACTERISTICS ProviderSetDmaChannelCpuAffinity意見反應
https://aka.ms/ContentUserFeedback。
即將登場:在 2024 年,我們將逐步淘汰 GitHub 問題作為內容的意見反應機制,並將它取代為新的意見反應系統。 如需詳細資訊,請參閱:提交並檢視相關的意見反應