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) |