Solaris8安装内存分析工具memtool安装使用文档
前言
昨天看了一本《The Solaris Memory System》的书,里面写了很多关于内存监控和内存优化方面的东西,还介绍了一个关于内存监控的软件,总体感觉这个工具对solaris系统的内存的分析比较细,对我们解决内存方面瓶颈时,应该有很大的帮助。
本人声明如需转载请保留如下信息:
作者:SOLARIS小兵
MAIL:solarisxb@hotmail.com
FROM:WWW.CHINAUNIX.NET
一、软件安装系统环境:
1、系统硬件:SUN F280 solaris8
2、操作系统:#uname -a
SunOS db1 5.8 Generic_117350-02 sun4u sparc SUNW,Sun-Fire-280R
二、 memtool软件:
1、 软件下载:
软件最新版本:RMCmem3.9.4.tar.Z?
下载地址:http://www.solarisinternals.com/si/downloads/_memtool/
2、 RMCmem3.9.4软件支持版本:
SPARC/Solaris 2.6
SPARC/Solaris 7
SPARC/Solaris 8
SPARC/Solaris 9
x86 /Solaris 8
x86 /Solaris 9
三、memtool软件安装:
1、解压缩软件:
# uncompress RMCmem3.9.4.tar.Z
# tar xvf RMCmem3.9.4.tar
2、软件安装:
# pkgadd -d . RMCmem
注意:就在当前目录下执行pkgadd,千万不要到RMCmem下执行 pkgadd。
按照安装提示,正确安装软件即可。
下面是安装细节
Do you want to join the MemTool mailing list ? yes
Enter your email address > solarisxb@hotmail.com
Enter your name or company > mbi
Do you want the kernel module loaded now? yes
Do you want to install the module loader in /etc/rc2.d? yes
使用</opt>作为包的基本目录
## 正在处理软件包信息.
## 正在处理系统信息.
## 检查磁盘空间需求
## 检查同已经安装的软件包之间的冲突.
## 检查setuid/setgid程序。
在这个软件包中包含了正文程序,只有具有超级-用户的权限才能在这个软件包的安装过程中执行它们.
要继续安装<RMCmem>吗? Yes
安装The MemTool Package成为<RMCmem>
手动load系统driver
# /opt/RMCmem/drv/bunyipload
3、 memtool软件卸载
#pkgrm RMCmem
4、 memtool可以手动安装使用:(用pkgadd安装不成功的情况下使用)
#cd /export/home/soft/mem/RMCmem/reloc/RMCmem/drv
# ls
5.6 5.7 5.8 5.9 bunyipload bunyipunload
# chmod 755 *
# ./bunyipload
可以直接执行使用:
#/export/home/soft/mem/RMCmem/reloc/RMCmem/bin/5.8/sparcv9
#./mem
在图形界面下可以使用:
#./memtool
5、memtool安装目录:
memtool安装根目录:/opt/RMCmem/bin
MEMTOOL软件的安装结束。
五、Memtool软件使用:
注意:需要在PATH里面加入/opt/RMCmem/bin/
1、使用prtmem命令,检查系统总内存和内存的分配使用情况:
# prtmem
Total memory: 1959 Megabytes
Kernel Memory: 174 Megabytes
Application: 961 Megabytes
Executable & libs: 25 Megabytes
File Cache: 290 Megabytes
Free, file cache: 294 Megabytes
Free, free: 211 Megabytes
2、使用mem命令,整个系统的性能监控,功能和top差不多。
#mem
3、使用pmem命令,检查某一个进程的内存使用的细节:
从上面的命令可以发现,PID为2788的java进程占用的内存资源比较大,我们可以详细的使用pmem命令详细的分析2788的内存分配和使
用。
# pmem 2788
2788: /app/jdk141_03/bin/java -client -Xms32m -Xmx200m -XX:MaxPermSize=128m
Address Kbytes Resident Shared Anon Permissions Mapped File
00010000 40 40 40 - read/exec java
00028000 8 8 - 8 read/write/exec java
0002A000 54320 54128 - 54128 read/write/exec [ heap ]
B87FC000 24 24 - 24 read/write [ anon ]
B88FA000 32 32 - 32 read/write [ anon ]
B89FC000 24 24 - 24 read/write [ anon ]
备注:这个命令和/usr/proc/bin/pmap –x命令的功能是一样的。
4、使用memps命令可以监控节点的buffer cache缓冲内存:
(The list of VNODE’s in the UFS buffer cache can be displayed with the memps)
# memps -m |more
Size InUse E/F Filename
94592k 31944k F /db (inode 152073)
29968k 29504k F /app (inode 39502)
22920k 19992k F /app (inode 602679)
15264k 11848k E /export/home/oracle/ora82/bin/oracle
14680k 16k F /tmp (inode 4555208)
11848k 7512k F / (inode 78955)
11576k 8k F /export/home (inode 5895)
11056k 0k F /export/home (inode 5891)
10664k 5136k F /export/home/soft/RMCmem3.9.4.tar
7240k 0k F /usr (inode 507730)
7168k 0k F /export/home (inode 1244920)
6360k 6328k F /var/sadm/install/t.contents
4944k 0k F /export/home (inode 5890)
4840k 512k F / (inode 371729)
4696k 3920k F /app (inode 107044)
4648k 1624k F / (inode 405755)
4360k 2696k F / (inode 405702)
3952k 680k F /db (inode 152068)
3888k 0k E /export/home/oracle/ora82/lib/libclntsh.so.8.0
3680k 0k F /usr (inode 281649)
3184k 8k E /usr (inode 237176)
3168k 2568k F /export/home/soft/RICHPse.tar
3016k 2640k E /app/jdk141_03/jre/lib/sparc/client/libjvm.so
3008k 1448k F / (inode 281713)
2808k 0k E /usr (inode 338009)
2680k 360k F /db/oradata/ora82/system01.dbf
2664k 0k F /digital/mydomain/applications/app.jar
2568k 0k F /export/home (inode 1244921)
5、使用prtswap命令可以监控,系统swap使用:
# prtswap
Virtual Swap:
---------------------------------------------------------------
Total Virtual Swap Configured: 5627MB
Total Virtual Swap Reserved: 1385MB
Total Virtual Swap Free: (programs will fail if 0) 4242MB
Physical Swap Utilization: (pages swapped out)
---------------------------------------------------------------
Physical Swap Configured: 4096MB
Physical Swap Free (programs will be locked in if 0): 4096MB
6、使用命令prtlibs,监控系统类库使用内存:
# prtlibs
Library (.so) Memory: 3056 K-Bytes
六、MEMTOOL图形工具
1、 memtool主界面:
#./memtool&
2、Process Memory
可以显示每个进程的详细内存使用分配:
3、Process Matrix
(可以显示进程和映射文件的关系)
4、GUI Options(图形界面下的一些选项,可以自定义排序规则等)
欢迎大家补充和交流
msn:solarisxb@hotmail.com
END.
有些使用界面图片无法上传,感兴趣的可以给我发邮件,我可以email给你详细的word文档。[size=18:3a6678278c][/size:3a6678278c]
bear 回复于:2004-11-04 13:23:34 |
鼓励原创!
斑竹给加个【原】吧。。。 |
C.Arthur 回复于:2004-11-04 14:35:14 |
[quote:0355f88ca6="bear"]鼓励原创!
斑竹给加个【原】吧。。。[/quote:0355f88ca6] OK了,呵呵 鼓励支持 |
bear 回复于:2004-11-04 15:02:56 |
[quote:fd074c7010="C.Arthur"]
OK了,呵呵 鼓励支持[/quote:fd074c7010] 呵呵,好会哦,好久没见你了。 |
C.Arthur 回复于:2004-11-04 15:13:46 |
[quote:e56880b313="bear"]
呵呵,好会哦,好久没见你了。[/quote:e56880b313] 最近太忙了,学习PHP了,我要完蛋了,哎呀 现在有些空了哦,hoho |
sunsroad 回复于:2004-11-04 15:49:29 |
给一份资料吧:)jackey@starkgrp.com |
w2 回复于:2004-11-04 16:55:24 |
给我一份 bh11@263.net |
百灵鸟 回复于:2004-11-04 18:27:10 |
heihei9992@126.com
3Q |
race 回复于:2004-11-04 18:59:36 |
你们在 google里搜索一下The Solaris Memory System不就找到了吗?
不至于连google都不会用吧 |
billquick 回复于:2004-11-04 23:29:24 |
ok |
solaris小兵 回复于:2004-11-05 09:14:19 |
详细的word文档已经发了(heihei9992@126.com ,bh11@263.net ,jackey@starkgrp.com )!请查收! |
棉花糖 回复于:2004-11-05 13:40:19 |
miaoht2004@hotmail.com
给我也发一份吧,谢谢! |
wl189 回复于:2004-11-09 11:42:49 |
Very Good!请给我也发一份:wl189@sina.com。Thank you! |
songyupo 回复于:2004-11-09 12:09:27 |
好厉害 |
wdongtao 回复于:2005-03-21 17:17:16 |
不错不错,但是不支持9/10,
bash-3.00# prtmem no prtmem binary found for SunOS 5.10/sparcv9 bash-3.00# mem no mem binary found for SunOS 5.10/sparcv9 bash-3.00# pkgrm RMCmem |
bladeboy 回复于:2005-03-23 18:23:32 |
给我也发一份吧:wjw0918@sina.com。Thank you! |
延伸阅读
文章来源于领测软件测试网 https://www.ltesting.net/