Expand Minimize

Win32_PerfFormattedData_PerfProc_Process class

The Win32_PerfFormattedData_PerfProc_Process formatted data class provides precalculated data from performance counters that monitor running application and system processes. All the threads in a process share the same address space and have access to the same data.

This class represents the Process object in System Monitor and returns the same data you see in System Monitor. The original data source is the PerfProc performance library. This class derives its raw data from the corresponding raw class Win32_PerfRawData_PerfProc_Process. Data is provided dynamically for this class from the performance library object by the WmiPerfInst provider.

Windows Server 2003 and Windows XP:  WMI data for this class is supplied by the Formatted Performance Data Provider.

The following syntax is simplified from MOF code and shows all inherited properties, including the Frequency and Timestamp properties required for class display in System Monitor. For more information about required property qualifiers, see Property Qualifiers for Performance Counter Classes. For more information about CounterType values, see WMI Performance Counter Types.

Syntax

class Win32_PerfFormattedData_PerfProc_Process : Win32_PerfFormattedData
{
  string Caption;
  uint32 CreatingProcessID;
  string Description;
  uint64 ElapsedTime;
  uint64 Frequency_Object;
  uint64 Frequency_PerfTime;
  uint64 Frequency_Sys100NS;
  uint32 HandleCount;
  uint32 IDProcess;
  uint64 IODataBytesPerSec;
  uint64 IODataOperationsPerSec;
  uint64 IOOtherBytesPerSec;
  uint64 IOOtherOperationsPerSec;
  uint64 IOReadBytesPerSec;
  uint64 IOReadOperationsPerSec;
  uint64 IOWriteBytesPerSec;
  uint64 IOWriteOperationsPerSec;
  string Name;
  uint32 PageFaultsPerSec;
  uint64 PageFileBytes;
  uint64 PageFileBytesPeak;
  uint64 PercentPrivilegedTime;
  uint64 PercentProcessorTime;
  uint64 PercentUserTime;
  uint32 PoolNonpagedBytes;
  uint32 PoolPagedBytes;
  uint32 PriorityBase;
  uint64 PrivateBytes;
  uint32 ThreadCount;
  uint64 Timestamp_Object;
  uint64 Timestamp_PerfTime;
  uint64 Timestamp_Sys100NS;
  uint64 VirtualBytes;
  uint64 VirtualBytesPeak;
  uint64 WorkingSet;
  uint64 WorkingSetPeak;
};

Members

The Win32_PerfFormattedData_PerfProc_Process class has these types of members:

Properties

The Win32_PerfFormattedData_PerfProc_Process class has these properties.

Caption
Data type: string
Access type: Read-only

Short textual description for the statistic or metric. This property is inherited from CIM_StatisticalInformation.

CreatingProcessID
Data type: uint32
Access type: Read-only
Qualifiers: CookingType ("PERF_COUNTER_RAWCOUNT") , Counter ("CreatingProcessID") , PerfTimeStamp ("Timestamp_PerfTime") , PerfTimeFreq ("Frequency_PerfTime")

Process identifier of the process that created this process. Be aware that the creating process may have terminated after this process was created and so this value may no longer identify a running process.

Description
Data type: string
Access type: Read-only

Textual description of the statistic or metric. This property is inherited from CIM_StatisticalInformation.

ElapsedTime
Data type: uint64
Access type: Read-only
Qualifiers: CookingType ("PERF_COUNTER_RAWCOUNT") , Counter ("ElapsedTime") , PerfTimeStamp ("Timestamp_PerfTime") , PerfTimeFreq ("Frequency_PerfTime")

Elapsed time, in seconds, that this process has been running.

For more information about using uint64 values in scripts, see Scripting in WMI.

Frequency_Object
Data type: uint64
Access type: Read-only

Frequency, in ticks per second, of Timestamp_Object. This property is defined by the provider. This property is inherited from Win32_Perf.

For more information about using uint64 values in scripts, see Scripting in WMI.

Frequency_PerfTime
Data type: uint64
Access type: Read-only

Frequency, in ticks per second, of Timestamp_Perftime. A value could be obtained by calling the Windows function QueryPerformanceCounter. This property is inherited from Win32_Perf.

For more information about using uint64 values in scripts, see Scripting in WMI.

