SCATTER_GATHER_LIST構造体 (wdm.h)
SCATTER_GATHER_LIST構造体は、DMA 操作の散布/収集リストを記述します。
構文
typedef struct _SCATTER_GATHER_LIST {
ULONG NumberOfElements;
ULONG_PTR Reserved;
SCATTER_GATHER_ELEMENT Elements[];
} SCATTER_GATHER_LIST, *PSCATTER_GATHER_LIST;
メンバー
NumberOfElements
Elements 配列内の要素の数を指定します。
Reserved
将来利用するために予約されています。
Elements
散布/収集リストを構成する散布/収集要素の配列を指定します。 各配列要素は、 SCATTER_GATHER_ELEMENT型の構造体であり、次のように定義されます。
typedef struct _SCATTER_GATHER_ELEMENT {
PHYSICAL_ADDRESS Address;
ULONG Length;
ULONG_PTR Reserved;
} SCATTER_GATHER_ELEMENT, *PSCATTER_GATHER_ELEMENT;
SCATTER_GATHER_ELEMENT構造体は、物理的に連続した散布/収集領域の長さ (バイト単位) と、この領域の開始物理アドレスを指定します。
注釈
散布/収集 DMA を実行するドライバーの場合、 GetScatterGatherList または BuildScatterGatherList ルーチンは散布/収集リストを作成し、このリストをドライバーの AdapterListControl ルーチンに渡します。 この散布図/収集リストは 、SCATTER_GATHER_ELEMENT 配列によってメモリ内で直ちに続く SCATTER_GATHER_LIST 構造体で構成されます。 この配列内の要素の数は、SCATTER_GATHER_LIST構造体の NumberOfElements メンバーによって指定されます。
散布図/収集リストの詳細については、「 散布図/収集 DMA の使用」を参照してください。
要件
要件 | 値 |
---|---|
Header | wdm.h (Wdm.h、Ntddk.h、Ntifs.h を含む) |