linux性能监控分析命令top
top命令
top命令是Linux下常用的性能分析工具,能够实时监控系统的运行状态,主要显示系统中各个进程的资源使用情况,并根据cpu及内存等进行排序。
前五行是总体的统计信息:
第一行:系统当前时间,系统运行时间(up xx days, HH:MM), 当前登录用户数,系统平均负载(3个数值分别统计最近1,5,15分钟的系统平均负载)
系统平均负载:单核CPU情况下,0.00 表示没有任何负荷,1.00表示刚好满负荷,超过1侧表示超负荷,理想值是0.7;
多核CPU负载:CPU核数 * 理想值0.7 = 理想负荷,例如:4核CPU负载不超过2.8何表示没有出现高负载。
第二行:Tasks 任务(进程):
系统现在共有的进程数
运行中进程数
休眠中的进程数
停止状态的进程数
僵尸状态进程数。
第三行,cpu状态信息,具体属性说明如下:
0.2% us:用户空间占用CPU的百分比
0.2% sy:内核空间占用CPU的百分比
0.0% ni:改变过优先级的进程占用CPU的百分比
99.2% id:空闲CPU百分比
0.4% wa:IO等待占用CPU的百分比
0.0% hi: 硬中断(Hardware IRQ)占用CPU的百分比
0.0% si:软中断(Software Interrupts)占用CPU的百分比
0.0% st:Steal time虚拟机被hypervisor偷去的CPU时间
第四行:内存信息
物理内存总量:total
空闲的内存总量:free
使用中的内存总量:used
缓存的内存总量:buffers
第五行:swap交换分区信息,与内存解释一致
各进程的具体信息
PID:进程id
USER:进程所有者
PR:进程优先级
NI:nice值,负值表示高优先级,正值表示低优先级
VIRT:进程使用的虚拟内存总量,单位kb。VIRT=SWAP+RES
RES:进程使用的、未被换出的物理内存大小,单位kb。RES=CODE+DATA
SHR:共享内存大小,单位kb
S:进程状态。D=不可中断的睡眠状态 R=运行 S=睡眠 T=跟踪/停止 Z=僵尸进程
%CPU:上次更新到现在的CPU时间占用百分比
%MEM:进程使用的物理内存百分比
TIME+:进程使用的CPU时间总计,单位1/100秒
COMMAND:进程名称(命令名/命令行)
top命令选项
-b:以批处理模式操作;
-c:显示完整的治命令;
-d:屏幕刷新间隔时间;
-I:忽略失效过程;
-s:保密模式;
-S:累积模式;
-i<时间>:设置间隔时间;
-u<用户名>:指定用户名;
-p<进程号>:指定进程;
-n<次数>:循环显示的次数。
-z:彩色显示
进程列表排序
M:根据驻留内存大小进行排序;
P:根据CPU使用百分比大小进行排序;
T:根据时间/累计时间进行排序;
z:彩色显示