estrutura SCATTER_GATHER_LIST (wdm.h)
A estrutura SCATTER_GATHER_LIST descreve a lista de dispersão/coleta de uma operação de DMA.
Sintaxe
typedef struct _SCATTER_GATHER_LIST {
ULONG NumberOfElements;
ULONG_PTR Reserved;
SCATTER_GATHER_ELEMENT Elements[];
} SCATTER_GATHER_LIST, *PSCATTER_GATHER_LIST;
Membros
NumberOfElements
Especifica o número de elementos na matriz Elements .
Reserved
Reservado para uso futuro.
Elements
Especifica uma matriz de elementos de dispersão/coleta que compõem uma lista de dispersão/coleta. Cada elemento de matriz é uma estrutura do tipo SCATTER_GATHER_ELEMENT, que é definida da seguinte maneira:
typedef struct _SCATTER_GATHER_ELEMENT {
PHYSICAL_ADDRESS Address;
ULONG Length;
ULONG_PTR Reserved;
} SCATTER_GATHER_ELEMENT, *PSCATTER_GATHER_ELEMENT;
A estrutura SCATTER_GATHER_ELEMENT especifica o comprimento, em bytes, de uma região de dispersão/coleta fisicamente contígua e o endereço físico inicial dessa região.
Comentários
Para um driver que executa o DMA de dispersão/coleta, a rotina GetScatterGatherList ou BuildScatterGatherList cria uma lista de dispersão/coleta e passa essa lista para a rotina AdapterListControl do driver. Essa lista de dispersão/coleta consiste em uma estrutura SCATTER_GATHER_LIST que é imediatamente seguida na memória por uma matriz de SCATTER_GATHER_ELEMENT . O número de elementos nessa matriz é especificado pelo membro NumberOfElements da estrutura SCATTER_GATHER_LIST .
Para obter mais informações sobre listas de dispersão/coleta, consulte Usando o DMA de dispersão/coleta.
Requisitos
Requisito | Valor |
---|---|
Cabeçalho | wdm.h (include Wdm.h, Ntddk.h, Ntifs.h) |