Process Detail (PD)
- Organization of this page
Function
The Process Detail (PD) record stores the Performance data showing the status of a process at a given point in time. A record is created for each process ID within the system.
The performance data stored in this record is the same as that stored in the Process Detail Interval (PD_PDI) record. However, if performance data collected at a point in time is the same as the performance data collected in the previous interval for the same process, performance data is stored in the same record, overwriting the data in the database. This point is different from the Process Detail Interval (PD_PDI) record. After performance data is collected at a given point in time, if the process is terminated before the next performance data is collected, no performance data is collected on that process. Furthermore, no performance data is collected on processes that are not being executed.
When this record is collected on a real-time basis, performance data on all processes that are being executed by the system is stored. This is a multi-instance record.
- Notes:
-
-
If a process has no terminal name, ?? is displayed in the Terminal (TERMINAL_NAME) field.
-
In AIX and Solaris, only the data in the fields listed below is collected on defunct processes. For all other fields, either 0 or n/a is displayed.
Accounting Flags, Argument List, Child Process List, Exit Status, Flags, Group, Group ID, Parent PID, Parent Process List, PID, Process Group ID, Program, Program/PID, Real Group, Real Group ID, Real User, Real User ID, Record Time, Record Type, Scheduler Class, Snapshot Time, Start Time, Terminal, User, User ID, Virtual Env ID (Solaris or AIX)
-
In the Priority (PRIORITY) field, process priority is determined based on the number. In Solaris, the greater the number, the higher the priority. In AIX and Linux, the smaller the number, the higher the priority. In HP-UX, the number that indicates priority differs with each process setting. You can use the following command to check the process setting:
export UNIX95=1
ps -eo pid,cls,pri
When cls is one of the following, the smaller the number, the higher the priority:
FIFO
RR
RR2
When cls is one of the following, the greater the number, the higher the priority:
HPUX
RT
-
The process flag lists that are set in the Flags (FLAGS) field and that can be judged are listed below.
• In AIX
SLOAD, SNOSWAP, SFORKSTACK, STRC, SFIXPRI, SKPROC, SSIGNOCHLD, SSIGSET, SLKDONE, STRACING, SMPTRACE, SEXIT, SORPHANPGRP, SNOCNTLPROC, SPPNOCLDSTOP, SEXECED, SJOBSESS, SJOBOFF, SEXECING, SPSEARLYALLOC
• In HP-UX
SLOAD, SSYS, SLOCK, STRC, SWTED_PARENT, SDEACTSELF, SOMASK, SWEXIT, SVFORK, SSEQL, SUANOM, SOUSIG, SOWEUPC, SSEL, SWANTS_ALLCPU, SSERIAL, SFAULTING, SDEACT, SWAITIO, STRAPPING, SWTED_DEBUGGER
• In Solaris
SSYS, SITBUSY, SWATCHOK, SKILLED, SSCONT, SZONETOP, SEXTKILLED, SUGID, SEXECED, SJCTL, SNOWAIT, SVFORK, SEXITLWPS, SCOREDUMP, SMSACCT, SLWPWRAP
-
Performance data on a terminated process cannot be collected.
-
If the target process of an instance is a zombie process, the following are displayed for the Group, Group ID, Real Group, Real Group ID, User, and User ID fields in AIX and HP-UX:
OS
Field
Content displayed
AIX
Group
Name of group with ID of 0
Real Group
Group ID
0
Real Group ID
HP-UX
Group
N/A gid = -3
Real Group
User
N/A uid = -3
Group ID
-3
Real Group ID
User ID
-
Default values and values that can be specified
Item |
Default value |
Modifiable |
---|---|---|
Collection Interval |
60 |
Yes |
Collection Offset# |
0 |
Yes |
Log |
No |
Yes |
LOGIF |
Blank |
Yes |
Over 10 Sec Collection Time |
No |
No |
Realtime Report Data Collection Mode |
Reschedule |
Yes |
- #
-
A value between 0 and 32,767 seconds can be specified (a value within the range specified for Collection Interval). Use this item to distribute the collection load, because executing data collection all at once results in concentration of the processing workload. Note that the data collection duration to be recorded is the same as the Collection Interval, regardless of the value specified for Collection Offset.
When changing the Collection Offset value, specify a value that takes into account the impact of the collection processing load.
ODBC key fields
-
PD_START_TIME
-
PD_PID
Lifetime
From process execution until termination
Record size
-
Fixed portion: 681 bytes
-
Variable portion: 2,747 bytes
Fields
PFM-View name (PFM-Manager name) |
Description |
Smry |
Format |
Delta |
Not sprtd in |
Data source |
---|---|---|---|---|---|---|
Accounting Flags(ACCOUNTING_FLAGS) |
Process operation history information. Valid only when the process is terminated (End Time is not n/a). |
-- |
string(256) |
No |
HP-UX, Solaris, AIX, Linux |
-- |
Argument List(ARGUMENT_LIST) |
Process argument list. Corresponds to the character string displayed in the COMMAND string of the ps -ef command. In AIX, the maximum size is limited to 119 bytes. In Linux, the maximum size is limited to 119 bytes. In HP-UX, the maximum size is limited to 63 bytes. In Solaris, the maximum size is limited to 79 bytes. |
-- |
string(120) |
No |
-- |
-- |
Avg I/O Kbytes(AVG_IO_KBYTES) |
Average transfer size in I/O operations (KB) |
-- |
float |
No |
HP-UX, AIX, Linux |
TOTAL_IO_KBYTES ÷ TOTAL_IO_OPS |
CPU %(CPU_PERCENT_USED) |
Average value obtained by dividing CPU usage by the number of processors (%) |
-- |
float |
No |
-- |
(((USER_CPU_TIME + SYSTEM_CPU_TIME) ÷ ELAPSED_TIME) ÷ processors-count) × 100 |
CPU % Each(CPU_PERCENT_EACH) |
Process CPU usage (%) |
-- |
float |
No |
-- |
((USER_CPU_TIME + SYSTEM_CPU_TIME) ÷ ELAPSED_TIME) × 100 |
CPU Limit(CPU_LIMIT) |
Process CPU limit. This value is defined by the RLIMIT_CPU parameter of the setrlimit system call. |
-- |
double |
No |
HP-UX, Solaris, Linux |
-- |
Child Process List(CHILD_PROCESS_LIST) |
Created child process list. The individual child processes are separated by blank spaces. If the list exceeds 128 bytes, the character becomes >. |
-- |
string(128) |
No |
-- |
Traverse a list of processes using PID |
Context Switches(CONTEXT_SWITCHES) |
Number of times context switching was executed |
-- |
ulong |
Yes |
HP-UX, Linux |
-- |
Core Size Limit(CORE_SIZE_LIMIT) |
Maximum size of the core file that can be created by a process (bytes). This value is defined by the RLIMIT_CORE parameter of the setrlimit system call. |
-- |
double |
No |
HP-UX, Solaris, Linux |
-- |
Data Size Limit(DATA_SIZE_LIMIT) |
Process data size limit (bytes). This value is defined by the RLIMIT_DATA parameter of the setrlimit system call. |
-- |
double |
No |
HP-UX, Solaris, Linux |
-- |
Elapsed Time(ELAPSED_TIME) |
Time elapsed since a process was started until the Process Detail (PD) record is stored or the process is terminated (seconds) |
-- |
utime |
No |
-- |
|
End Time(END_TIME) |
Process termination time. n/a if the process is being executed. |
-- |
time_t |
No |
HP-UX, Solaris, AIX, Linux |
START_TIME + ELAPSED_TIME |
Executable Data Kbytes(EXECUTABLE_DATA_KBYTES) |
Size of data being used (KB). To collect data for this field in Solaris, the environment variable SAUNIXPMAP must be specified in advance. Execute the following command from the command line: # SAUNIXPMAP=1 # export SAUNIXPMAP |
-- |
ulong |
No |
Linux |
-- |
Executable Text Kbytes(EXECUTABLE_TEXT_KBYTES) |
Size of the text being used (KB). To collect data for this field in Solaris, the environment variable SAUNIXPMAP must be specified in advance. Execute the following command from the command line: # SAUNIXPMAP=1 # export SAUNIXPMAP |
-- |
ulong |
No |
Linux |
-- |
Exit Status(EXIT_STATUS) |
Process termination status. Valid only when the process is terminated (End Time is not n/a). |
-- |
string(20) |
No |
HP-UX, Solaris, AIX, Linux |
-- |
File Size Limit(FILE_SIZE_LIMIT) |
Process file size limit (bytes). This value is defined by the RLIMIT_FSIZE parameter of the setrlimit system call. |
-- |
double |
No |
HP-UX, Solaris, Linux |
-- |
Flags(FLAGS) |
Process flag list. If the list exceeds 120 bytes, the character becomes >. |
-- |
string(120) |
No |
Linux |
-- |
Group(GROUP_NAME) |
Effective group name of the process |
-- |
string(256) |
No |
-- |
-- |
Group ID(GROUP_ID) |
Effective group ID of the process |
-- |
long |
No |
-- |
-- |
Hard CPU Limit(HARD_CPU_LIMIT) |
Process hard CPU limit (Hcpulimit) |
-- |
double |
No |
HP-UX, Solaris, Linux |
-- |
Hard Core Size Limit(HARD_CORE_SIZE_LIMIT) |
Process hard core size limit (bytes) (Hcorelimit) |
-- |
double |
No |
HP-UX, Solaris, Linux |
-- |
Hard Data Size Limit(HARD_DATA_SIZE_LIMIT) |
Process hard data size limit (bytes) (Hdatalimit) |
-- |
double |
No |
HP-UX, Solaris, Linux |
-- |
Hard File Size Limit(HARD_FILE_SIZE_LIMIT) |
Process hard file size limit (bytes) (Hfilesizelimit) |
-- |
double |
No |
HP-UX, Solaris, Linux |
-- |
Hard Open Files Limit(HARD_OPEN_FILES_LIMIT) |
Process hard open file limit (Hopenfileslimit) |
-- |
double |
No |
HP-UX, Solaris, AIX, Linux |
-- |
Hard Stack Size Limit(HARD_STACK_SIZE_LIMIT) |
Process hard stack size limit (bytes) (Hstacklimit) |
-- |
double |
No |
HP-UX, Solaris, Linux |
-- |
Hard Virtual Mem Size Limit(HARD_VIRTUAL_MEMORY_SIZE_LIMIT) |
Process hard virtual memory size limit (bytes) (Hrsslimit) |
-- |
double |
No |
HP-UX, Solaris, Linux |
-- |
Heap Kbytes(HEAP_KBYTES) |
Heap size used (KB) |
-- |
ulong |
No |
HP-UX, AIX, Linux |
-- |
Interval(INTERVAL) |
Interval at which the Process Detail (PD) record was stored (seconds) |
-- |
ulong |
Yes |
HP-UX, Solaris, AIX, Linux |
-- |
Major Faults(MAJOR_FAULTS) |
Number of page faults that cause physical I/O operations |
-- |
ulong |
Yes |
-- |
-- |
Mem Charge(MEMORY_CHARGE) |
Process service unit charge. Valid only when the process is terminated (End Time is not n/a). |
-- |
ulong |
No |
HP-UX, Solaris, AIX, Linux |
-- |
Minor Faults(MINOR_FAULTS) |
Number of page faults that do not cause physical I/O operations |
-- |
ulong |
Yes |
-- |
-- |
Niceness(NICENESS) |
Process niceness value. The scheduler class assigned to the process affects this value. For example, when a task is assigned to the scheduler class RT, the niceness value is 0. |
-- |
long |
No |
-- |
-- |
Open Files Limit(OPEN_FILES_LIMIT) |
Process open file limit. This value is defined by the RLIMIT_NOFILE parameter of the setrlimit system call. |
-- |
double |
No |
HP-UX, Solaris, AIX, Linux |
-- |
PID(PID) |
Process ID |
-- |
long |
No |
-- |
-- |
Parent PID(PARENT_PID) |
Process ID of a parent process |
-- |
long |
No |
-- |
-- |
Parent Process List(PARENT_PROCESS_LIST) |
Parent process list of a process. For example, 3867<1<0 means process 0 created process 1, and process 1 created process 3867. If the list exceeds 128 bytes, the character becomes >. |
-- |
string(128) |
No |
-- |
Traverse a list of processes using Parent PID |
Priority(PRIORITY) |
Process priority |
-- |
long |
No |
-- |
-- |
Process Group ID(PROCESS_GROUP_ID) |
Process group ID |
-- |
long |
No |
-- |
-- |
Program(PROGRAM_NAME) |
Program Name. Correspond to the character string displayed in the COMMAND string of the ps -e command. In AIX, the maximum size is limited to 32 bytes. In Linux, the maximum size is limited to 15 bytes. In HP-UX, the maximum size is limited to 14 bytes. In Solaris, the maximum size is limited to 15 bytes. |
-- |
string(256) |
No |
-- |
-- |
Program/PID(PROGRAM_PID) |
Name of the program executed and a process ID |
-- |
string(280) |
No |
-- |
-- |
Reads(READ_OPS) |
In AIX, this field shows the number of times RAW read operations occurred. In Solaris, this field shows the number of times Block read operation occurred. |
-- |
ulong |
Yes |
HP-UX, Linux |
-- |
Reads/sec(READ_OPS_PER_SECOND) |
Frequency at which read operations occurred (number of operations per second) |
-- |
float |
Yes |
HP-UX, Linux |
READ_OPS ÷ ELAPSED_TIME |
Real Group(REAL_GROUP_NAME) |
Real group name of the process |
-- |
string(256) |
No |
-- |
-- |
Real Group ID(REAL_GROUP_ID) |
Real group ID of the process |
-- |
long |
No |
-- |
-- |
Real Mem Kbytes(REAL_MEMORY_KBYTES) |
Physical memory size used (KB) |
-- |
ulong |
No |
-- |
-- |
Real User(REAL_USER_NAME) |
Real user name of the process |
-- |
string(256) |
No |
-- |
-- |
Real User ID(REAL_USER_ID) |
Real user ID of the process |
-- |
long |
No |
-- |
-- |
Record Time(RECORD_TIME) |
Time at which the record was created (Greenwich Mean Time) |
-- |
time_t |
No |
-- |
-- |
Record Type(INPUT_RECORD_TYPE) |
Record type. Always PD. |
-- |
char(8) |
No |
-- |
-- |
Scheduler Class(SCHEDULER_CLASS) |
Scheduling class name. One of the following values is set: TS, IA, FX, FSS, RT, SYS |
-- |
string(12) |
No |
HP-UX, AIX, Linux |
-- |
Shared Lib Kbytes(SHARED_LIBRARY_KBYTES) |
Size of the shared library used (KB) |
-- |
ulong |
No |
HP-UX, Solaris, AIX, Linux |
-- |
Shared Mem Kbytes(SHARED_MEMORY_KBYTES) |
Size of the shared memory used (KB) |
-- |
ulong |
No |
Solaris, AIX |
-- |
Signals Rcvd(NUMBER_OF_SIGNALS_RECEIVED) |
Number of signals received |
-- |
ulong |
Yes |
Linux |
-- |
Snapshot Time(LAST_SNAPSHOT_TIME) |
Time at which the last process table information was acquired. Shows the record time if the process table contains no information. |
-- |
time_t |
No |
-- |
-- |
Stack Kbytes(STACK_KBYTES) |
Size of the stack being used by the process (KB) |
-- |
ulong |
No |
AIX |
-- |
Stack Size Limit(STACK_SIZE_LIMIT) |
Process stack size limit (bytes). This value is defined by the RLIMIT_STACK parameter of the setrlimit system call. |
-- |
double |
No |
HP-UX, Solaris, Linux |
-- |
Start Time(START_TIME) |
Process start time |
-- |
time_t |
No |
-- |
-- |
State(STATE) |
Process state. One of the following values is set: - In AIX IDLE, ZOMBIE, STOP, RUN, SWAP, NONE - In HP-UX IDLE, OTHER, RUN, SLEEP, STOP, ZOMBIE, NONE - In Solaris IDLE, ONCPU, RUN, SLEEP, STOP, ZOMBIE, NONE - In Linux IDLE, RUN, SLEEP, SWAP, STOP, ZOMBIE, NONE |
-- |
string(10) |
No |
-- |
-- |
Swaps(SWAPS) |
Number of times swapping occurred |
-- |
ulong |
Yes |
Linux |
-- |
System CPU(SYSTEM_CPU_TIME) |
Time during which the system ran in the kernel mode (seconds) |
-- |
utime |
Yes |
-- |
-- |
Terminal(TERMINAL_NAME) |
Name of the executing terminal. Process without terminal name, ?? is displayed. |
-- |
string(40) |
No |
-- |
-- |
Throughput/sec(IO_KBYTES_PER_SECOND) |
I/O operation speed (KB per second) |
-- |
float |
Yes |
AIX, Linux |
TOTAL_IO_KBYTES ÷ ELAPSED_TIME |
Total I/O Kbytes(TOTAL_IO_KBYTES) |
Total size transferred in I/O operations (KB) |
-- |
float |
Yes |
AIX, Linux |
-- |
Total I/O Ops(TOTAL_IO_OPS) |
Number of I/O operations that occurred |
-- |
ulong |
Yes |
HP-UX, AIX, Linux |
READ_OPS + WRITE_OPS |
Total I/O Ops/sec(TOTAL_IO_OPS_PER_SECOND) |
Frequency at which I/O operations occurred (number of operations per second) |
-- |
float |
Yes |
HP-UX, AIX, Linux |
TOTAL_IO_OPS ÷ ELAPSED_TIME |
Total Process Kbytes(TOTAL_PROCESS_KBYTES) |
Process size (KB). In AIX, the value in this field is the same as the value displayed in the SZ string obtained by the ps -l command. In HP-UX and Solaris, the value in this field is the same as the value displayed in the SZ string obtained by the ps -l command, multiplied by the page size. In Linux, the same as the value obtained from the first column of /proc/<PID>/statm * page-size ÷ 1,024. |
-- |
ulong |
No |
-- |
-- |
User(USER_NAME) |
Effective user name of the process |
-- |
string(256) |
No |
-- |
-- |
User CPU(USER_CPU_TIME) |
Time during which the CPU ran in the user mode (seconds) |
-- |
utime |
Yes |
-- |
-- |
User ID(USER_ID) |
Effective user ID of the process |
-- |
long |
No |
-- |
-- |
Virtual Env ID(VIRTUAL_ENV_ID) |
ID of the virtual environment made by the virtual system provided by the OS. |
-- |
string(65) |
No |
HP-UX |
-- |
Virtual Mem Kbytes(VIRTUAL_MEMORY_KBYTES) |
Size of the virtual memory used (KB) |
-- |
ulong |
No |
Solaris |
-- |
Virtual Mem Size Limit(VIRTUAL_MEMORY_SIZE_LIMIT) |
Size limit of the process' virtual memory (bytes) (rsslimit). This value is defined by the RLIMIT_VMEM parameter of the setrlimit system call. |
-- |
double |
No |
HP-UX, Solaris, Linux |
-- |
Writes(WRITE_OPS) |
In AIX, this field shows the number of times RAW write operations occurred. In Solaris, this field shows the number of times Block write operation occurred. |
-- |
ulong |
Yes |
HP-UX, Linux |
-- |
Writes/sec(WRITE_OPS_PER_SECOND) |
Frequency at which write operations occurred (number of operations per second) |
-- |
float |
Yes |
HP-UX, Linux |
WRITE_OPS ÷ ELAPSED_TIME |