Frequency_Sys100NS
Data type: uint64
Access type: Read-only

Frequency, in ticks per second, of Timestamp_Sys100NS (10000000). This property is inherited from Win32_Perf.

For more information about using uint64 values in scripts, see Scripting in WMI.

HandleCount
Data type: uint32
Access type: Read-only
Qualifiers: CookingType ("PERF_COUNTER_RAWCOUNT") , Counter ("HandleCount") , PerfTimeStamp ("Timestamp_PerfTime") , PerfTimeFreq ("Frequency_PerfTime")

Total number of handles that the process has open. This number is the sum of the handles currently opened by each thread in the process.

IDProcess
Data type: uint32
Access type: Read-only
Qualifiers: CookingType ("PERF_COUNTER_RAWCOUNT") , Counter ("IDProcess") , PerfTimeStamp ("Timestamp_PerfTime") , PerfTimeFreq ("Frequency_PerfTime")

Unique identifier of this process. Values for this property are reused, so they only identify a process for the lifetime of that process.

IODataBytesPerSec
Data type: uint64
Access type: Read-only
Qualifiers: CookingType ("PERF_COUNTER_BULK_COUNT") , Counter ("IODataBytesPerSec") , PerfTimeStamp ("Timestamp_PerfTime") , PerfTimeFreq ("Frequency_PerfTime")

Rate at which the process is reading and writing bytes in I/O operations. This property counts all I/O activity generated by the process, including file, network, and device I/O operations.

For more information about using uint64 values in scripts, see Scripting in WMI.

IODataOperationsPerSec
Data type: uint64
Access type: Read-only
Qualifiers: CookingType ("PERF_COUNTER_BULK_COUNT") , Counter ("IODataOperationsPerSec") , PerfTimeStamp ("Timestamp_PerfTime") , PerfTimeFreq ("Frequency_PerfTime")

Rate at which the process is issuing read and write I/O operations. This property counts all I/O activity generated by the process, including file, network, and device I/O operations.

For more information about using uint64 values in scripts, see Scripting in WMI.

IOOtherBytesPerSec
Data type: uint64
Access type: Read-only
Qualifiers: CookingType ("PERF_COUNTER_BULK_COUNT") , Counter ("IOOtherBytesPerSec") , PerfTimeStamp ("Timestamp_PerfTime") , PerfTimeFreq ("Frequency_PerfTime")

Rate at which the process is issuing bytes to I/O operations that do not involve data such as control operations. This property counts all I/O activity generated by the process, including file, network, and device I/O operations.

For more information about using uint64 values in scripts, see Scripting in WMI.

IOOtherOperationsPerSec
Data type: uint64
Access type: Read-only
Qualifiers: CookingType ("PERF_COUNTER_BULK_COUNT") , Counter ("IOOtherOperationsPerSec") , PerfTimeStamp ("Timestamp_PerfTime") , PerfTimeFreq ("Frequency_PerfTime")

Rate at which the process is issuing I/O operations that are neither read nor write operations. An example of this type of operation would be a control function. This property counts all I/O activity generated by the process, including file, network, and device I/O operations.

For more information about using uint64 values in scripts, see Scripting in WMI.

IOReadBytesPerSec
Data type: uint64
Access type: Read-only
Qualifiers: CookingType ("PERF_COUNTER_BULK_COUNT") , Counter ("IOReadBytesPerSec") , PerfTimeStamp ("Timestamp_PerfTime") , PerfTimeFreq ("Frequency_PerfTime")

Rate at which the process is reading bytes from I/O operations. This property counts all I/O activity generated by the process, including file, network, and device I/O operations.

For more information about using uint64 values in scripts, see Scripting in WMI.

IOReadOperationsPerSec
Data type: uint64
Access type: Read-only
Qualifiers: CookingType ("PERF_COUNTER_BULK_COUNT") , Counter ("IOReadOperationsPerSec") , PerfTimeStamp ("Timestamp_PerfTime") , PerfTimeFreq ("Frequency_PerfTime")

Rate at which the process is issuing read I/O operations. This property counts all I/O activity generated by the process, including file, network, and device I/O operations.

For more information about using uint64 values in scripts, see Scripting in WMI.

