MmMapMdl 함수(wdm.h)
이 함수는 MDL(메모리 설명자 목록)에서 설명하는 실제 페이지를 시스템 가상 주소 공간에 매핑합니다.
구문
NTSTATUS MmMapMdl(
[in] PMDL MemoryDescriptorList,
[in] ULONG Protection,
[in] PMM_MDL_ROUTINE DriverRoutine,
[in] PVOID DriverContext
);
매개 변수
[in] MemoryDescriptorList
유효한 MDL에 대한 포인터입니다.
[in] Protection
페이지에 대해 설정할 보호를 나타내는 플래그의 비트입니다. 가능한 값은 Wdm.h에 정의된 PAGE_Xxx 상수입니다.
[in] DriverRoutine
MDL이 매핑된 후 호출되는 드라이버 제공 콜백 루틴(MM_MDL_ROUTINE)에 대한 포인터입니다.
[in] DriverContext
드라이버 정의 컨텍스트에 대한 포인터입니다. 드라이버의 콜백 함수는 드라이버 컨텍스트에 상태 정보를 저장한 다음 콜백이 호출될 때 값을 검사할 수 있습니다.
반환 값
DriverRoutine이 가리키는 콜백 함수가 호출된 경우 이 함수는 STATUS_SUCCESS 반환합니다. MDL을 매핑할 수 없거나 콜백 함수를 호출할 수 없는 경우 함수는 적절한 NTSTATUS 값을 반환합니다.
설명
MmMapMdl 은 MDL을 매핑하고(아직 매핑되지 않은 경우) 콜백을 호출한 다음 매핑을 해제합니다(생성된 경우). 호출자는 정리를 수행할 필요가 없습니다.
요구 사항
요구 사항 | 값 |
---|---|
지원되는 최소 클라이언트 | Windows 10, 버전 1709 |
지원되는 최소 서버 | Windows Server 2016 |
대상 플랫폼 | Windows |
헤더 | wdm.h |
라이브러리 | NtosKrnl.lib |
DLL | NtosKrnl.exe(커널 모드) |
IRQL | <=DISPATCH_LEVEL |