04-22-2009
how could I get a process Memory Usage
I use pstat API to get Process Infomation
I would like to get a process
1.process owner
2.how many physical memory and virtual memory and total memory used(KB) and usage(%)
3.a process excution file create time
4.a process excution file access time
I do't know which attribute it i need
thanks
_T_LONG_T pst_uid; /* Real UID */
_T_LONG_T pst_pid; /* Process ID */
_T_LONG_T pst_ppid; /* Parent process ID */
_T_LONG_T pst_dsize; /* # real pages used for data */
_T_LONG_T pst_tsize; /* # real pages used for text */
_T_LONG_T pst_ssize; /* # real pages used for stack */
_T_LONG_T pst_nice; /* Nice value */
struct __psdev pst_term;/* TTY of this process; -1/-1 if there isn't one */
_T_LONG_T pst_pgrp; /* Process group of this process */
_T_LONG_T pst_pri; /* priority of process */
_T_LONG_T pst_addr; /* address of process (in memory) */
_T_LONG_T pst_cpu; /* processor utilization for scheduling */
_T_LONG_T pst_utime; /* user time spent executing (in seconds) */
_T_LONG_T pst_stime; /* system time spent executing (in seconds) */
_T_LONG_T pst_start; /* time process started (seconds since epoch) */
_T_LONG_T pst_flag; /* flags associated with process */
_T_LONG_T pst_stat; /* Current status */
_T_LONG_T pst_wchan; /* If state PS_SLEEP, value sleeping on */
_T_LONG_T pst_procnum; /* processor this proc last run on */
char pst_cmd[PST_CLEN]; /* Command line for the process, if available */
_T_LONG_T pst_time; /* resident time for scheduling */
_T_LONG_T pst_cpticks; /* ticks of CPU time */
_T_LONG_T pst_cptickstotal; /* total ticks for life of process */
_T_LONG_T pst_fss; /* fair share scheduler group ID */
float pst_pctcpu; /* %CPU for this process during p_time */
_T_LONG_T pst_rssize; /* resident set size for process (private pages)*/
_T_LONG_T pst_suid; /* saved UID */
char pst_ucomm[PST_UCOMMLEN]; /* executable basename the process is running*/
_T_LONG_T pst_shmsize; /* # real pages used for shared memory */
_T_LONG_T pst_mmsize; /* # real pages used for memory mapped files */
_T_LONG_T pst_usize; /* # real pages used for U-Area & K-Stack */
_T_LONG_T pst_iosize; /* # real pages used for I/O device mapping */
10 More Discussions You Might Find Interesting
1. UNIX for Advanced & Expert Users
we are running red hat ES4 and i would like to know if there is anyway of restrcting the maximum amount of memory that a process can get? I have a single preocess that is taking >13GB.
Thanks,
Frank (4 Replies)
Discussion started by: frankkahle
4 Replies
2. Solaris
Hi All,
I am trying to find the physical memory usage by each process/users.
Can you please let me know how to get the memory usage?.
Thanks,
bsraj. (12 Replies)
Discussion started by: bsrajirs
12 Replies
3. Shell Programming and Scripting
hi all,
i want to write a script that checks the memory usage of processes and send a mail with the name of the process witch is using more then 300mb RAM.
dose anybody have a sample script or an idea how i can make it ?
PROCCESSES="snmpd sendmail"
for myVar in $PROCCESSES
do
... (7 Replies)
Discussion started by: tafil
7 Replies
4. AIX
I don't know when the process will start and end, I need write a script to trace it's cpu/memory usage when it is runing. How to write this script? (2 Replies)
Discussion started by: rainbow_bean
2 Replies
5. Programming
Hi,
I have the following two processes that's built with static libraries. Both the process have many common libraries.
-rwxr-xr-x 1 xxx xxx 152946280 Oct 15 08:38 server1
-rwxr-xr-x 1 xxx xxx 41633880 Oct 15 08:39 server2.
I built these two server processes making all the... (1 Reply)
Discussion started by: srivatsan_vn
1 Replies
6. Emergency UNIX and Linux Support
Hi,
I have the following two processes that's built with static libraries. Both the process have many common libraries.
-rwxr-xr-x 1 xxx xxx 152946280 Oct 15 08:38 server1
-rwxr-xr-x 1 xxx xxx 41633880 Oct 15 08:39 server2.
I built these two server processes making all the... (1 Reply)
Discussion started by: srivatsan_vn
1 Replies
7. UNIX for Advanced & Expert Users
Hi Guys,
I work on a AIX environment and I'm trying to write a script where I can collect all the memory used by a process. Basically I'm executing the command 'ps -fu userid' to get all the process ids and then executing the 'ps v PID' to get all the memory allocated by PPID. My question is... (2 Replies)
Discussion started by: arizah
2 Replies
8. HP-UX
Hi all,
Is there any command which shows the virtual memory usage of a particular process in HP-UX machine.
I have tried with ps, top but could not get what I want.
Kindly provide me a solution.
Thanks in Advance
ARD (4 Replies)
Discussion started by: ard
4 Replies
9. Solaris
hi all gurus:
I want to find out Solaris process memory usage, but got a bit confused, see if any one can provide me some guidance.
i tend to use prstat -a to get total memory consumption by user (I know prstat likely have a bug that simply sum up the memory, regardless if the memory being... (5 Replies)
Discussion started by: oakville
5 Replies
10. Solaris
I have multiple oracle databases on one server. All the database are running from the same user i.e. oraent.
The process for each database can be distinguished by the ps -ef command
Eg : ps -ef | grep oraentThe Output :
oraent 5361 1 0 20:58:05 ? 0:00 oracledb1... (11 Replies)
Discussion started by: yashreads
11 Replies
LEARN ABOUT DEBIAN
tau_track_memory_headroom
TAU_TRACK_MEMORY_HEA(3) TAU Instrumentation API TAU_TRACK_MEMORY_HEA(3)
NAME
TAU_TRACK_MEMORY_HEADROOM - Track the headroom (amount of memory for a process to grow) by periodically interrupting the program
SYNOPSIS
C/C++:
TAU_TRACK_MEMORY_HEADROOM(void);
Fortran:
TAU_TRACK_MEMORY_HEADROOM(void);
DESCRIPTION
Tracks the amount of memory available for the process before it runs out of free memory on the heap. This call sets up a signal handler
that is invoked every 10 seconds by an interrupt (this interval may be altered by using the TAU_SET_INTERRUPT_INTERVAL call). Inside the
interrupt handler, TAU evaluates how much memory it can allocate and associates it with the callstack using the TAU context events (See
TAU_REGISTER_CONTEXT_EVENT(3)). The user can vary the size of the callstack by setting the environment variable TAU_CALLPATH_DEPTH (default
is 2). This call is useful on machines like IBM BG/L where no virtual memory (or paging using the swap space) is present. The amount of
heap memory available to the program is limited by the amount of available physical memory. TAU executes a series of malloc calls with a
granularity of 1MB and determines the amount of memory available for the program to grow.
EXAMPLE
C/C++ :
TAU_TRACK_MEMORY_HEADROOM();
Fortran :
call TAU_TRACK_MEMORY_HEADROOM()
SEE ALSO
TAU_TRACK_MEMORY(3), TAU_SET_INTERRUPT_INTERVAL(3), TAU_ENABLE_TRACKING_MEMORY_HEADROOM(3), TAU_DISABLE_TRACKING_MEMORY_HEADROOM(3),
TAU_TRACK_MEMORY_HEADROOM_HERE(3)
08/31/2005 TAU_TRACK_MEMORY_HEA(3)