SCATTER_GATHER_LIST struttura (wdm.h)

La struttura SCATTER_GATHER_LIST descrive l'elenco di dispersione/raccolta per un'operazione DMA.

Sintassi

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

Members

NumberOfElements

Specifica il numero di elementi nella matrice Elements .

Reserved

Riservato per utilizzi futuri.

Elements

Specifica una matrice di elementi di dispersione/raccolta che costituiscono un elenco di dispersione/raccolta. Ogni elemento matrice è una struttura di tipo SCATTER_GATHER_ELEMENT, definita come segue:

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

La struttura SCATTER_GATHER_ELEMENT specifica la lunghezza, in byte, di un'area a dispersione/raccolta fisicamente contigua e all'indirizzo fisico iniziale di questa area.

Commenti

Per un driver che esegue DMA a dispersione/raccolta, la routine GetScatterGatherList o BuildScatterGatherList crea un elenco di dispersione/raccolta e passa questo elenco alla routine AdapterListControl del driver. Questo elenco di dispersione/raccolta è costituito da una struttura SCATTER_GATHER_LIST che viene immediatamente seguita in memoria da una matrice di SCATTER_GATHER_ELEMENT . Il numero di elementi in questa matrice viene specificato dal membro NumberOfElements della struttura SCATTER_GATHER_LIST .

Per altre informazioni sugli elenchi di dispersione/raccolta, vedere Uso di DMA A dispersione/raccolta.

Requisiti

Requisito Valore
Intestazione wdm.h (include Wdm.h, Ntddk.h, Ntifs.h)

Vedi anche

AdapterListControl

BuildScatterGatherList

GetScatterGatherList