先给个运行 top 命令之后的截图:
第一行:总体运行概况
03:52:34 --- 当前时间
up 2:14 --- 系统运行时间
5 user --- 当前登录用户数
load average:0.92,0.88,0.79 --- 系统平均负载(任务队列平均长度),1分钟、5分钟、15分钟到现在的平均负载
第二行:进程概况
176 total --- 总进程数
2 running --- 正在运行的进程数
174 sleeping --- 正在休眠的进程数
0 stopped --- 停止的进程数
0 zombie --- 僵尸进程数
第三行:cpu概况
9.8%us --- 用户进程cpu时间
4.1%sy --- 系统进程cpu时间
0.0%ni --- 改变过优先级的进程的cpu时间
84.5%id --- 空闲cpu时间
1.4%wa --- 等待输入输出cpu时间
0.0%hi --- 硬件中断cpu时间
0.2%si --- 软件中断cpu时间
0.0%st --- ???
第四行:内存概况
2055816k total --- 总内存
1403384k used --- 已使用内存
652432k free --- 空闲内存
120628k buffers --- 用作内核缓存的内存量
第五行:swap概况
3998712k total --- 交换空间大小
0k used --- 交换空间使用量
3998712k free --- 未使用的交换空间
557512k cached --- 被内存缓冲的交换空间
第六行:列名
PID:进程id号
USER:运行进程的用户
PR:进程的优先级
NI:进程的nice值;负值,代表更高优先级;正值,代表更低优先级;0,代表优先级没有改变过
VIRT:进程使用的虚拟内存大小
RES:进程使用的非交换的物理内存大小
SHR:被进程使用的共享内存的大小
S:进程状态,D(不能中断的sleep),R(运行中),S(休眠中),T(traced or stopped),Z(僵尸进程)
%CPU:进程使用CPU的百分比,是所有cpu核所用百分比的加和,可能会超过100%
%MEM:进程使用的物理内存百分比
TIME+:进程使用的CPU时间,1/100秒
COMMAND:进程命令
需要关注的值:
(1)load average:此值反映了任务队列的平均长度;如果此值超过了CPU数量,则表示当前CPU数量不足以处理任务,负载过高
(2)%us:用户CPU时间百分比;如果此值过高,可能是代码中存在死循环、或是频繁GC等
(3)%sy:系统CPU时间百分比;如果此值过高,可能是系统线程竞争激烈,上下文切换过多,应当减少线程数
(4)%wa:等待输入、输出CPU时间百分比;如果此值过高,说明系统IO速度过慢,CPU大部分时间都在等待IO完成
(5)%hi:硬件中断CPU百分比;当硬件中断发生时,CPU会优先去处理硬件中断;比如,网卡接收数据会产生硬件中断
(6)swap used:被使用的swap;此值过高代表系统因为内存不足在进行频繁的换入、换出操作,这样会影响效率,应增大内存量
(7)%CPU:进程使用CPU的百分比;此值高表示CPU在进行无阻塞运算等
常用选项:
-H:以线程方式显示
-b:以批处理方式显示
-c:显示命令行或程序名
-d:更新间隔
-n:迭代次数
-p:监视某些pid的进程
当命令行启动后,可以使用某些快捷命令
(1)H:以线程方式显示
(2)h:帮助
(3)c:显示命令行或程序名
(4)q:退出
(5)f:添加或移除域
(6)o:改变域显示
(7)F or O:选择排序域
(6)R:反序
阅读(1673) | 评论(0) | 转发(0) |