Compartir a través de


estructura SCATTER_GATHER_LIST (wdm.h)

La estructura SCATTER_GATHER_LIST describe la lista de dispersión y recopilación de una operación DMA.

Sintaxis

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

Miembros

NumberOfElements

Especifica el número de elementos de la matriz Elements .

Reserved

Reservado para uso futuro.

Elements

Especifica una matriz de elementos de dispersión y recopilación que componen una lista de dispersión y recopilación. Cada elemento de matriz es una estructura de tipo SCATTER_GATHER_ELEMENT, que se define de la siguiente manera:

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

La estructura SCATTER_GATHER_ELEMENT especifica la longitud, en bytes, de una región de dispersión o recopilación físicamente contigua y la dirección física inicial de esta región.

Comentarios

Para un controlador que realiza la dispersión o recopilación de DMA, la rutina GetScatterGatherList o BuildScatterGatherList crea una lista de dispersión y recopilación y pasa esta lista a la rutina AdapterListControl del controlador. Esta lista de dispersión y recopilación consta de una estructura de SCATTER_GATHER_LIST que va seguida inmediatamente en la memoria por una matriz de SCATTER_GATHER_ELEMENT . El miembro NumberOfElements de la estructura SCATTER_GATHER_LIST especifica el número de elementos de esta matriz.

Para obtener más información sobre las listas de dispersión y recopilación, vea Uso de Dispersión/Recopilación de DMA.

Requisitos

Requisito Valor
Header wdm.h (incluya Wdm.h, Ntddk.h, Ntifs.h)

Consulte también

AdapterListControl

BuildScatterGatherList

GetScatterGatherList