DMA_TRANSFER_INFO_V1 結構 (wdm.h)

DMA_TRANSFER_INFO_V1 結構包含散佈/收集清單的配置需求,描述 DMA 傳輸的 I/O 數據緩衝區。

語法

typedef struct _DMA_TRANSFER_INFO_V1 {
  ULONG MapRegisterCount;
  ULONG ScatterGatherElementCount;
  ULONG ScatterGatherListSize;
} DMA_TRANSFER_INFO_V1, *PDMA_TRANSFER_INFO_V1;

成員

MapRegisterCount

將散佈/收集清單中所有實體位址轉譯為邏輯位址所需的對應緩存器數目。

ScatterGatherElementCount

散佈圖/收集清單中的散佈/收集元素數目。 每個元素都是類型 SCATTER_GATHER_ELEMENT的結構。

ScatterGatherListSize

散佈/收集緩衝區的必要大小,以位元組為單位。 此緩衝區包含散佈/收集清單,描述 DMA 傳輸期間用來緩衝 I/O 資料的記憶體。 散佈/收集緩衝區必須夠大,才能包含 SCATTER_GATHER_LIST 結構和 SCATTER_GATHER_ELEMENT 結構的陣列,以及操作系統內部使用的其他數據。

備註

DMA_TRANSFER_INFO 結構的 V1 成員是類型DMA_TRANSFER_INFO_V1的結構。

GetDmaTransferInfo 例程的 MdlOffsetLength 參數同時描述 DMA 傳輸的 I/O 數據緩衝區。 為了設計 DMA 控制器的目的,散佈/收集清單可以更方便地描述此緩衝區。 (散佈/收集清單描述 I/O 數據緩衝區中的記憶體,但不包含此 memory.) 驅動程式會呼叫 GetDmaTransferInfo 以取得此散佈/收集清單的配置需求。 GetDmaTransferInfo 會將配置需求寫入呼叫端提供的DMA_TRANSFER_INFO結構的 V1 成員中。

規格需求

需求
最低支援的用戶端 從 Windows 8 開始支援。
標頭 wdm.h (包括 Wdm.h、Ntddk.h、Ntifs.h)

另請參閱

DMA_TRANSFER_INFO

GetDmaTransferInfo

SCATTER_GATHER_LIST