Top命令详解01

本文主要参照top监控截图,讲述top视图中的各种数据的含义,还包括视图中各进程(任务)的字段的排序。 

将top命令输出分两部分讲解,前五行为第一部分,第七行之后是第二部分。

 

 

 上图为刚进入top的基本视图,以此为例讲解各种数据的含义

第一行
top - 14:30:42 #当前系统时间 up 7 days, 5:26, #系统已经运行了7天5小时26分钟 4 users, #当前有4个用户登录系统 load average: 0.04, 0.11, 0.10 #三个数分别是1分钟、5分钟、15分钟的负载情况。

load average数据是每隔5秒钟检查一次活跃的进程数,然后按特定算法计算出的数值。如果这个数除以逻辑CPU的数量,结果高于5的时候就表明系统在超负荷运转了。

 

第二行
Tasks: #任务(进程)
458 total, #进程总数 458 1 running, #运行中进程数 1 457 sleeping, #休眠进程数 457 0 stopped, #停止进程数 0 0 zombie #zombie(休眠)进程数 0

 

 

第三行
%Cpu(s):   #CPU状态百分比
0.4 us,    #用户空间(User)占用CPU的百分比 
0.5 sy, #内核空间占用CPU的百分比
0.0 ni, #改变过优先级的进程占用CPU的百分比
9
9.1 id, #空闲(ideal)CPU百分比
0.0 wa, #IO等待(Wait)占用CPU的百分比
0.0 hi, #硬中断(Hardware IRQ)占用CPU的百分比
0.0 si, #软中断(Software Interrupts)占用CPU的百分比
0.0 st #实时(Steal Time)

 

换算单位:1GiB = 1,024MiB = 1,048,576 KiB

第四行
KiB Mem : 内存状态(单位KiB)
15733012 total, #物理内存总量 15G 1172036 free, #空闲状态内存 1G 6517568 used, #使用状态内存 6G 8043408 buff/cache #缓存状态内存 8G

windows的内存与linux内存概念不一致。

使用中的内存总量(used)指的是现在系统内核控制的内存数,空闲内存总量(free)是内核还未纳入其管控范围的数量。纳入内核管理的内存不见得都在使用中,还包括过去使用过的现在可以被重复利用的内存,内核并不把这些可被重新使用的内存交还到free中去,因此在linux上free内存会越来越少,但不用为此担心。

 

第五行
KiB Swap: 交换分区(单位KiB)
7995388 total, #交换区总量 ~7995M 7990260 free, #空闲状态交换区 ~7990M 5128 used. #使用状态交换区 ~5M 7985364 avail Mem

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

top 运行中可以通过 top 的内部命令第一部分的显示方式进行控制。内部命令如下:

s – 改变画面更新频率

l – 关闭或开启第一部分第一行 top 信息的表示
t – 关闭或开启第一部分第二行 Tasks 和第三行 Cpus 信息的表示
m – 关闭或开启第一部分第四行 Mem 和 第五行 Swap 信息的表示

 

posted @ 2020-03-31 09:49  钟灵.毓秀  阅读(465)  评论(0编辑  收藏  举报