Platform SDK: Performance Monitoring

PERF_DATA_BLOCK

The PERF_DATA_BLOCK structure describes the performance data provided by RegQueryValueEx function. The data starts with a PERF_DATA_BLOCK structure and is followed by a PERF_OBJECT_TYPE structure and other object-specific data for each type of object monitored.

typedef struct _PERF_DATA_BLOCK {
  WCHAR         Signature[4]; 
  DWORD         LittleEndian; 
  DWORD         Version; 
  DWORD         Revision; 
  DWORD         TotalByteLength; 
  DWORD         HeaderLength; 
  DWORD         NumObjectTypes; 
  DWORD         DefaultObject; 
  SYSTEMTIME    SystemTime; 
  LARGE_INTEGER PerfTime; 
  LARGE_INTEGER PerfFreq; 
  LARGE_INTEGER PerfTime100nSec; 
  DWORD         SystemNameLength; 
  DWORD         SystemNameOffset; 
} PERF_DATA_BLOCK; 

Members

Signature
Contains the Unicode string PERF.
LittleEndian
Contains zero if the processor is big endian and one if it is little endian.
Version
Contains the version of the performance (PERF_) structures. This member is greater than or equal to one.
Revision
Contains the revision of the performance (PERF_) structures. This member is greater than or equal to zero.
TotalByteLength
Contains the total length, in bytes, of the performance data.
HeaderLength
Contains the length, in bytes, of this structure.
NumObjectTypes
Contains the number of object types being monitored.
DefaultObject
Contains the object title index of the default object whose performance data is to be displayed. This member can be –1 to indicate that no data is to be displayed.
SystemTime
Contains the time when the system is monitored. This member is in Coordinated Universal Time (UTC) format.
PerfTime
Contains the performance-counter value, in counts, for the system being monitored.
PerfFreq
Contains the performance-counter frequency, in counts per second, for the system being monitored.
PerfTime100nSec
Contains the performance-counter value, in 100 nanosecond units, for the system being monitored.
SystemNameLength
Contains the length, in bytes, of the system name.
SystemNameOffset
Contains the offset from the beginning of this structure to the name of the system being monitored.

Requirements

  Windows NT/2000: Requires Windows NT 3.1 or later.
  Header: Declared in Winperf.h; include Windows.h.

See Also

PERF_OBJECT_TYPE, RegQueryValueEx