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 elementos.
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.
Observações
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 de AdapterListControl do driver. Essa lista de dispersão/coleta consiste em uma estrutura de 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 NumberOfElements membro da estrutura SCATTER_GATHER_LIST.
Para obter mais informações sobre listas de dispersão/coleta, consulte Usandode DMA de dispersão/coleta.
Requisitos
Requisito | Valor |
---|---|
cabeçalho | wdm.h (include Wdm.h, Ntddk.h, Ntifs.h) |