DMA_TRANSFER_INFO_V1 구조체(wdm.h)
DMA_TRANSFER_INFO_V1 구조에는 DMA 전송에 대한 I/O 데이터 버퍼를 설명하는 분산/수집 목록에 대한 할당 요구 사항이 포함되어 있습니다.
구문
typedef struct _DMA_TRANSFER_INFO_V1 {
ULONG MapRegisterCount;
ULONG ScatterGatherElementCount;
ULONG ScatterGatherListSize;
} DMA_TRANSFER_INFO_V1, *PDMA_TRANSFER_INFO_V1;
멤버
MapRegisterCount
분산/수집 목록의 모든 실제 주소를 논리적 주소로 변환하는 데 필요한 맵 레지스터 수입니다.
ScatterGatherElementCount
분산/수집 목록의 분산/수집 요소 수입니다. 각 요소는 SCATTER_GATHER_ELEMENT 형식의 구조입니다.
ScatterGatherListSize
분산/수집 버퍼의 필요한 크기(바이트)입니다. 이 버퍼에는 DMA 전송 중에 I/O 데이터를 버퍼링하는 데 사용되는 메모리를 설명하는 분산/수집 목록이 포함되어 있습니다. 분산/수집 버퍼는 SCATTER_GATHER_LIST 구조와 SCATTER_GATHER_ELEMENT구조의 배열과 운영 체제에서 내부적으로 사용되는 추가 데이터를 포함할 만큼 커야 합니다.
설명
DMA_TRANSFER_INFO 구조체의 V1 멤버는 DMA_TRANSFER_INFO_V1 형식의 구조체입니다.
GetDmaTransferInfo 루틴에 대한 Mdl, Offset 및 Length 매개 변수는 DMA 전송에 대한 I/O 데이터 버퍼를 함께 설명합니다. DMA 컨트롤러를 프로그래밍하기 위해 분산/수집 목록에서 이 버퍼를 보다 편리하게 설명할 수 있습니다. (분산/수집 목록은 I/O 데이터 버퍼의 메모리를 설명하지만 이 메모리는 포함하지 않습니다.) 드라이버는 GetDmaTransferInfo 를 호출하여 이 분산/수집 목록에 대한 할당 요구 사항을 가져옵니다. GetDmaTransferInfo는 할당 요구 사항을 호출자가 제공한 DMA_TRANSFER_INFO 구조의 V1 멤버에 씁니다.
요구 사항
요구 사항 | 값 |
---|---|
지원되는 최소 클라이언트 | Windows 8 부터 지원합니다. |
헤더 | wdm.h(Wdm.h, Ntddk.h, Ntifs.h 포함) |