Função MmMapMdl (wdm.h)

Essa função mapeia páginas físicas descritas por uma MDL (lista de descritores de memória) para o espaço de endereço virtual do sistema.

Sintaxe

NTSTATUS MmMapMdl(
  [in] PMDL            MemoryDescriptorList,
  [in] ULONG           Protection,
  [in] PMM_MDL_ROUTINE DriverRoutine,
  [in] PVOID           DriverContext
);

Parâmetros

[in] MemoryDescriptorList

Um ponteiro para um MDL válido.

[in] Protection

Um bit a bit de sinalizadores que indica a proteção a ser definida para as páginas. Os valores possíveis são PAGE_Xxx constantes definidas em Wdm.h.

[in] DriverRoutine

Um ponteiro para uma rotina de retorno de chamada fornecida pelo driver (MM_MDL_ROUTINE) que é invocada depois que o MDL é mapeado.

[in] DriverContext

Um ponteiro para um contexto definido pelo driver. A função de retorno de chamada do driver pode armazenar qualquer status informações no contexto do driver e, em seguida, examinar o valor quando o retorno de chamada for invocado.

Retornar valor

Se a função de retorno de chamada apontada por DriverRoutine tiver sido invocada, essa função retornará STATUS_SUCCESS. A função retornará um valor NTSTATUS apropriado se o MDL não puder ser mapeado ou a função de retorno de chamada não puder ser invocada.

Comentários

MmMapMdl mapeia o MDL (se ainda não estiver mapeado), invoca o retorno de chamada e libera o mapeamento (se um tiver sido criado). O chamador não precisa executar nenhuma limpeza.

Requisitos

Requisito Valor
Cliente mínimo com suporte Windows 10, versão 1709
Servidor mínimo com suporte Windows Server 2016
Plataforma de Destino Windows
Cabeçalho wdm.h
Biblioteca NtosKrnl.lib
DLL NtosKrnl.exe (modo kernel)
IRQL <=DISPATCH_LEVEL

Confira também

MM_MDL_ROUTINE