DMA_TRANSFER_INFO_V2 構造体 (wdm.h)

DMA 転送の I/O データ バッファーを記述する散布/収集リストの割り当て要件が含まれます。

構文

typedef struct _DMA_TRANSFER_INFO_V2 {
  ULONG MapRegisterCount;
  ULONG ScatterGatherElementCount;
  ULONG ScatterGatherListSize;
  ULONG LogicalPageCount;
} DMA_TRANSFER_INFO_V2, *PDMA_TRANSFER_INFO_V2;

メンバー

MapRegisterCount

散布/収集リスト内のすべての物理アドレスを論理アドレスに変換するために必要なマップ レジスタの数。

ScatterGatherElementCount

散布/収集リスト内の散布/収集要素の数。 各要素は、 SCATTER_GATHER_ELEMENT型の構造体です。

ScatterGatherListSize

散布/収集バッファーの必要なサイズ (バイト単位)。 このバッファーには、DMA 転送中に I/O データのバッファーに使用されるメモリを記述する散布/収集リストが含まれています。 散布/収集バッファーは、SCATTER_GATHER_LIST構造体とSCATTER_GATHER_ELEMENT構造体の配列に加えて、オペレーティング システムによって内部的に使用される追加データを格納するのに十分な大きさにする必要があります。

LogicalPageCount

論理ページの数。

注釈

DMA_TRANSFER_INFO構造体の V2 メンバーは、DMA_TRANSFER_INFO_V2型の構造体です。

GetDmaTransferInfo ルーチンの MdlOffsetLength パラメーターは、DMA 転送用の I/O データ バッファーを一緒に記述します。 DMA コントローラーをプログラミングする目的で、このバッファーは散布/収集リストによってより便利に記述できます。 (散布/収集リストは、I/O データ バッファー内のメモリを記述しますが、このメモリは含まれません)。ドライバーは GetDmaTransferInfo を 呼び出して、この散布/収集リストの割り当て要件を取得します。 GetDmaTransferInfo は、呼び出し元が指定したDMA_TRANSFER_INFO構造体の V1 メンバーに割り当て要件 書き込みます。

要件

要件
サポートされている最小のクライアント Windows 10 Version 1809。
Header wdm.h