IOWriteBytesPerSec
Data type: uint64
Access type: Read-only
Qualifiers: CookingType ("PERF_COUNTER_BULK_COUNT") , Counter ("IOWriteBytesPerSec") , PerfTimeStamp ("Timestamp_PerfTime") , PerfTimeFreq ("Frequency_PerfTime")

Rate at which the process is writing bytes to I/O operations. This property counts all I/O activity generated by the process, including file, network, and device I/O operations.

For more information about using uint64 values in scripts, see Scripting in WMI.

IOWriteOperationsPerSec
Data type: uint64
Access type: Read-only
Qualifiers: CookingType ("PERF_COUNTER_BULK_COUNT") , Counter ("IOWriteOperationsPerSec") , PerfTimeStamp ("Timestamp_PerfTime") , PerfTimeFreq ("Frequency_PerfTime")

Rate at which the process is issuing write I/O operations. This property counts all I/O activity generated by the process, including file, network, and device I/O operations.

For more information about using uint64 values in scripts, see Scripting in WMI.

Name
Data type: string
Access type: Read-only
Qualifiers: Key, MaxLen (256)

Label by which the statistic or metric is known. When sub-classed, the property can be overridden to be a key property. This property is inherited from CIM_StatisticalInformation.

PageFaultsPerSec
Data type: uint32
Access type: Read-only
Qualifiers: CookingType ("PERF_COUNTER_COUNTER") , Counter ("PageFaultsPerSec") , PerfTimeStamp ("Timestamp_PerfTime") , PerfTimeFreq ("Frequency_PerfTime")

Rate of page faults by the threads executing in this process. A page fault occurs when a thread refers to a virtual memory page that is not in its working set in main memory. This can cause the page not to be fetched from disk if it is on the standby list and hence already in main memory, or if it is in use by another process with which the page is shared.

PageFileBytes
Data type: uint64
Access type: Read-only
Qualifiers: CookingType ("PERF_COUNTER_RAWCOUNT") , Counter ("PageFileBytes") , PerfTimeStamp ("Timestamp_PerfTime") , PerfTimeFreq ("Frequency_PerfTime")

Value, in bytes, that this process has used in the paging file(s). Paging files store pages of memory used by the process that are not contained in other files. Paging files are shared by all processes and lack of space in paging files can prevent other processes from allocating memory.

For more information about using uint64 values in scripts, see Scripting in WMI.

PageFileBytesPeak
Data type: uint64
Access type: Read-only
Qualifiers: CookingType ("PERF_COUNTER_RAWCOUNT") , Counter ("PageFileBytesPeak") , PerfTimeStamp ("Timestamp_PerfTime") , PerfTimeFreq ("Frequency_PerfTime")

Maximum number, in bytes, that this process has used in the paging file(s). Paging files are used to store pages of memory used by the process that are not contained in other files. Paging files are shared by all processes, and lack of space in paging files can prevent other processes from allocating memory.

For more information about using uint64 values in scripts, see Scripting in WMI.

PercentPrivilegedTime
Data type: uint64
Access type: Read-only
Qualifiers: CookingType ("PERF_100NSEC_TIMER") , Counter ("PercentPrivilegedTime") , PerfTimeStamp ("TimeStamp_Sys100NS") , PerfTimeFreq ("Frequency_Sys100NS")

Percentage of elapsed time that this thread has spent executing code in privileged mode. When an operating system service is called, the service often runs in privileged mode to gain access to system-private data. Such data is protected from being accessed by threads executing in user mode. Calls to the system can be explicit or implicit, such as page faults and interrupts. The operating system uses process boundaries for subsystem protection in addition to the traditional protection of user and privileged modes. These subsystem processes provide additional protection. Therefore, some work done by the operating system on behalf of your application might appear in other subsystem processes in addition to the privileged time in your process.

For more information about using uint64 values in scripts, see Scripting in WMI.

PercentProcessorTime
Data type: uint64
Access type: Read-only
Qualifiers: CookingType ("PERF_100NSEC_TIMER") , Counter ("PercentProcessorTime") , PerfTimeStamp ("TimeStamp_Sys100NS") , PerfTimeFreq ("Frequency_Sys100NS")

