estructura MEMORY_BASIC_INFORMATION (ntifs.h)

Contiene información sobre un intervalo de páginas en el espacio de direcciones virtuales de un proceso. La rutina ZwQueryVirtualMemory usa esta estructura.

Sintaxis

typedef struct _MEMORY_BASIC_INFORMATION {
  PVOID  BaseAddress;
  PVOID  AllocationBase;
  ULONG  AllocationProtect;
  USHORT PartitionId;
  SIZE_T RegionSize;
  ULONG  State;
  ULONG  Protect;
  ULONG  Type;
} MEMORY_BASIC_INFORMATION, *PMEMORY_BASIC_INFORMATION;

Miembros

BaseAddress

Puntero a la dirección base de la región de las páginas.

AllocationBase

Puntero a la dirección base de un intervalo de páginas asignadas. La página a la que apunta el miembro BaseAddress se encuentra dentro de este intervalo de asignación.

AllocationProtect

Opción de protección de memoria cuando se asignó inicialmente la región. Este miembro puede ser una de las siguientes constantes definidas en wdm.h o 0 si el autor de la llamada no tiene acceso.

Valor Significado
PAGE_NOACCESS 0x01 No se permite ningún acceso a la región de páginas. Un intento de leer, escribir o ejecutar dentro de la región produce una infracción de acceso.
PAGE_EXECUTE 0x10 Se permite ejecutar el acceso a la región de las páginas. Un intento de leer o escribir dentro de la región produce una infracción de acceso.
PAGE_READONLY 0x02 Se permite el acceso de solo lectura y ejecución a la región de páginas. Un intento de escribir dentro de la región produce una infracción de acceso.
PAGE_READWRITE 0x04 Se permite el acceso de lectura, escritura y ejecución a la región de páginas. Si se permite el acceso de escritura a la sección subyacente, se comparte una sola copia de las páginas. De lo contrario, las páginas se comparten de solo lectura o copia en escritura.
PAGE_GUARD 0x100 Se permite el acceso de lectura, escritura y ejecución a la región de páginas; sin embargo, el acceso a la región hace que se genere una condición de "región de protección especificada" en el proceso del sujeto.
PAGE_NOCACHE 0x200 Deshabilite la colocación de páginas confirmadas en la memoria caché de datos.
PAGE_WRITECOMBINE 0x400 Deshabilite la ubicación de las páginas confirmadas en la memoria caché de datos, combine también las escrituras.

PartitionId

Reservado para uso del sistema.

RegionSize

Tamaño de la región en bytes a partir de la dirección base en la que todas las páginas tienen atributos idénticos.

State

Estado de las páginas de la región. Este miembro puede ser uno de los valores siguientes.

State Significado
MEM_COMMIT 0x1000 Indica las páginas confirmadas para las que se ha asignado el almacenamiento físico, ya sea en memoria o en el archivo de paginación en el disco.
MEM_FREE 0x10000 Indica que las páginas gratuitas no son accesibles para el proceso de llamada y están disponibles para asignarse.
MEM_RESERVE 0x2000 Indica páginas reservadas en las que se reserva un intervalo del espacio de direcciones virtuales del proceso sin que se asigne ningún almacenamiento físico.

Protect

La protección de acceso de las páginas de la región. Este miembro es uno de los valores enumerados para el miembro AllocationProtect .

Type

Tipo de páginas de la región. Se definen los siguientes tipos.

Tipo Significado
MEM_IMAGE 0x1000000 Indica que las páginas de memoria de la región se asignan a la vista de una sección de imagen.
MEM_MAPPED 0x40000 Indica que las páginas de memoria de la región se asignan a la vista de una sección.
MEM_PRIVATE 0x20000 Indica que las páginas de memoria de la región son privadas (es decir, no compartidas por otros procesos).

Requisitos

Requisito Value
Cliente mínimo compatible Windows 10
Encabezado ntifs.h

Consulte también

ZwQueryVirtualMemory