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 멤버에 의해 지정됩니다.
분산/수집 목록에 대한 자세한 내용은 Using Scatter/Gather DMA참조하세요.
요구 사항
요구 | 값 |
---|---|
헤더 | wdm.h(Wdm.h, Ntddk.h, Ntifs.h 포함) |