Percentage of elapsed time that all of the threads of this process used the processor to execute instructions. An instruction is the basic unit of execution in a computer, a thread is the object that executes instructions, and a process is the object created when a program is run. Code executed to handle some hardware interrupts and trap conditions is included in this count.

For more information about using uint64 values in scripts, see Scripting in WMI.

PercentUserTime
Data type: uint64
Access type: Read-only
Qualifiers: CookingType ("PERF_100NSEC_TIMER") , Counter ("PercentUserTime") , PerfTimeStamp ("TimeStamp_Sys100NS") , PerfTimeFreq ("Frequency_Sys100NS")

Percentage of elapsed time that this process's threads have spent executing code in user mode. Applications, environment subsystems and integral subsystems execute in user mode. Code executing in user mode cannot damage the integrity of the operating system executive, kernel, and device drivers. The operating system uses process boundaries for subsystem protection in addition to the traditional protection of user and privileged modes. These subsystem processes provide additional protection. Therefore, some work done by the operating system on behalf of your application might appear in other subsystem processes in addition to the privileged time in your process.

For more information about using uint64 values in scripts, see Scripting in WMI.

PoolNonpagedBytes
Data type: uint32
Access type: Read-only
Qualifiers: CookingType ("PERF_COUNTER_RAWCOUNT") , Counter ("PoolNonpagedBytes") , PerfTimeStamp ("Timestamp_PerfTime") , PerfTimeFreq ("Frequency_PerfTime")

Value, in bytes, in the nonpaged pool, an area of system memory (physical memory used by the operating system) for objects that cannot be written to disk, but must remain in physical memory as long as they are allocated. The PoolNonpagedBytes in Win32_PerfFormattedData_PerfOS_Memory is calculated differently than the PoolPagedBytes property in Win32_PerfFormattedData_PerfProc_Process, so it might not equal the total of PoolPagedBytes for all instances of Win32_PerfFormattedData_PerfProc_Process. This property displays the last observed value only; it is not an average.

PoolPagedBytes
Data type: uint32
Access type: Read-only
Qualifiers: CookingType ("PERF_COUNTER_RAWCOUNT") , Counter ("PoolPagedBytes") , PerfTimeStamp ("Timestamp_PerfTime") , PerfTimeFreq ("Frequency_PerfTime")

Value, in bytes, in the paged pool, an area of system memory (physical memory used by the operating system) for objects that can be written to disk when they are not being used. The PoolNonpagedBytes property in Win32_PerfFormattedData_PerfOS_Memory is calculated differently than the PoolPagedBytes property in Win32_PerfFormattedData_PerfProc_Process, so it might not equal the total of PoolPagedBytes for all instances of Win32_PerfFormattedData_PerfProc_Process. This property displays the last observed value only; it is not an average.

PriorityBase
Data type: uint32
Access type: Read-only
Qualifiers: CookingType ("PERF_COUNTER_RAWCOUNT") , Counter ("PriorityBase") , PerfTimeStamp ("Timestamp_PerfTime") , PerfTimeFreq ("Frequency_PerfTime")

Current base priority of this process. Threads within a process can raise and lower their own base priority relative to the process base priority of the process.

PrivateBytes
Data type: uint64
Access type: Read-only
Qualifiers: CookingType ("PERF_COUNTER_RAWCOUNT") , Counter ("PrivateBytes") , PerfTimeStamp ("Timestamp_PerfTime") , PerfTimeFreq ("Frequency_PerfTime")

Current value, in bytes, that this process has allocated that cannot be shared with other processes.

For more information about using uint64 values in scripts, see Scripting in WMI.

ThreadCount
Data type: uint32
Access type: Read-only
Qualifiers: CookingType ("PERF_COUNTER_RAWCOUNT") , Counter ("ThreadCount") , PerfTimeStamp ("Timestamp_PerfTime") , PerfTimeFreq ("Frequency_PerfTime")

Number of threads currently active in this process. An instruction is the basic unit of execution in a processor, and a thread is the object that executes instructions. Every running process has at least one thread.

Timestamp_Object
Data type: uint64
Access type: Read-only

Object-defined timestamp, defined by the provider. This property is inherited from Win32_Perf.

For more information about using uint64 values in scripts, see Scripting in WMI.

