Compartir a través de


Función MmProtectMdlSystemAddress (wdm.h)

La rutina MmProtectMdlSystemAddress establece el tipo de protección para un intervalo de direcciones de memoria.

Sintaxis

NTSTATUS MmProtectMdlSystemAddress(
  [in] PMDL  MemoryDescriptorList,
  [in] ULONG NewProtect
);

Parámetros

[in] MemoryDescriptorList

Especifica el intervalo de direcciones de memoria para el que se va a establecer el tipo de protección.

[in] NewProtect

Especifica la nueva configuración de protección para las páginas de memoria. Los controladores deben especificar uno de los siguientes valores:

PAGE_NOACCESS

Las páginas de memoria subyacentes no se pueden leer ni escribir.

PAGE_READONLY

Las páginas de memoria subyacentes solo se pueden leer, no escribir.

PAGE_READWRITE

Las páginas de memoria subyacentes se pueden leer o escribir.

PAGE_EXECUTE

Las páginas de memoria subyacentes se pueden ejecutar, pero no leer ni escribir.

PAGE_EXECUTE_READ

Las páginas de memoria subyacentes se pueden ejecutar o leer, pero no se pueden escribir.

PAGE_EXECUTE_READWRITE

Las páginas de memoria subyacentes se pueden ejecutar, leer o escribir.

Valor devuelto

mmProtectMdlSystemAddress devuelve un código NTSTATUS. Entre los valores devueltos posibles se incluyen:

Código devuelto Descripción
STATUS_SUCCESS
La rutina cambió correctamente el tipo de protección para el intervalo de direcciones de memoria.
STATUS_INVALID_PAGE_PROTECTION
El valor especificado para NewProtect no es válido para esta rutina.
STATUS_NOT_MAPPED_VIEW
El MDL aún no se ha asignado. MmProtectMdlSystemAddress solo se pueden usar en MDL que ya se han asignado.

Observaciones

La rutina MmProtectMdlSystemAddress solo se puede llamar a en una MDL que ya se haya asignado. Por ejemplo, se puede llamar a la rutina en una MDL asignada por MmMapLockedPagesSpecifyCache.

Requisitos

Requisito Valor
cliente mínimo admitido Disponible en Windows XP y versiones posteriores de Windows.
de la plataforma de destino de Universal
encabezado de wdm.h (include Wdm.h, Ntddk.h, Ntifs.h)
biblioteca de NtosKrnl.lib
DLL de NtosKrnl.exe
irQL <=DISPATCH_LEVEL

Consulte también

MmMapLockedPagesSpecifyCache