STRUCTURE MEMORYSTATUSEX (sysinfoapi.h)

Contient des informations sur l’état actuel de la mémoire physique et virtuelle, y compris la mémoire étendue. La fonction GlobalMemoryStatusEx stocke des informations dans cette structure.

Syntaxe

typedef struct _MEMORYSTATUSEX {
  DWORD     dwLength;
  DWORD     dwMemoryLoad;
  DWORDLONG ullTotalPhys;
  DWORDLONG ullAvailPhys;
  DWORDLONG ullTotalPageFile;
  DWORDLONG ullAvailPageFile;
  DWORDLONG ullTotalVirtual;
  DWORDLONG ullAvailVirtual;
  DWORDLONG ullAvailExtendedVirtual;
} MEMORYSTATUSEX, *LPMEMORYSTATUSEX;

Membres

dwLength

Taille de la structure, en octets. Vous devez définir ce membre avant d’appeler
GlobalMemoryStatusEx.

dwMemoryLoad

Nombre compris entre 0 et 100 qui spécifie le pourcentage approximatif de mémoire physique utilisée (0 indique l’absence d’utilisation de la mémoire et 100 indique l’utilisation complète de la mémoire).

ullTotalPhys

Quantité de mémoire physique réelle, en octets.

ullAvailPhys

Quantité de mémoire physique actuellement disponible, en octets. Il s’agit de la quantité de mémoire physique qui peut être réutilisée immédiatement sans avoir à écrire son contenu sur le disque. Il s’agit de la somme de la taille des listes de secours, de disponibilité et de zéro.

ullTotalPageFile

Limite de mémoire validée actuelle pour le système ou le processus en cours, selon la taille la plus petite, en octets. Pour obtenir la limite de mémoire validée à l’échelle du système, appelez GetPerformanceInfo.

ullAvailPageFile

Quantité maximale de mémoire que le processus actuel peut valider, en octets. Cette valeur est égale ou inférieure à la valeur de validation disponible à l’échelle du système. Pour calculer la valeur de validation disponible à l’échelle du système, appelez GetPerformanceInfo et soustrayez la valeur de CommitTotal de la valeur de CommitLimit.

ullTotalVirtual

Taille de la partie en mode utilisateur de l’espace d’adressage virtuel du processus appelant, en octets. Cette valeur dépend du type de processus, du type de processeur et de la configuration du système d’exploitation. Par exemple, cette valeur est d’environ 2 Go pour la plupart des processus 32 bits sur un processeur x86 et d’environ 3 Go pour les processus 32 bits qui prennent en charge les grandes adresses qui s’exécutent sur un système avec un réglage de 4 gigaoctets activé.

ullAvailVirtual

Quantité de mémoire non réservée et non validée actuellement dans la partie en mode utilisateur de l’espace d’adressage virtuel du processus appelant, en octets.

ullAvailExtendedVirtual

Réservé. Cette valeur est toujours 0.

Remarques

MEMORYSTATUSEX reflète l’état de la mémoire au moment de l’appel. Il reflète également la taille du fichier de pagination à ce moment-là. Le système d’exploitation peut agrandir le fichier de pagination jusqu’à la taille maximale définie par l’administrateur.

Les tailles de mémoire physique retournées incluent la mémoire de tous les nœuds.

Exemples

Pour obtenir un exemple, consultez la fonction GlobalMemoryStatusEx .

Configuration requise

Condition requise Valeur
Client minimal pris en charge Windows XP [applications de bureau uniquement]
Serveur minimal pris en charge Windows Server 2003 [applications de bureau uniquement]
En-tête sysinfoapi.h (inclure Windows.h)

Voir aussi

GlobalMemoryStatusEx

Informations sur les performances de la mémoire