Platform SDK: Memory

MEMORYSTATUSEX

The MEMORYSTATUSEX structure contains information about the current state of both physical and virtual memory, including extended memory. The GlobalMemoryStatusEx function stores information in a MEMORYSTATUSEX structure.

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

Members

dwLength
Size, in bytes, of the MEMORYSTATUSEX data structure. You must set this member before calling the GlobalMemoryStatusEx function.
dwMemoryLoad
Number between 0 and 100 that gives a general idea of current memory utilization, in which 0 indicates no memory use and 100 indicates full memory use.
ullTotalPhys
Total size, in bytes, of physical memory.
ullAvailPhys
Size, in bytes, of physical memory available.
ullTotalPageFile
Total possible size, in bytes, of the paging file. Note that this number does not represent the actual physical size of the paging file on disk.
ullAvailPageFile
Size, in bytes, of space available in the paging file. The operating system can enlarge the paging file from time to time. The ullAvailPageFile member shows the difference between the size of current committed memory and the current size of the paging file — it does not show the largest possible size of the paging file.
ullTotalVirtual
Total size, in bytes, of the user mode portion of the virtual address space of the calling process.
ullAvailVirtual
Size, in bytes, of unreserved and uncommitted memory in the user mode portion of the virtual address space of the calling process.
ullAvailExtendedVirtual
Size, in bytes, of unreserved and uncommitted memory in the extended portion of the virtual address space of the calling process.

Remarks

MEMORYSTATUSEX reflects the state of memory at the time of the call. It reflects the size of the paging file at that time. The operating system can enlarge the paging file up to the maximum size set by the administrator.

Requirements

  Windows NT/2000: Requires Windows 2000.
  Windows 95/98: Unsupported.
  Header: Declared in Winbase.h; include Windows.h.

See Also

Memory Management Overview, Memory Management Structures, GlobalMemoryStatus, GlobalMemoryStatusEx, MEMORYSTATUS