Freigeben über


SCATTER_GATHER_LIST Struktur (wdm.h)

Die SCATTER_GATHER_LIST Struktur beschreibt die Punkt/Gather-Liste für einen DMA-Vorgang.

Syntax

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

Angehörige

NumberOfElements

Gibt die Anzahl der Elemente im Elements Array an.

Reserved

Reserviert für die zukünftige Verwendung.

Elements

Gibt ein Array von Punkt/Gather-Elementen an, die eine Punkt-/Gather-Liste umfassen. Jedes Arrayelement ist eine Struktur vom Typ SCATTER_GATHER_ELEMENT, die wie folgt definiert ist:

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

Die SCATTER_GATHER_ELEMENT-Struktur gibt die Länge eines physisch zusammenhängenden Punkt/Gather-Bereichs in Bytes und die Ausgangsadresse dieses Bereichs an.

Bemerkungen

Für einen Treiber, der Punkt/Gather-DMA ausführt, erstellt die GetScatterGatherList oder BuildScatterGatherList-Routine eine Punkt/Gather-Liste und übergibt diese Liste an die AdapterListControl- Routine des Treibers. Diese Punkt-/Gather-Liste besteht aus einer SCATTER_GATHER_LIST Struktur, die unmittelbar im Arbeitsspeicher von einem SCATTER_GATHER_ELEMENT Array gefolgt wird. Die Anzahl der Elemente in diesem Array wird durch das NumberOfElements Element der SCATTER_GATHER_LIST-Struktur angegeben.

Weitere Informationen zu Punkt-/Erfassungslisten finden Sie unter Using Scatter/Gather DMA.

Anforderungen

Anforderung Wert
Header- wdm.h (include Wdm.h, Ntddk.h, Ntifs.h)

Siehe auch

AdapterListControl-

BuildScatterGatherList

GetScatterGatherList-