prstat O/P

Good Evening everyone,

I am confused about prstat O/P as it shows memory values which are different from actual value.Below is the O/P of prstat command and swap commands.

NPROC USERNAME SIZE RSS MEMORY TIME CPU

48 root     2113M 1590M   1.2%  45:09.39  32%
31 daemon     54G   53G    41% 528:03.20  29%
19 remedy   3581M 3529M   2.7%   0:01.14 2.0%
67 oracle     71G   70G    54%  34:26.00 0.7%
48 i3       2013M  350M   0.3%  24:25.16 0.3%
12 integral  835M  596M   0.4%   0:30.50 0.1%
13 tuxenv03  184M  134M   0.1%   1:22.14 0.0%
 2 candle     36M   21M   0.0%   0:00.06 0.0%
 1 tuxenv02 5000K 2048K   0.0%   0:00.00 0.0%
 8 tuxenv01  156M   31M   0.0%   0:00.24 0.0%
16 mqm       437M   83M   0.1%   1:08.40 0.0%
13 tuxenv04  166M  116M   0.1%   0:00.17 0.0%
 2 ucps     3032K 1848K   0.0%   0:00.48 0.0%
 1 tuxenv05 5000K 2048K   0.0%   0:00.00 0.0%

In the above O/P, my confusion is values in RED color.

bash-2.03$ prtconf |grep -i memory
Memory size: 12288 Megabytes
memory (driver not attached)

bash-2.03$ swap -s
total: 4971032k bytes allocated + 930912k reserved = 5901944k used, 9563880k available

bash-2.03$ swap -l
swapfile dev swaplo blocks free
/dev/vx/dsk/swapvol 237,7 16 4097312 4097312
/dev/vx/dsk/swapvol1 237,8 16 8388592 8388592

Please can any of you help me. Reallly it is confusing me. Total memory (Including Swap memory) is 9563880k + 12288M.

Immediate reponse would b appriciated....

prstat is very likely to be confused by shared memory segments.

What report "pmap -x " for these processes ?

Thanks for your reply Mr.jlliagre. Unfortunately i do not have root password on to my server as it is a LIVE box and i am L2 Application support.

I tried all my known ways to find out what exactly it is ??? and no way.

Please can you expand your description....:confused:

He's basically saying that prstat is not accurate because of the way shared memory segments work. If you actually need to know the real memory usage then `pmap -x {PID}` will tell you. To do so you will need to either be root or, in this case, be logged in (or use 'su') as the account that owns the processes. So if the process is owned by the Oracle user then you'll need to log in as Oracle or su to Oracle with 'su - oracle`. You will need to know the password for the oracle user to do so.

If you cannot get access to root or the oracle user then you cannot use pmap to get the memory information.

I am afraid about the word " Shared Memorysegments". What does it mean......

Please .........

I don't know. You'll have to do some research.

shared = used by more than one process
memory = you know it
segments = contiguous portions or memory

Several of your oracle processes are likely to use the very same segments which are accounted independently by the prstat command leading to the bogus statistics.

Thanks for your inputs.....:b: