Chinaunix

标题: 请教 prstat 查看进程内存使用情况的问题! [打印本页]

作者: jassonzou    时间: 2005-04-13 15:01
提示: 作者被禁止或删除 内容自动屏蔽
作者: jin_ai    时间: 2005-04-13 16:12
标题: 请教 prstat 查看进程内存使用情况的问题!
用sql语句去看具体process占用的内存量:
select s.username username,se.sid,s.serial# serial,p.spid,n.name,se.value
from v$sesstat se,
v$statname n,
v$session s,
v$process p
where n.statistic# = se.statistic#
and n.name in ('session pga memory','session pga memory max',
'session uga memory','session uga memory max')
and s.sid=se.sid
and s.username is not null
and p.addr=s.paddr
and p.spid=&spid
;
作者: jassonzou    时间: 2005-04-13 16:40
提示: 作者被禁止或删除 内容自动屏蔽
作者: 风之幻想    时间: 2005-04-13 17:13
标题: 请教 prstat 查看进程内存使用情况的问题!
建议装个TOP看的会更清晰一点.
作者: alfee    时间: 2005-04-13 17:31
标题: 请教 prstat 查看进程内存使用情况的问题!
Solaris OS软件针对连续的64-位虚拟内存设计,包括物理内存+硬盘swap,虚拟内存到实际物理内存的映射有CPU上的内存控制器完成,

Solaris 是分时的OS,所有用户的所有进程公平分CPU时间片按优先级调入内存运行,因物理内存有限,排在队尾的进程数据被扔回硬盘交换区,运行时再调入,

所以没记错的话,用prstat可见进程的大小(SIZE)和其常驻内存的大小(RSS)。
作者: jassonzou    时间: 2005-04-14 13:33
提示: 作者被禁止或删除 内容自动屏蔽
作者: ga0feng    时间: 2005-04-14 14:20
标题: 请教 prstat 查看进程内存使用情况的问题!
sar -r标示的freemem显示的是空闲的页面数,而不是用k来衡量的,它表示的数值与vmstat差不多。
它们显示的free memory都还包括高速文件缓存占用的的内存,并不是真正没有使用的内存。

比如在我的一台机子上:
vmstat显示的内存有152528k,,sar -r显示的是18933个pages,一个page大约8k,用18933乘以8,还是差不多150M.
但实际上呢,真正意义上空闲的内存只有6个M(用专门的memtool测量的),而不是152M。
作者: ga0feng    时间: 2005-04-14 14:28
标题: 请教 prstat 查看进程内存使用情况的问题!
RSS是进程驻留内存的大小,SIZE是进程总共的大小。一般SIZE要大于RSS,至于SIZE大于RSS的部分就放到了SWAP区里了。

还有就是关于oracle的问题:ORACLE中因为有一种独特的内存管理模式,所以他的很多进程显示的内存大小都一样,而且很大,总和加起来有时候都大于内存了。我觉得是每一组显示内存大小一样的进程 所总共占有的内存 就是对应每个进程显示的大小。
作者: Snowict    时间: 2005-04-14 16:08
标题: 请教 prstat 查看进程内存使用情况的问题!
memtool
pmem
这些工具可以看到真实的使用情况。
作者: rollingpig    时间: 2005-04-14 18:06
标题: 请教 prstat 查看进程内存使用情况的问题!
可以考虑用pmap

Oracle用的是shared_mem 的机制
所以,它的SGA会被记在每个Oracle process的size里。
作者: ga0feng    时间: 2005-04-14 19:29
标题: 请教 prstat 查看进程内存使用情况的问题!
每个oracle的实例都有一个sga吗?
为什么我的oracle账号里,并不是所有的oracle process的内存都一样大?有好几个不一样的值。
作者: jassonzou    时间: 2005-04-15 18:10
提示: 作者被禁止或删除 内容自动屏蔽
作者: nimysun    时间: 2010-10-25 15:43
[root@jmp-0256112009000018 ~]# ps auxww|egrep "VSZ|httpd"
USER       PID %CPU %MEM    VSZ   RSS TTY      STAT START   TIME COMMAND
apache    2570  0.0  0.0 128628  2520 ?        S    07:24   0:00 /usr/sbin/httpd
apache    2571  0.0  0.0 128628  2516 ?        S    07:24   0:00 /usr/sbin/httpd
apache    2572  0.0  0.0 128628  2516 ?        S    07:24   0:00 /usr/sbin/httpd
root      3205  0.0  0.0 128628  4580 ?        Ss   07:20   0:00 /usr/sbin/httpd
root      3219  0.0  0.0 115504  3308 ?        Ss   07:20   0:00 /usr/sbin/httpd -f /etc/nma/conf/nma.conf
apache    3236  0.0  0.0 115504  2464 ?        S    07:20   0:00 /usr/sbin/httpd -f /etc/nma/conf/nma.conf
apache    3237  0.0  0.0 115504  2480 ?        S    07:20   0:00 /usr/sbin/httpd -f /etc/nma/conf/nma.conf
apache    3238  0.0  0.0 115504  2468 ?        S    07:20   0:00 /usr/sbin/httpd -f /etc/nma/conf/nma.conf
root     26904  0.0  0.0  61160   780 pts/1    S+   07:43   0:00 egrep VSZ|httpd




欢迎光临 Chinaunix (http://bbs.chinaunix.net/) Powered by Discuz! X3.2