分类: LINUX
2010-12-24 13:03:27
top监控工具可以显示CPU占用率为前几位的进程,并提供CPU的实时活动情况
usage: top -hvbcisqS -d delay -p pid -n iterations
参数 | 说明 |
---|---|
-s time | 设置屏幕刷新的延时,单位为秒,默认值5秒 |
-d count | 设置屏幕刷新的次数,刷新显示完count次后退出 |
-q | 如果经过nice授权,使用-q可以使top运行的更快一些 |
-u | 用显示User ID代替username,提高命令运行速度 |
-h | 当系统由多个CPU时,个别CPU的状态信息被隐藏,只显示平均状态值 |
-n number | 设置每一屏幕显示的进程数目,number值超过进程最大数目,则设置无效 |
-f filename | 输出重定向到给定的文件名,默认为16个进程信息 |
屏幕控制命令
当有多个屏幕内容显示时,可以用到下面的命令
键盘命令
参数 | 说明 |
---|---|
j | 如果不是最后的屏幕显示,按下j键可以切换到下一屏幕 |
k | 如果不是最初的屏幕显示,按下k键可以切换到前一屏幕 |
t | 按下k键可以切换到最初的屏幕 |
q | 退出top命令的执行,可以在任何时候键入q键即可 |
顺序显示下面三个常规的信息
14:50:01 up 83 days, 10 min, 0 users, load average: 0.75, 0.86, 0.86 164 processes: 160 sleeping, 4 running, 0 zombie, 0 stopped CPU states: cpu user nice system irq softirq iowait idle total 38.3% 0.0% 19.4% 0.0% 0.0% 0.7% 41.5% cpu00 70.8% 0.0% 26.2% 0.0% 0.0% 0.0% 2.9% cpu01 51.4% 0.0% 33.0% 0.0% 0.0% 0.9% 14.5% cpu02 25.2% 0.0% 17.4% 0.0% 0.0% 0.0% 57.2% cpu03 5.8% 0.0% 0.9% 0.0% 0.0% 1.9% 91.2%
首部的几行显示系统的几个信息,其中包括:
+ system:系统名和当前日期.
+ Load averages:1分钟、5分钟和15分钟内运行的负载平均数
一般来说只要每个CPU的当前活动进程数不大于
3那么系统的性能就是良好的,如果每个CPU的任务数大于5,那么就表示这台机器的性能有严重问题
+ 最近一次更新时存在的进程总数,并分别列出run(运行)、sleep(睡眠)、idle(停止)和zomb(‘僵尸’)状态的进程数
+ CPU state:用户占用时间的百分比、系统占用CPU时间的百分比、被nice命令改变优先级的任务占用的CPU时间百分比、以及CPU空闲时间的百分比。(被nice命令改变优先级的任务仅指那些nice值为负的任务)。花费在被nice命令改变优先级的任务上的时间也将被计算在系统和用户时间内,因此整个时间加起来可能会超过百分之百
+ avg:活动进程的平均值 (仅当多处理器系统时列出).
Mem: 4115792k av, 4056080k used, 59712k free, 0k shrd, 7072k buff 2950040k actv, 263064k in_d, 82612k in_c Swap: 8289500k av, 119824k used, 8169676k free 3517880k cached
Memory:关于内存使用情况的统计,包括实际(real)内存的活动值/总值,虚拟(virtual)内存的使用值/总值,剩余的内存。
PID USER PRI NI SIZE RSS SHARE STAT %CPU %MEM TIME CPU COMMAND 26359 oracle 16 0 687M 686M 685M S 0.5 17.0 16:42 0 oracle 25427 oracle 16 0 504M 503M 502M S 0.5 12.5 1:25 3 oracle 1605 oracle 24 0 10516 9.9M 8848 S 0.1 0.2 0:00 3 oracle 1607 oracle 24 0 10500 9.8M 8832 S 0.1 0.2 0:00 1 oracle 1 root 15 0 492 460 436 S 0.0 0.0 25:58 1 init 2 root RT 0 0 0 0 SW 0.0 0.0 0:00 0 migration/0 3 root RT 0 0 0 0 SW 0.0 0.0 0:00 1 migration/1 4 root RT 0 0 0 0 SW 0.0 0.0 0:00 2 migration/2 5 root RT 0 0 0 0 SW 0.0 0.0 0:00 3 migration/3 6 root 15 0 0 0 0 SW 0.0 0.0 0:00 1 keventd 7 root 34 19 0 0 0 SWN 0.0 0.0 0:00 0 ksoftirqd/0 8 root 34 19 0 0 0 SWN 0.0 0.0 0:00 1 ksoftirqd/1
列出系统里每一个处理器的信息,当信息在一个屏幕内无法显示时,会被分成多个屏幕显示,可以前面提到l,k和t命令查看