Timestamp_PerfTime
Data type: uint64
Access type: Read-only

High performance counter timestamp. A value could be obtained by calling the Windows function QueryPerformanceCounter. This property is inherited from Win32_Perf.

For more information about using uint64 values in scripts, see Scripting in WMI.

Timestamp_Sys100NS
Data type: uint64
Access type: Read-only

Timestamp value, in 100 nanosecond units. This property is inherited from Win32_Perf.

For more information about using uint64 values in scripts, see Scripting in WMI.

VirtualBytes
Data type: uint64
Access type: Read-only
Qualifiers: CookingType ("PERF_COUNTER_RAWCOUNT") , Counter ("VirtualBytes") , PerfTimeStamp ("Timestamp_PerfTime") , PerfTimeFreq ("Frequency_PerfTime")

Current size, in bytes, of the virtual address space that the process is using. Use of virtual address space does not necessarily imply corresponding use of either disk or main memory pages. Virtual space is finite and, by using too much, the process can limit its ability to load libraries.

For more information about using uint64 values in scripts, see Scripting in WMI.

VirtualBytesPeak
Data type: uint64
Access type: Read-only
Qualifiers: CookingType ("PERF_COUNTER_RAWCOUNT") , Counter ("VirtualBytesPeak") , PerfTimeStamp ("Timestamp_PerfTime") , PerfTimeFreq ("Frequency_PerfTime")

Maximum number, in bytes, of virtual address space that the process has used at any one time. Use of virtual address space does not necessarily imply corresponding use of either disk or main memory pages. Virtual space is finite and, by using too much, the process might limit its ability to load libraries.

For more information about using uint64 values in scripts, see Scripting in WMI.

WorkingSet
Data type: uint64
Access type: Read-only
Qualifiers: CookingType ("PERF_COUNTER_RAWCOUNT") , Counter ("WorkingSet") , PerfTimeStamp ("Timestamp_PerfTime") , PerfTimeFreq ("Frequency_PerfTime")

Maximum number, in bytes, in the working set of this process at any point in time. The working set is the set of memory pages touched recently by the threads in the process. If free memory in the computer is above a threshold, pages are left in the working set of a process even if they are not in use. When free memory falls below a threshold, pages are trimmed from working sets. If they are required, they are then soft-faulted back into the working set before they leave main memory.

For more information about using uint64 values in scripts, see Scripting in WMI.

WorkingSetPeak
Data type: uint64
Access type: Read-only
Qualifiers: CookingType ("PERF_COUNTER_LARGE_RAWCOUNT") , Counter ("WorkingSetPeak") , PerfTimeStamp ("Timestamp_PerfTime") , PerfTimeFreq ("Frequency_PerfTime")

Maximum number, in bytes, in the working set of this process at any point. The working set is the set of memory pages touched recently by the threads in the process. If free memory in the computer is above a threshold, pages are left in the working set of a process even if they are not in use. When free memory falls below a threshold, pages are trimmed from working sets. If they are required, they are then soft-faulted back into the working set before they leave main memory.

For more information about using uint64 values in scripts, see Scripting in WMI.

Remarks

The Win32_PerfFormattedData_PerfProc_Process class is derived from Win32_PerfFormattedData.

All classes derived from Win32_Perf are designed to be used with a refresher object. For more information about how to create and use a refresher object in C++, see Accessing Performance Data in C++. For more information about how to create and use a refresher object using scripts, see Refreshing WMI Data in Scripts.

The performance class and property qualifiers determine how to interpret the class data. For more information, see Class Qualifiers for Performance Counter Classes and Property Qualifiers for Performance Counter Classes.

Examples

For script code examples, see WMI Tasks for Scripts and Applications and the TechNet ScriptCenter Script Repository.

For C++ code examples, see WMI C++ Application Examples.

Requirements

Minimum supported client

Windows XP

Minimum supported server

Windows Server 2003

Namespace

\root\CIMV2

DLL

WmiPerfInst.dll;
WmiCookr.dll on Windows Server 2003 and Windows XP

See also

Performance Counter Classes
Accessing WMI Preinstalled Performance Classes
WMI Tasks: Performance Monitoring
Accessing Performance Data in Script

 

 

Show:
© 2014 Microsoft. All rights reserved.