SCATTER_GATHER_LIST 结构 (wdm.h)

SCATTER_GATHER_LIST结构描述 DMA 操作的散点/收集列表。

语法

typedef struct _SCATTER_GATHER_LIST {
  ULONG                  NumberOfElements;
  ULONG_PTR              Reserved;
  SCATTER_GATHER_ELEMENT Elements[];
} SCATTER_GATHER_LIST, *PSCATTER_GATHER_LIST;

成员

NumberOfElements

指定 Elements 数组中的元素数。

Reserved

保留供将来使用。

Elements

指定构成散点/收集列表的散点/集合元素数组。 每个数组元素都是 SCATTER_GATHER_ELEMENT类型的结构,定义如下:

typedef struct _SCATTER_GATHER_ELEMENT {
  PHYSICAL_ADDRESS  Address;
  ULONG  Length;
  ULONG_PTR  Reserved;
} SCATTER_GATHER_ELEMENT, *PSCATTER_GATHER_ELEMENT;

SCATTER_GATHER_ELEMENT结构指定物理连续散点/收集区域的长度(以字节为单位),以及该区域的起始物理地址。

注解

对于执行散点/收集 DMA 的驱动程序, GetScatterGatherListBuildScatterGatherList 例程会创建散点/收集列表,并将此列表传递给驱动程序的 AdapterListControl 例程。 此散点/收集列表由 SCATTER_GATHER_LIST 结构组成,该结构紧跟在内存中 SCATTER_GATHER_ELEMENT 数组。 此数组中的元素数由 SCATTER_GATHER_LIST 结构的 NumberOfElements 成员指定。

有关散点/收集列表的详细信息,请参阅 使用散点/收集 DMA

要求

要求
标头 wdm.h(包括 Wdm.h、Ntddk.h、Ntifs.h)

另请参阅

AdapterListControl

BuildScatterGatherList

GetScatterGatherList