Compartilhar via


Função MmMapLockedPages (wdm.h)

A rotina MmMapLockedPages é obsoleta para o Windows 2000 e versões posteriores do Windows e para Windows Me. Ele tem suporte apenas para drivers WDM que devem ser executados no Windows 98. Caso contrário, use MmMapLockedPagesSpecifyCache.

A rotina MmMapLockedPages mapeia as páginas físicas descritas por um determinado MDL.

Sintaxe

PVOID MmMapLockedPages(
  [in] PMDL                                                                          MemoryDescriptorList,
  [in] __drv_strictType(KPROCESSOR_MODE / enum _MODE,__drv_typeConst)KPROCESSOR_MODE AccessMode
);

Parâmetros

[in] MemoryDescriptorList

Ponteiro para um MDL que foi atualizado por MmProbeAndLockPages.

[in] AccessMode

Especifica o modo de acesso no qual mapear o MDL, KernelMode ou UserMode. Quase todos os drivers devem usar KernelMode.

Retornar valor

MmMapLockedPages retorna o endereço inicial das páginas mapeadas. (Para sistemas operacionais baseados em NT antes de Windows NT 4.0 Service Pack 4 (SP4), MmMapLockedPages retorna o endereço inicial da primeira página das páginas mapeadas.)

Comentários

Use MmUnmapLockedPages para desmarcar as páginas físicas mapeadas por MmMapLockedPages.

Se AccessMode for KernelMode e MmMapLockedPages não puder mapear as páginas especificadas, o sistema emitirá um bug marcar. (Por esse motivo, os drivers devem usar MmMapLockedPagesSpecifyCache quando disponível; essa rotina retorna NULL em caso de falha, em vez de causar um bug marcar.) Se AccessMode for UserMode e as páginas especificadas não puderem ser mapeadas, a rotina gerará uma exceção. Os chamadores que especificam UserMode devem encapsular a chamada para MmMapLockedPages em um bloco try/except . Para obter mais informações, consulte Tratamento de exceções.

Os chamadores de MmMapLockedPages devem estar em execução em IRQL <= DISPATCH_LEVEL se AccessMode for KernelMode. Caso contrário, o chamador deverá estar em execução em IRQL <= APC_LEVEL.

Requisitos

Requisito Valor
Cliente mínimo com suporte Obsoleto para Windows 2000 e versões posteriores do Windows e para Windows Me. Essa rotina tem suporte apenas para drivers WDM que devem ser executados no Windows 98. Caso contrário, use MmMapLockedPagesSpecifyCache.
Plataforma de Destino Universal
Cabeçalho wdm.h (include Wdm.h, Ntddk.h, Ntifs.h)
Biblioteca NtosKrnl.lib
DLL NtosKrnl.exe
IRQL Consulte a seção Observações.
Regras de conformidade de DDI HwStorPortProhibitedDDIs(storport)

Confira também

MmGetSystemAddressForMdl

MmGetSystemAddressForMdlSafe

MmMapLockedPagesSpecifyCache

MmProbeAndLockPages

MmUnmapLockedPages