linux TOP命令详解

top命令经常用来监控Linux的系统状况,比如cpu、内存的使用,程序员基本都知道这个命令,但比较奇怪的是能用好它的人却很少,例如top监控视图中内存数值的含义就有不少的曲解。

本文通过一个运行中的WEB服务器的top监控截图,讲述top视图中的各种数据的含义,还包括视图中各进程(任务)的字段的排序。

top进入视图
在这里插入图片描述

top视图01
在这里插入图片描述
第一行
一共四个参数:系统当前时间、系统运行时间、当前连接用户数、系统最近1分钟、5分钟、15分钟负载情况
13:28:38 :系统当前时间
23days 4:01 系统从上次重启之后运行23天4小时01分
6 users:当前连接用户数为6
load average: 0.01,0.01,0.00 系统最近1分钟、5分钟、15分钟负载情况
第二行:
Tasks — 任务(进程),系统现在共有150个进程,其中处于运行中的有1个,149个在休眠(sleep),stoped状态的有0个,zombie状态(僵尸)的有0个。
第三行:CPU状态

0.2%us 用户空间占用的CPU百分比

0.2%us 系统空间占用的CPU百分比

0.0%ni 改变过优先级的进程所占用CPU百分比

99.6%id 空闲CPU百分比

0.0%wa IO等待占用CPU百分比

0.0% hi — 硬中断(Hardware IRQ)占用CPU的百分比

0.0% si — 软中断(Software Interrupts)占用CPU的百分比

第四行:内存状态

Mem:
8041404k total :物理内存总量 8GB
7868036k used:物理内存使用量
193368k free 物理内存空闲量
157528k buffered 缓存的内存总量

第五行:swap交换分区

2031608k total — 交换区总量(4GB)

2556k used — 使用的交换区总量(600M)

2029052k free — 空闲交换区总量(2GB)

4231276k cached — 缓冲的交换区总量(4GB)

第四行中使用中的内存总量(used)指的是现在系统内核控制的内存数,空闲内存总量(free)是内核还未纳入其管控范围的数量。纳入内核管理的内存不见得都在使用中,还包括过去使用过的现在可以被重复利用的内存,内核并不把这些可被重新使用的内存交还到free中去,因此在Linux上free内存会越来越少,但不用为此担心。
如果出于习惯去计算可用内存数,这里有个近似的计算公式:第四行的free + 第四行的buffers + 第五行的cached

对于内存监控,在top里我们要时刻监控第五行swap交换分区的used,如果这个数值在不断的变化,说明内核在不断进行内存和swap的数据交换,这是真正的内存不够用了

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值