Win32_PerfRawData_PerfProc_Process class
The Win32_PerfRawData_PerfProc_Process raw performance data class provides raw data from performance counters that monitor running application program 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. The original data source is the PerfProc performance library. The corresponding formatted data class is Win32_PerfFormattedData_PerfProc_Process. Data is dynamically provided 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 Performance Counter 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_PerfRawData_PerfProc_Process : Win32_PerfRawData
{
string Caption;
uint32 CreatingProcessID;
string Description;
uint64 ElapsedTime;
uint64 Frequency_Object;
uint64 Frequency_PerfTime;
uint64 Frequency_Sys100NS;
uint32 HandleCount;
uint32 IDProcess;
uint64 IODataOperationsPerSec;
uint64 IOOtherOperationsPerSec;
uint64 IOReadBytesPerSec;
uint64 IOReadOperationsPerSec;
uint64 IOWriteBytesPerSec;
uint64 IOWriteOperationsPerSec;
uint64 IODataBytesPerSec;
uint64 IOOtherBytesPerSec;
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_PerfRawData_PerfProc_Process class has these types of members:
- Properties
Properties
The Win32_PerfRawData_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: DisplayName ("Creating Process ID") , CounterType (65536) , DefaultScale (-1) , PerfDetail (100)
Process ID of the process that created the 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: DisplayName ("Elapsed Time") , CounterType (807666944) , DefaultScale (-4) , PerfDetail (200)
Elapsed time in seconds 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 can 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: DisplayName ("Handle Count") , CounterType (65536) , DefaultScale (0) , PerfDetail (200)
Total number of handles the process has open. This number is the sum of the handles currently open by each thread in the process.
IDProcess
Data type: uint32
Access type: Read-only
Qualifiers: DisplayName ("ID Process") , CounterType (65536) , DefaultScale (-1) , PerfDetail (100)
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: DisplayName ("IO Data Bytes/sec") , CounterType (272696576) , DefaultScale (0) , PerfDetail (200)
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 to include file, network, and device I/Os.
For more information about using uint64 values in scripts, see Scripting in WMI.
IODataOperationsPerSec
Data type: uint64
Access type: Read-only
Qualifiers: DisplayName ("IO Data Operations/sec") , CounterType (272696576) , DefaultScale (0) , PerfDetail (200)
Rate at which the process is issuing read and write I/O operations. This property counts all I/O activity generated by the process to include file, network, and device I/Os.
For more information about using uint64 values in scripts, see Scripting in WMI.
IOOtherBytesPerSec
Data type: uint64
Access type: Read-only
Qualifiers: DisplayName ("IO Other Bytes/sec") , CounterType (272696576) , DefaultScale (0) , PerfDetail (200)
Rate at which the process is issuing bytes to I/O operations that don not involve data such as control operations. This property counts all I/O activity generated by the process to include file, network, and device I/Os.
For more information about using uint64 values in scripts, see Scripting in WMI.
IOOtherOperationsPerSec
Data type: uint64
Access type: Read-only
Qualifiers: DisplayName ("IO Other Operations/sec") , CounterType (272696576) , DefaultScale (0) , PerfDetail (200)
Rate at which the process is issuing I/O operations that are neither a read or a write request. An example of this type of operation would be a control function. This property counts all I/O activity generated by the process to include file, network, and device I/Os.
For more information about using uint64 values in scripts, see Scripting in WMI.
IOReadBytesPerSec
Data type: uint64
Access type: Read-only
Qualifiers: DisplayName ("IO Read Bytes/sec") , CounterType (272696576) , DefaultScale (0) , PerfDetail (200)
Rate at which the process is reading bytes from I/O operations. This property counts all I/O activity generated by the process to include file, network, and device I/Os.
For more information about using uint64 values in scripts, see Scripting in WMI.
IOReadOperationsPerSec
Data type: uint64
Access type: Read-only
Qualifiers: DisplayName ("IO Read Operations/sec") , CounterType (272696576) , DefaultScale (0) , PerfDetail (200)
Rate at which the process is issuing read I/O operations. This property counts all I/O activity generated by the process to include file, network, and device I/Os.
For more information about using uint64 values in scripts, see Scripting in WMI.
IOWriteBytesPerSec
Data type: uint64
Access type: Read-only
Qualifiers: DisplayName ("IO Write Bytes/sec") , CounterType (272696576) , DefaultScale (0) , PerfDetail (200)
Rate at which the process is writing bytes to I/O operations. This property counts all I/O activity generated by the process to include file, network, and device I/Os.
For more information about using uint64 values in scripts, see Scripting in WMI.
IOWriteOperationsPerSec
Data type: uint64
Access type: Read-only
Qualifiers: DisplayName ("IO Write Operations/sec") , CounterType (272696576) , DefaultScale (0) , PerfDetail (200)
Rate at which the process is issuing write I/O operations. This property counts all I/O activity generated by the process to include file, network, and device I/Os.
For more information about using uint64 values in scripts, see Scripting in WMI.
Name
Data type: string
Access type: Read-only
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: DisplayName ("Page Faults/sec") , CounterType (272696320) , DefaultScale (-1) , PerfDetail (100)
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: DisplayName ("Page File Bytes") , CounterType (65792) , DefaultScale (-6) , PerfDetail (200)
Current number of bytes 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.
PageFileBytesPeak
Data type: uint64
Access type: Read-only
Qualifiers: DisplayName ("Page File Bytes Peak") , CounterType (65792) , DefaultScale (-6) , PerfDetail (200)
Maximum number of bytes 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: DisplayName ("% Privileged Time") , CounterType (542180608) , DefaultScale (0) , PerfDetail (200)
Percentage of elapsed time that this thread has spent executing code in privileged mode. When the operating system system service is called, the service often runs in privileged mode to gain access to system-private data. Such data is protected from access by threads executing in user mode. Calls to the system can be explicit or implicit such as page faults and interrupts. Unlike some early operating systems, 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: DisplayName ("% Processor Time") , PerfDefault, CounterType (542180608) , DefaultScale (0) , PerfDetail (100)
Returns elapsed time that all of the threads of this process used the processor to execute instructions in 100 nanoseconds ticks. 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: DisplayName ("% User Time") , CounterType (542180608) , DefaultScale (0) , PerfDetail (200)
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: DisplayName ("Pool Nonpaged Bytes") , CounterType (65536) , DefaultScale (-5) , PerfDetail (200)
Pool Nonpaged Bytes is the number of 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. Pool Nonpaged Bytes in Win32_PerfRawData_PerfOS_Memory is calculated differently than PoolPagedBytes in Win32_PerfRawData_PerfProc_Process, so it might not equal the total of PoolPagedBytes for all instances of Win32_PerfRawData_PerfProc_Process. This property displays the last observed value only; it is not an average.
PoolPagedBytes
Data type: uint32
Access type: Read-only
Qualifiers: DisplayName ("Pool Paged Bytes") , CounterType (65536) , PerfIndex (56) , HelpIndex (57) , DefaultScale (-5) , PerfDetail (200)
Number of 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: DisplayName ("Priority Base") , CounterType (65536) , DefaultScale (0) , PerfDetail (200)
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: DisplayName ("Private Bytes") , CounterType (65792) , DefaultScale (-5) , PerfDetail (200)
Current number of bytes 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: DisplayName ("Thread Count") , CounterType (65536) , DefaultScale (0) , PerfDetail (200)
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 can 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: DisplayName ("Virtual Bytes") , CounterType (65792) , DefaultScale (-6) , PerfDetail (300)
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: DisplayName ("Virtual Bytes Peak") , CounterType (65792) , DefaultScale (-6) , PerfDetail (300)
Maximum number of 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: DisplayName ("Working Set") , CounterType (65792) , DefaultScale (-5) , PerfDetail (100)
Maximum number of 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 needed, 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: DisplayName ("Working Set Peak") , CounterType (65792) , DefaultScale (-5) , PerfDetail (200)
Maximum number of 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.
Remarks
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; WbemPerf.dll on Windows Server 2003 and Windows XP |
See also
Accessing WMI Preinstalled Performance Classes