Compartir a través de


Macro MmGetMdlVirtualAddress (wdm.h)

La macro MmGetMdlVirtualAddress devuelve la dirección virtual base de un búfer descrito por una MDL.

Sintaxis

PVOID
MmGetMdlVirtualAddress (
    _In_ PMDL Mdl
    )

Parámetros

[in] Mdl

Puntero a una MDL que describe el búfer para el que se va a devolver la dirección virtual inicial.

Valor devuelto

Ninguno

Observaciones

MmGetMdlVirtualAddress devuelve la dirección virtual inicial de MDL.

MmGetMdlVirtualAddress devuelve una dirección virtual que no es necesariamente válida en el contexto del subproceso actual. Los controladores de nivel inferior no deben intentar usar la dirección virtual devuelta para acceder a la memoria, especialmente el espacio de memoria del usuario.

La dirección devuelta, que se usa como índice para una entrada de dirección física de MDL, puede ser de entrada para MapTransfer.

Los autores de llamadas de mmGetMdlVirtualAddress se pueden ejecutar en cualquier IRQL. Normalmente, el llamador se ejecuta en IRQL = DISPATCH_LEVEL porque normalmente se llama a esta rutina para obtener el parámetro currentVa para MapTransfer.

Requisitos

Requisito Valor
cliente mínimo admitido Windows 2000
encabezado de wdm.h
irQL Cualquier nivel (vea comentarios)
reglas de cumplimiento de DDI MdlAfterReqCompletedIntIoctlA(kmdf), MdlAfterReqCompletedIoctlA(kmdf), MdlAfterReqCompletedReadA(kmdf), MdlAfterReqCompletedWriteA(kmdf)