MmAllocateMappingAddress 함수(wdm.h)
MmAllocateMappingAddress 루틴은 지정된 크기의 시스템 가상 주소 공간 범위를 예약합니다.
통사론
PVOID MmAllocateMappingAddress(
[in] SIZE_T NumberOfBytes,
[in] ULONG PoolTag
);
매개 변수
[in] NumberOfBytes
예약할 바이트 수를 지정합니다.
[in] PoolTag
버퍼를 식별하는 데 사용되는 4자 태그를 지정합니다. 각 할당 코드 경로에 고유한 PoolTag 태그를 사용합니다. 풀 태그에 대한 설명은 ExAllocatePoolWithTag참조하세요.
반환 값
MmAllocateMappingAddress 예약된 메모리 버퍼의 시작 부분에 대한 포인터를 반환합니다.
발언
MmAllocateMappingAddress 호출자가 사용할 시스템 가상 주소 범위를 예약합니다. 가상 주소 범위에 대해 실제 메모리가 할당되지 않으며 가상 메모리는 MmMapLockedPagesWithReservedMapping 루틴에 의해 매핑될 때까지 액세스할 수 없습니다. 호출자는 MmUnmapReservedMapping 루틴을 호출하여 예약된 메모리 범위의 매핑을 해제합니다. 마지막으로 호출자는 MmFreeMappingAddress호출하여 예약된 범위를 해제할 수 있습니다.
요구 사항
요구 | 값 |
---|---|
지원되는 최소 클라이언트 | Windows XP 이상 버전의 Windows에서 사용할 수 있습니다. |
대상 플랫폼 | 보편적 |
헤더 | wdm.h(Wdm.h, Ntddk.h, Ntifs.h 포함) |
라이브러리 | NtosKrnl.lib |
DLL | NtosKrnl.exe |
IRQL | <=APC_LEVEL |