Поделиться через


Функция 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

Битовая побитовая отметка, указывающая защиту для заданных страниц. Возможные значения — это PAGE_Xxx константы, определенные в Wdm.h.

[in] DriverRoutine

Указатель на подпрограмму обратного вызова драйвера (MM_MDL_ROUTINE), вызываемую после сопоставления MDL.

[in] DriverContext

Указатель на определяемый драйвером контекст. Функция обратного вызова драйвера может хранить любые сведения о состоянии в контексте драйвера, а затем проверять значение при вызове обратного вызова.

Возвращаемое значение

Если функция обратного вызова, на которую указывает DriverRoutine, эта функция возвращает STATUS_SUCCESS. Функция возвращает соответствующее значение NTSTATUS, если не удалось сопоставить MDL или не удалось вызвать функцию обратного вызова.

Замечания

MmMapMdl сопоставляет MDL (если оно еще не сопоставлено), вызывает обратный вызов, а затем освобождает сопоставление (если оно создано). Вызывающий объект не должен выполнять очистку.

Требования

Требование Ценность
минимальные поддерживаемые клиентские Windows 10 версии 1709
минимальный поддерживаемый сервер Windows Server 2016
целевая платформа Виндоус
заголовка wdm.h
библиотеки NtosKrnl.lib
DLL NtosKrnl.exe (режим ядра)
IRQL <=DISPATCH_LEVEL

См. также

MM_MDL_ROUTINE