структура 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_LIST , за которой в памяти сразу же следует массив SCATTER_GATHER_ELEMENT . Количество элементов в этом массиве задается элементом NumberOfElements структуры SCATTER_GATHER_LIST .
Дополнительные сведения о точечных и сборных списках см. в разделе Использование точечной и сборной DMA.
Требования
Требование | Значение |
---|---|
Заголовок | wdm.h (включая Wdm.h, Ntddk.h, Ntifs.h) |