estructura SCATTER_GATHER_LIST (wdm.h)

La estructura de 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.

Observaciones

Para un controlador que realiza la dispersión o recopilación de DMA, la rutina GetScatterGatherList o BuildScatterGatherList crea una lista de dispersión/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 seguida inmediatamente en la memoria por una matriz de SCATTER_GATHER_ELEMENT . El número de elementos de esta matriz se especifica mediante el miembro NumberOfElements de la estructura SCATTER_GATHER_LIST .

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

Requisitos

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

Consulte también

AdapterListControl

BuildScatterGatherList

GetScatterGatherList