linux分析工具之top命令详解
Linux系统可以通过top命令查看系统的CPU、内存、运行时间、交换分区、执行的线程等信息。通过top命令可以有效的发现系统的缺陷出在哪里。是内存不够、CPU处理能力不够、IO读写过高。
一、top选项
使用语法:top -hv | -abcHimMsS -d delay -n iterations -p pid [, pid ...]
-a:根据使用的内存排序
-d:number代表秒数,表示top命令显示的页面更新一次的间隔。默认是5秒。
-b:以批次的方式执行top。
-n:与-b配合使用,表示需要进行几次top命令的输出结果。
-p:指定特定的pid进程号进行观察。
-c:显示完整的治命令;
-I:忽略失效过程;
-s:保密模式;
-S:累积模式;
-i<时间>:设置间隔时间;
-u<用户名>:指定用户名
二、top命令页面详解
直接输入top命令得到如下结果,如图所示:
2.1、系统时间相关
依次显示了系统当前时间 、系统到目前为止已运行的时间、当前登录系统的用户数量
2.2、平均负载
系统负载(任务队列的平均长度)三个值分别为1分钟、5分钟、15分钟前到现在的平均值(根据cpu数量去判断。如果平均负载始终在1.2一下,而你有2颗cup的机器。那么基本不会出现cpu不够用的情况。也就是Load平均要小于Cpu的数量,一般性负载超过cpu的个数的5倍则表示已经超负载了)
2.3、进程相关参数
Tasks: 288 total(总进程数), 2 running(运行中的进程数), 286 sleeping(挂起的进程数), 0 stopped(停止的进程数), 0 zombie(僵尸进程数)
2.4、cpu相关参数
Cpu(s): 32.0%us(用户使用cpu占比), 2.0%sy(系统使用cpu占比), 0.0%ni(用户空间内改变过优先级的进程占用CPU百分比), 65.3%id(空闲cpu占比), 0.1%wa(等待输入输出CPU时间百分比), 0.1%hi(CPU服务于硬件中断所耗费的时间总额), 0.5%si(CPU服务软中断所耗费的时间总额), 0.0%st(Steal Time)
2.5、内存相关参数
Mem: 16466536k total(物理内存总量), 7943976k used(已使用的物理内存), 8522560k free(剩余的物理内存), 404760k buffers(缓冲区内存)
2.6、交换分区相关参数
Swap: 4194300k total(交换分区总量), 0k used(已使用交换分区), 4194300k free(交换分区剩余量), 2228400k cached(缓冲的交换分区总量)
2.7、具体进程相关参数
PID(进程PID)
USER(进程所有者)
PR(优先级)
NI(nice值,负值表示高优先级,正值表示低优先级)
VIRT(进程使用的虚拟内存总量,VIRT=SWAP+RES)
RES(进程使用的、未被换出的物理内存大小)
SHR(共享内存大小)
S(进程状态,D=不可中断的睡眠状态 R=运行 S=睡眠 T=跟踪/停止 Z=僵尸进程)
%CPU(上次更新到现在的CPU时间占用百分比)
%MEM(进程使用的物理内存百分比)
TIME+(进程使用CPU总时间)
COMMAND(命令名、命令行)
其他未显示的描述:
PPID #父进程id
UID #进程所有者的用户id
USER #进程所有者的用户名
GROUP #进程所有者的组名
TTY #启动进程的终端名。不是从终端启动的进程则显示为 ?
P #最后使用的CPU,仅在多CPU环境下有意义
TIME #进程使用的CPU时间总计,单位秒
SWAP #进程使用的虚拟内存中,被换出的大小,单位kb
CODE #可执行代码占用的物理内存大小,单位kb
DATA #可执行代码以外的部分(数据段+栈)占用的物理内存大小,单位kb
nFLT #页面错误次数
nDRT #最后一次写入到现在,被修改过的页面数。
WCHAN #若该进程在睡眠,则显示睡眠中的系统函数名
Flags #任务标志
三、top命令交互详解
当我们使用top之后,可以直接输入h或者?查看交换命令的帮助:
Help for Interactive Commands - procps version 3.2.
Window :Def: Cumulative mode Off. System: Delay 3.0 secs; Secure mode Off. Z,B Global: 'Z' change color mappings; 'B' disable/enable bold #Z改变颜色,B加粗
l,t,m Toggle Summaries: 'l' load avg; 't' task/cpu stats; 'm' mem info #t:显示和隐藏任务/cpu信息;m:显示和隐藏内存信息;l显示和隐藏平均负载信息
,I Toggle SMP view: '' single/separate states; 'I' Irix/Solaris mode #1:监控每个逻辑CPU的状况
#f:进入字段显示配置模式,可增加或者移除显示字段,按相应的字母新增或去除;输入相应的字母,按enter确认
#o:进入字段顺序设置模式,可配置显示位置顺序,按相应的字母往下移动,按“shift+相应的字母”往上移动
f,o . Fields/Columns: 'f' add or remove; 'o' change display order
F or O . Select sort field #F进入字段排序配置模式,可设置排序的字段 ; O设置默认的排序字段
<,> . Move sort field: '<' next col left; '>' next col right
R,H . Toggle: 'R' normal/reverse sort; 'H' show threads #R设置排序为正序、反序
c,i,S . Toggle: 'c' cmd name/line; 'i' idle tasks; 'S' cumulative time #i只显示正在运行的进程;c:切换显示命令名称和完整命令行
x,y . Toggle highlights: 'x' sort field; 'y' running tasks
z,b . Toggle: 'z' color/mono; 'b' bold/reverse (only if 'x' or 'y')
u . Show specific user only #输入用户,显示用户的任务
n or # . Set maximum tasks displayed k,r Manipulate tasks: 'k' kill; 'r' renice
d or s Set update interval #s设置刷新的时间--------常用
W Write configuration file
q Quit
( commands shown with '.' require a visible task display window )
Press 'h' or '?' for help with Windows,
any other key to continue
M:根据驻留内存大小进行排序。-------------常用
P:根据CPU使用百分比大小进行排序。-----------常用
交互实践:
使用1,查看每个cpu的情况
使用f命令调出Flags列:f命令交互,然后输入z,enter确认就好
然后使用M,更具内存排序(降序)
top命令默认值显示前面一部分的进程,若是想要查看全部的进程信息,则需要使用命令:top -ab -n 1
,在这个命令中,a表示按内存倒序排列,b表示将所有列输出,n表示只执行一次
更多linux文章请见:linux&shell学习系列
参考:
https://www.cnblogs.com/fuqu/p/10230385.html#_label2
linux分析工具之top命令详解的更多相关文章
- (转)Linux 系统监控、诊断工具之 top命令详解
原文:https://www.linuxidc.com/Linux/2014-12/110563.htm 目录 (1)系统.任务统计信息:(2)进程. cpu 统计信息:(3)最后两行为内存信息:3. ...
- linux分析利刃之sar命令详解
一.sar的概述 在我使用的众多linux分析工具中,sar是一个非常全面的一个分析工具,可以比较瑞士军刀,对文件的读写,系统调用的使用情况,磁盘IO,CPU相关使用情况,内存使用情况,进程活动等都可 ...
- Linux下top命令详解
Linux下top命令详解 top命令是Linux下常用的性能分析工具,能够实时显示系统中各个进程的资源占用状况,类似于Windows的任务管理器.top是一个动态显示过程,即可以通过用户按键来不断刷 ...
- 云计算:Linux运维核心管理命令详解
云计算:Linux运维核心管理命令详解 想做好运维工作,人先要学会勤快: 居安而思危,勤记而补拙,方可不断提高: 别人资料不论你用着再如何爽那也是别人的: 自己总结东西是你自身特有的一种思想与理念的展 ...
- Top 命令详解
Top 命令详解 先感受一下top命令的执行结果吧!哈哈-- top - 17:32:34 up 3 days, 8:04, 5 users, load average: 0.09, 0.12, 0. ...
- LINUX的磁盘管理du命令详解
LINUX的磁盘管理du命令详解 du(disk usage)命令可以计算文件或目录所占的磁盘空间.没有指定任何选项时, 它会测量当前工作目录与其所有子目录,分别显示各个目录所占的快数,最后才显示工作 ...
- linux sort,uniq,cut,wc命令详解
linux sort,uniq,cut,wc命令详解 sort sort 命令对 File 参数指定的文件中的行排序,并将结果写到标准输出.如果 File 参数指定多个文件,那么 sort 命令将这些 ...
- Linux的chattr与lsattr命令详解
Linux的chattr与lsattr命令详解 这两个命令是用来查看和改变文件.目录属性的,与chmod这个命令相比,chmod只是改变文件的读写.执行权限,更底层的属性控制是由chattr来改变的. ...
- (转)linux sort,uniq,cut,wc命令详解
linux sort,uniq,cut,wc命令详解 sort sort 命令对 File 参数指定的文件中的行排序,并将结果写到标准输出.如果 File 参数指定多个文件,那么 sort 命令将这些 ...
随机推荐
- python 中的一些基础算法:递归/冒泡/选择/插入
递归算法 如果一个函数包含了对自己的调用,那么这个函数就是递归的. 比如我们计算下1-7乘法的计算: def func(n): if n ==1 : return 1 return n*func(n- ...
- javascript正则总结
目录 1. 正则基础知识 2. 正则实例 3. 正则常见问题 4. 开发常用validate 5. 网上整理的正则 1. 正则基础知识 精确匹配: /test/ 匹配一类字符:匹配a,b,c任一字符/ ...
- 成为java架构师的技能
0: 数据结构算法 数组.链表.堆.栈.队列.Hash表.二叉树等; 算法思想:递推.递归.穷举.贪心.分治.动态规划.迭代.分枝界限; 排序查找 B+/B-数.红黑树.图等; 图的深度优先搜索.图的 ...
- Haar-like特征来龙去脉
Haar-like特征来龙去脉 声明:引用请注明出处http://blog.csdn.net/lg1259156776/ haar-like特征概念 haar-like特征是是计算机视觉领域一种常用的 ...
- python数据结构_递归_汉诺塔问题
已经不是第一次写这个汉诺塔问题, 其实递归还真是不太好理解, 因为递归这种是想其实有点反人类, 为什么? 因为不太清楚, 写个循环一目了然, 用递归其实要把核心逻辑理清楚, 要不根本没法进行下去 所有 ...
- jqGrid取消所有选中
// 获取所有选中行id var jqGridRowid=$("#jqGrid").jqGrid("getGridParam","selarrrow& ...
- Python函数或者类的时间参数的默认值设为datetime.date.today()引起的问题
定义了函数def main(start_date=datetime.date.today(), end_date=datetime.date.today()): pass 函数在项目启动后, end_ ...
- iOS核心动画高级技巧 - 8
iOS核心动画高级技巧 - 1 iOS核心动画高级技巧 - 2 iOS核心动画高级技巧 - 3 iOS核心动画高级技巧 - 4 iOS核心动画高级技巧 - 5 iOS核心动画高级技巧 - 6 iOS核 ...
- K8S从入门到放弃系列-(7)kubernetes集群之kube-scheduler部署
摘要: 1.Kube-scheduler作为组件运行在master节点,主要任务是把从kube-apiserver中获取的未被调度的pod通过一系列调度算法找到最适合的node,最终通过向kube-a ...
- spring boot 2.x版本:java.lang.ClassNotFoundException: org.springframework.boot.bind.RelaxedDataBinder
标题 ##搭建spring boot 2.0.3版本 使用alibaba的druid数据库连接池,com.github.pagehelper的分页插件,启动项目报错. 错误提示:java.lang.C ...