How to check memory consumed by hidden/defunct/zombie process
Hi
In one of the prodcution server I am facing typical problem, in which I have 4 GB of RAM. Once the application is running there should be 2 GB free memory approx. In that server only Broadvision is running, I have shutdown the BV still the free memory it shows only 500 MB instaed of 2 GB, I would like to know which is the hidden process which consumes the Physical Memory. I am not able to track the process which utilizes high memory in top/prstat but not able to figure out. Also I have checked defunct process and killed it but it does not make any difference. Please suggest. I want to aviod the reboot of the server. Thanks Rajan |
You should provide some material to help understanding what is happening on your system.
In any case, free memory is wasted memory so there is no point complaining 1.5 GB of RAM is used as long as 500 MB is still available. |
Hi
Sorry, for late update As I got the access of server just yesterday and I found that while running prstat -s size, by adding all those memories the sum is approx 2.5 GB, in my case total physical memory is 4 GB. I would like to know which other hidden process/service are taking this memory. In case any command/script by which I can get the amount of wasted memory it will helpful. Thanks Rajan |
I'm afraid you are confusing RAM (4 GB installed) and virtual memory (prstat size column).
Can you post some commands output: Code:
cat /etc/release |
Please find herewith all o/p
cat /etc/release Solaris 10 3/05 s10_74L2a SPARC Copyright 2005 Sun Microsystems, Inc. All Rights Reserved. Use is subject to license terms. Assembled 22 January 2005 df -k /tmp Filesystem kbytes used avail capacity Mounted on swap 7708576 673608 7034968 9% /tmp Code:
vmstat 2 2 Rajan |
1.6 GB is allocated by the kernel, possibly by shared memory segments.
Please post these commands output and use code tags like I do to help readability: Code:
prstat -n 100 -Z -s rss -c 1 1 |
Please find herewith the o/p.
prstat -n 100 -Z -s rss -c 1 1 Code:
PID USERNAME SIZE RSS STATE PRI NICE TIME CPU PROCESS/NLWP Rajan |
Again, please edit your posting to use code tags to improve readability of CLI output.
To do that: click the "Edit" button on the bottom of your posting, then click the "Go advanced" button, then select the CLI transcript with your mouse, click the "#" icon (Wrap [code] tages around selection) and finally click on "Save changes". |
Hi
In the same ref. I have compared mdb output of some other good server, it seems that in above server where memory is very less the kernel's memory consumption is high. Any idea how I can identify and kill this processes, without rebooting the server and free up the memory. Good SErver Code:
Page Summary Pages MB %Tot Code:
Page Summary Pages MB %Tot Rajan |
If the kernel uses memory, it is unlikely you can free that memory by killing processes unless you count the kernel as a process, which it is not.
Are you using ZFS ? Are there a lot of or very large shared memory segments used ? run "ipcs -ma" to figure it out. |
The system is using UFS only.
also the o/p of ipcs -ma is Code:
IPC status from <running system> as of Tue May 26 22:41:19 EDT 2009 Thanks Rajan |
Okay, no shared memory issue here.
You can get detailed kernel memory usage with this command: Code:
echo ::kmastat | mdb -k |
All times are GMT -5. The time now is 08:24 PM. |