solaris的sar命令(三)
2013-03-01 09:45
127 查看
如何检查页出和内存 (sar
-g)
使用 sar -g 命令可显示平均页出和内存释放活动。$ sar -g 00:00:00 pgout/s ppgout/s pgfree/s pgscan/s %ufs_ipf 01:00:00 0.00 0.00 0.00 0.00 0.00 |
ps -elf 命令显示 page 守护程序使用的周期数。如果周期数很大,并且 pgfree/s
和 pgscan/s 字段的值也很大,则表明内存不足。
sar -g 命令还可表明是否回收 inode
的速率过快而引起可重用页丢失。
示例 13–8 检查页出和内存 (sar
-g)
以下示例显示 sar -g 命令的输出。
$ sar -g SunOS balmyday 5.10 s10_51 sun4u 03/18/2004 00:00:00 pgout/s ppgout/s pgfree/s pgscan/s %ufs_ipf 01:00:00 0.00 0.00 0.00 0.00 0.00 02:00:00 0.01 0.01 0.01 0.00 0.00 03:00:00 0.00 0.00 0.00 0.00 0.00 04:00:00 0.00 0.00 0.00 0.00 0.00 05:00:00 0.00 0.00 0.00 0.00 0.00 06:00:00 0.00 0.00 0.00 0.00 0.00 07:00:00 0.00 0.00 0.00 0.00 0.00 08:00:00 0.00 0.00 0.00 0.00 0.00 08:20:01 0.00 0.00 0.00 0.00 0.00 08:40:00 0.00 0.00 0.00 0.00 0.00 09:00:00 0.00 0.00 0.00 0.00 0.00 09:20:01 0.05 0.52 1.62 10.16 0.00 09:40:01 0.03 0.44 1.47 4.77 0.00 10:00:02 0.13 2.00 4.38 12.28 0.00 10:20:03 0.37 4.68 12.26 33.80 0.00 Average 0.02 0.25 0.64 1.97 0.00 |
字段名 | 说明 |
---|---|
pgout/s | 每秒的页出请求数。 |
ppgout/s | 每秒调出的页的实际数量。单个页出请求可能涉及多个页的调出。 |
pgfree/s | 每秒放置在可用列表中的页数。 |
pgscan/s | page 守护程序每秒扫描的页数。如果此值很大,则表明 page 守护程序花费大量时间来检查可用内存。此情况暗示,可能需要更多内存。 |
%ufs_ipf | 具有关联的可重用页的 iget 从可用列表中取消的 ufs inode 的百分比。这些页面被刷新,并且不能由进程回收。因此,此字段表示具有页面刷新的 igets 的百分比。如果该值很大,则表明 inode 的可用列表页面密集,并且可能需要增加 ufs inode 的数量。 |
检查内核内存分配
KMA 允许内核子系统根据需要分配和释放内存。KMA
并不是静态分配在峰值载荷下预计所需的最大内存量,而是将内存请求划分为三个类别:
小型(少于 256 字节)
大型(512 字节至 4 千字节)
超大型(大于 4 千字节)
KMA
保留两个内存池,以满足小型和大型请求。超大型请求则通过从系统页面分配器中分配内存来满足。
如果您所检查的系统用来编写使用 KMA 资源的驱动程序或 STREAMS,则 sar
-k 命令可能很有用。否则,您可能不需要它所提供的信息。使用 KMA
资源但不一定在退出前返回资源的所有驱动程序或模块都可能产生内存泄漏。内存泄漏会导致 KMA 分配的内存量随事件而增加。因此,如果 sar
-k 命令的 alloc
字段随时间稳定增加,则可能存在内存泄漏。表明存在内存泄漏的另一种情况是请求失败。如果出现此问题,内存泄漏很可能导致 KMA 无法保留和分配内存。
如果似乎存在内存泄漏,则应检查可能从 KMA 请求内存但未返回内存的所有驱动程序或
STREAMS。
如何检查内核内存分配 (sar
-k)
使用 sar -k 命令可报告内核内存分配器 (KernelMemory Allocator, KMA) 的以下活动。
$ sar -k 00:00:00 sml_mem alloc fail lg_mem alloc fail ovsz_alloc fail 01:00:00 2523136 1866512 0 18939904 14762364 0 360448 0 02:00:02 2523136 1861724 0 18939904 14778748 0 360448 0 |
[b]-k)[/b]
下面是 sar -k 输出的缩写示例。
$ sar -k SunOS balmyday 5.10 s10_51 sun4u 03/18/2004 00:00:04 sml_mem alloc fail lg_mem alloc fail ovsz_alloc fail 01:00:00 6119744 4852865 0 60243968 54334808 156 9666560 0 02:00:01 6119744 4853057 0 60243968 54336088 156 9666560 0 03:00:00 6119744 4853297 0 60243968 54335760 156 9666560 0 04:00:00 6119744 4857673 0 60252160 54375280 156 9666560 0 05:00:00 6119744 4858097 0 60252160 54376240 156 9666560 0 06:00:00 6119744 4858289 0 60252160 54375608 156 9666560 0 07:00:00 6119744 4858793 0 60252160 54442424 156 9666560 0 08:00:00 6119744 4858985 0 60252160 54474552 156 9666560 0 08:20:00 6119744 4858169 0 60252160 54377400 156 9666560 0 08:40:01 6119744 4857345 0 60252160 54376880 156 9666560 0 09:00:00 6119744 4859433 0 60252160 54539752 156 9666560 0 09:20:00 6119744 4858633 0 60252160 54410920 156 9666560 0 09:40:00 6127936 5262064 0 60530688 55619816 156 9666560 0 10:00:00 6545728 5823137 0 62996480 58391136 156 9666560 0 10:20:00 6545728 5758997 0 62996480 57907400 156 9666560 0 10:40:00 6734144 6035759 0 64389120 59743064 156 10493952 0 11:00:00 6996288 6394872 0 65437696 60935936 156 10493952 0 Average 6258044 5150556 0 61138340 55609004 156 9763900 0 |
字段名 | 说明 |
---|---|
sml_mem | KMA 在小型内存请求池中可用的内存量,以字节为单位。在此池中,小型请求小于 256 字节。 |
alloc | KMA 已从其小型内存请求池向小型内存请求分配的内存量,以字节为单位。 |
fail | 请求少量内存并失败的请求数。 |
lg_mem | KMA 在大型内存请求池中可用的内存量,以字节为单位。在此池中,大型请求介于 512 字节到 4 千字节之间。 |
alloc | KMA 已从其大型内存请求池向大型内存请求分配的内存量,以字节为单位。 |
fail | 请求大量内存并失败的请求数。 |
ovsz_alloc | 为大于 4 千字节的超大型请求分配的内存量。这些请求可通过页面分配器来满足。因此,不存在池。 |
fail | 因请求超大量内存而失败的请求数。 |
更多oracle视频教程请点击:http://crm2.qq.com/page/portalpage/wpa.php?uin=800060152&f=1&ty=1&aty=0&a=&from=6
相关文章推荐
- solaris的sar命令(三)
- Solaris 命令大全
- solaris9时区和时间设置
- solaris远程mount主机的目录
- Solaris的crontab(小结)
- [转载]solaris 10 x86 + vxvm + vcs 双机NFS failover 搭建
- 安装oracle 11gr2 rac on solaris
- opensolaris and eclipse download
- Solaris下安装部署tomcat
- Config Mysql Cluster on Solaris zones
- Solaris10中sqlplus实现上下键查找历史命令
- Solaris9 Sparc下安装JDK6.0和tomcat6.0
- linux使用sar命令进行系统监视优化
- solaris 10 的安装及其网络配置
- 在solaris 10下设置Oracle 10g自启动
- Solaris学习——安装Oracle 10g{最详细图解版}
- Solaris 11 安装图解(1)
- Solaris办事管理对象 SMF快速入门指南(1)
- Solaris 10主动安顿DVD运用步骤
- solaris的故事