Compartir a través de


Estructura MEMORYSTATUS (winbase.h)

Contiene información sobre el estado actual de la memoria física y virtual. La función GlobalMemoryStatus almacena información en una estructura MEMORYSTATUS .

Sintaxis

typedef struct _MEMORYSTATUS {
  DWORD  dwLength;
  DWORD  dwMemoryLoad;
  SIZE_T dwTotalPhys;
  SIZE_T dwAvailPhys;
  SIZE_T dwTotalPageFile;
  SIZE_T dwAvailPageFile;
  SIZE_T dwTotalVirtual;
  SIZE_T dwAvailVirtual;
} MEMORYSTATUS, *LPMEMORYSTATUS;

Miembros

dwLength

Tamaño de la estructura de datos MEMORYSTATUS , en bytes. No es necesario establecer este miembro antes de llamar a la función GlobalMemoryStatus ; la función la establece.

dwMemoryLoad

Número comprendido entre 0 y 100 que especifica el porcentaje aproximado de memoria física que está en uso (0 indica que no se usa memoria y 100 indica el uso de memoria completa).

dwTotalPhys

Cantidad de memoria física real, en bytes.

dwAvailPhys

Cantidad de memoria física disponible actualmente, en bytes. Esta es la cantidad de memoria física que se puede reutilizar inmediatamente sin tener que escribir primero su contenido en el disco. Es la suma del tamaño de las listas en espera, libres y cero.

dwTotalPageFile

Tamaño actual del límite de memoria confirmada, en bytes. Se trata de la memoria física más el tamaño del archivo de página, menos una pequeña sobrecarga.

dwAvailPageFile

La cantidad máxima de memoria que el proceso actual puede confirmar, en bytes. Este valor debe ser menor que la confirmación disponible en todo el sistema. Para calcular este valor, llame a GetPerformanceInfo y reste el valor de CommitTotal de CommitLimit.

dwTotalVirtual

Tamaño de la parte en modo de usuario del espacio de direcciones virtuales del proceso de llamada, en bytes. Este valor depende del tipo de proceso, del tipo de procesador y de la configuración del sistema operativo. Por ejemplo, este valor es de aproximadamente 2 GB para la mayoría de los procesos de 32 bits en un procesador x86 y aproximadamente 3 GB para procesos de 32 bits que son compatibles con direcciones grandes que se ejecutan en un sistema con 4 GT RAM Tuning habilitado.

dwAvailVirtual

Cantidad de memoria no reservada y no confirmada actualmente en la parte en modo de usuario del espacio de direcciones virtuales del proceso de llamada, en bytes.

Comentarios

MEMORYSTATUS refleja el estado de la memoria en el momento de la llamada. También refleja el tamaño del archivo de paginación en ese momento. El sistema operativo puede ampliar el archivo de paginación hasta el tamaño máximo establecido por el administrador.

En equipos con más de 4 GB de memoria, la estructura MEMORYSTATUS puede devolver información incorrecta, notificando un valor de –1 para indicar un desbordamiento. Si la aplicación está en riesgo para este comportamiento, use la función GlobalMemoryStatusEx en lugar de la función GlobalMemoryStatus .

Ejemplos

Para obtener un ejemplo, vea la función GlobalMemoryStatus .

Requisitos

Requisito Value
Cliente mínimo compatible Windows XP [solo aplicaciones de escritorio]
Servidor mínimo compatible Windows Server 2003 [solo aplicaciones de escritorio]
Encabezado winbase.h (incluye Windows.h)

Consulte también

GlobalMemoryStatus

GlobalMemoryStatusEx

Información de rendimiento de memoria