您的位置:首页 > 运维架构

详解top命令

2011-08-27 00:27 120 查看
top命令在linux中很常用,是查看系统运行状况的有利工具。

top命令揭示的系统运行状况有很多方面,了解其中的含义对问题的排查是很有帮助的



第一行:总体运行概况

10:40:38 --- 当前时间

up 108 days,20:25 --- 服务器运行时间

1 user --- 当前登录用户数

load average:0.06,0.01,0.00 --- 系统平均负载(任务队列平均长度),1分钟、5分钟、15分钟到现在的平均负载

第二行:进程概况

520 total --- 总进程数

1 running --- 正在运行的进程数

519 sleeping --- 正在休眠的进程数

0 stopped --- 停止的进程数

0 zombie --- 僵尸进程数

第三行:cpu概况

0.1%us --- 用户进程cpu时间

0.2%sy --- 系统进程cpu时间

2.3%ni --- 改变过优先级的进程的cpu时间

97.3%id --- 空闲cpu时间

0.0%wa --- 等待输入输出cpu时间

0.0%hi --- 硬件中断cpu时间

0.0%si --- 软件中断cpu时间

0.0%st --- ???

第四行:内存概况

7680000k total --- 总内存

7661668k used --- 已使用内存

18332k free --- 空闲内存

345776k buffers --- 用作内核缓存的内存量

第五行:swap概况

2096472k total --- 交换空间大小

88k used --- 交换空间使用量

2096384k free --- 未使用的交换空间

2527768k 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:反序

更多命令:

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: