常用的几个命令主要有:
一、 PS
我们可以用ps 的 – l 选项,得到更详细的进程信息.
?; F(Flag):一系列数字的和,表示进程的当前状态。这些数字的含义为:
00:若单独显示,表示此进程已被终止。
01:进程是核心进程的一部分,常驻于系统主存。如:
sched、 vhand 、bdflush 等。
02:Parent is tracing process.
04 :Tracing parent's signal has stopped the process; the parentis waiting ( ptrace(S)).
10:进程在优先级低于或等于25时,进入休眠状态,而且不能用信号唤醒,例如在等待一个inode被创建时
20:进程被装入主存(primary memory)
40:进程被锁在主存,在事务完成前不能被置换e
?; S(state of the process )
O:进程正在处理器运行
S:休眠状态(sleeping)
R:等待运行(runable)
I:空闲状态(idle)
Z:僵尸状态(zombie)
T:跟踪状态(Traced)
B:进程正在等待更多的内存页
?; C(cpu usage):cpu利用率的估算值
二、 Sar:统计单CPU系统的系统活动情况
Cpusar:多处理器系统中单个处理器的活动情况
Mpsar:多处理器系统中处理器的总体活动情况
?; Sar -u:检查是否有逃逸进程大量占用CPU
此命令的显示有四个字段,含义如下:
%usr:执行用户进程的时间
%sys:执行系统进程的时间
%wio:等待完成I/O的时间
%idle:空闲时间
显示结果分析说明:
1) 一般情况下,%usr与%sys的值基本相等
2) 在一般的多用户系统中,%idle通常大于40%
3) 若%wio经常>15%,意味着硬盘有可能会造成瓶颈
4) 若%idle经常小于30%,意味着处理器能力较弱
5) 若%idle经常小于10%,表明处理器负担过重,或者存在逃逸进程
6) 若%idle接近于0,并且%sys又远远高于%usr,则可能是因为内存短缺引起了大量的swapping和paging
?; Sar -p:检查系统中是否有过多的等待进程
此命令有四个相关字段:
runq-sz:内存(memory)中可以运行的进程数
%runocc:进程进入内存等待的概率
swpq-sz:对换区(swap)中等待运行的进程数
%swpocc:进程进入swap等待的概率
显示结果分析汇总如下:
1) 若runq-sz经常大于2并且%runocc经常大于90%,意味着处理器负载过重
2) 若%swpocc不为0,表示系统已经置换出了进程。可以采用增加内存或减少缓冲的方法来减少swap和paging。
?; 自动统计程序:
对系统运行状况的判断不能依赖于某个特定时期的数据,它需要一个长期的积累和收集的过程。Unix5提供了两个基于月的自动统计程序sa1(以二进制形式收集、存放于目录/usr/adm/sa中,以sadd为文件名,dd是一个数字,表示当月第几天)、sa2(以可读文本形式存放在目录/usr/adm/sa中,文件名为:sardd)。这两个命令可以通过crontab启动。相关文件位于/usr/spool/cron/crontabs下sys和 root。
?; 激活自动记录:
/usr/lib/sa/sar_enable-y
?; 显示记录内容:
sar –q-f/usr/adm/sa/sa10