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) |