mmUnmapLockedPages 函数 (wdm.h)
MmUnmapLockedPages 例程会释放一个映射,该映射是通过之前对 MmMapLockedPages 或 MmMapLockedPagesSpecifyCache 例程的调用设置的。
语法
void MmUnmapLockedPages(
[in] PVOID BaseAddress,
[in] PMDL MemoryDescriptorList
);
参数
[in] BaseAddress
指向物理页映射到的基虚拟地址的指针。
[in] MemoryDescriptorList
指向 MDL 的指针。
返回值
无
备注
如果页面映射到系统空间, MmUnmapLockedPages 的 调用方必须在 IRQL <= DISPATCH_LEVEL 运行。 否则,调用方必须在 IRQL <= APC_LEVEL 运行。
请注意,如果对 MmMapLockedPages 或 MmMapLockedPagesSpecifyCache 的调用指定了用户模式,则在调用 MmUnmapLockedPages 之前,调用方必须在原始进程的上下文中。 这是因为取消映射操作发生在调用进程的上下文中,如果上下文不正确,取消映射操作可能会删除随机进程的地址范围。
要求
要求 | 值 |
---|---|
最低受支持的客户端 | 从 Windows 2000 开始可用。 |
目标平台 | 通用 |
标头 | wdm.h(包括 Wdm.h、Ntddk.h、Ntifs.h) |
Library | NtosKrnl.lib |
DLL | NtosKrnl.exe |
IRQL | 请参见“备注”部分。 |
DDI 符合性规则 | HwStorPortProhibitedDDI (storport) |