Memory performance counters data size on Windows 2000 and Windows XP (262330)



The information in this article applies to:

  • Microsoft Win32 Application Programming Interface (API), when used with:
    • the operating system: Microsoft Windows 2000
    • the operating system: Microsoft Windows XP

This article was previously published under Q262330

SUMMARY

On Microsoft Windows 2000 and Microsoft Windows XP, the data size of some of the performance counters in Memory Performance Object has been increased to 64-bit LARGE_INTEGER. This article explains the memory performance counters that have been changed.

MORE INFORMATION

On computers that are running Microsoft Windows NT 4.0 and earlier systems, the data size of the performance counters in Memory Performance Object is defined as a 32-bit DWORD value. As a result, the counters represented in bytes can store value correctly only up to a maximum of 4 gigabytes (GB). If the actual value is more than 4 GB, the resultant performance counter will be equal to the actual value modulo 4 GB.

On Windows 2000 and Windows XP, the data size of the following performance counters in Memory Performance Object has been increased to 64-bit LARGE_INTEGER:
  • Available Bytes
  • Committed Bytes
  • Commit Limit
  • Pool Paged Bytes
  • Pool Nonpaged Bytes
  • Cache Bytes
  • Cache Bytes Peak
  • Pool Paged Resident Bytes
  • System Code Total Bytes
  • System Code Resident Bytes
  • System Driver Total Bytes
  • System Driver Resident Bytes
  • System Cache Resident Bytes
For these performance counters, the corresponding CounterType member in PERF_COUNTER_DEFINITION has the PERF_SIZE_LARGE flag set to indicate that the counter data is a 64-bit Large Integer.

Modification Type:MajorLast Reviewed:11/16/2004
Keywords:kbinfo kbKernBase kbPerfMon KB262330