Compartir a través de


Macro MmGetSystemAddressForMdl (wdm.h)

La rutina MmGetSystemAddressForMdl está obsoleta. Use mmGetSystemAddressForMdlSafe en su lugar.

mmGetSystemAddressForMdl es una macro que devuelve una dirección virtual de espacio del sistema no paginada para el búfer descrito por MDL. Asigna las páginas físicas descritas por un MDL determinado al espacio del sistema, si aún no están asignadas al espacio del sistema.

Sintaxis

PVOID MmGetSystemAddressForMdl(
   MDL
);

Parámetros

[in] MDL

Puntero a un búfer cuya dirección virtual base correspondiente se va a asignar.

Valor devuelto

Ninguno

Observaciones

MmGetSystemAddressForMdl devuelve la dirección virtual del espacio del sistema base que asigna las páginas físicas descritas por el MDL especificado.

Los controladores de dispositivos PIO llaman a esta rutina para traducir un intervalo de direcciones virtuales, descrito por mdL en Irp->MdlAddress, para un búfer de usuario en un intervalo de direcciones del espacio del sistema.

El MDL debe describir la memoria no paginable. En otras palabras, la MDL de entrada debe describir un búfer de espacio de usuario ya bloqueado devuelto por MmProbeAndLockPages, un búfer bloqueado devuelto por MmBuildMdlForNonPagedPool, o memoria de espacio del sistema asignada desde un grupo no paginado, memoria contigua o memoria no almacenada en caché.

La dirección base devuelta tiene el mismo desplazamiento que la dirección virtual en MDL.

La ventana emite una comprobación de errores si se produce un error en el intento de asignar al espacio del sistema. Por lo tanto, debe usar MmGetSystemAddressForMdlSafe en su lugar).

Requisitos

Requisito Valor
cliente mínimo admitido Obsoleto. Use MmGetSystemAddressForMdlSafe en su lugar.
de la plataforma de destino de Escritorio
encabezado de wdm.h (include Wdm.h, Ntddk.h, Ntifs.h)
irQL IRQL <= DISPATCH_LEVEL

Consulte también

MmBuildMdlForNonPagedPool

MmGetSystemAddressForMdlSafe

mmProbeAndLockPages