Top命令结果展示
如果需要单独对某个进程参数进行查看,可指定
top -p xxxx 【xxxx为进程号】
下面逐行进行解释
第一行
top - 10:10:33 up 354 days, 19:44, 2 users, load average: 0.47, 0.85, 0.84
- 10:10:33 为当前时间的时分秒
- up 354 days,19:44为系统已经运行的时间 【此结果表明该系统已启动354天了】
- 2 users 当前登录的用户数
- load average: 0.47, 0.85, 0.84 机器的负载情况,结果请自行查询含义
第二行
Tasks: 210 total, 1 running, 209 sleeping, 0 stopped, 0 zombie
第二行为进程的情况统计
- 210 total 共有210个进程
- 1 running 一个正在运行
- 209 sleeping, 209个睡眠进程
- 0 stopped 0个停止的进程
- 0 zombie 0个僵尸进程
第三行
%Cpu(s): 9.6 us, 0.8 sy, 0.0 ni, 89.6 id, 0.0 wa, 0.0 hi, 0.0 si, 0.0 st
第三行为CPU使用的情况统计,均为百分比
- 9.6 us 用户空间占用CPU百分比
- 0.8 sy 内核空间占用CPU百分比
- 0.0%ni 用户进程空间内改变过优先级的进程占用CPU百分比
- 89.6 id 空闲CPU百分比
- 0.0%wa 等待输入输出的CPU时间百分比
- 0.0%hi 硬中断(Hardware IRQ)占用CPU的百分比
- 0.0%si 软中断(Software Interrupts)占用CPU的百分比
- 0.0 st 用于有虚拟cpu的情况,用来指示被虚拟机偷掉的cpu时间
第四五行
KiB Mem : 65807304 total, 432360 free, 37334904 used, 28040040 buff/cache
KiB Swap: 0 total, 0 free, 0 used. 26442184 avail Mem
两行都是内存的统计情况,放在一起讲
Mem是实际物理内存的使用情况
Swap是虚拟内存swap的情况
【swap内存是当物理内存不够用的时候,将内存中暂时用不上的数据交换到物理磁盘上的一种虚拟内存】
物理内存,单位KB
- 65807304 total 物理总内存
- 432360 free 物理空闲内存
- 37334904 used 物理使用内存
- 28040040 buff/cache 缓存内存
Swap内存,单位KB - 0 total swap总内存
- 0 free swap空闲内存
- 0 used swap 使用内存
- 26442184 avail Mem swap可用内存
进程部分参数解释
以其中一条进程的结果为例
PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND
2131 root 20 0 501620 289064 19408 S 2.7 0.4 2863:20 kube-apiserver
- PID 父进程号
- USER 进程所属用户
- PR 进程优先级
- NI nice值,正常为0, 负值表示优先级越高,正值表示优先级越低
- VIRT 需要的虚拟内存总量【自己申请的数量,但不一定给】
- RES 常驻内存大小
- S 进程状态 S sleep、R running居多
- %CPU CPU占比
- %MEM 内存占比
- TIME+ 进程使用的CPU时间总计,单位1/100秒
- COMMAND 进程名称
注意点:
1. 默认top命令进入时是按照CPU占用来排序的
2. 申请的量可能会很大,所以VIRT会很大,但是RES才是实际使用的
3. RES不包含交换到磁盘的内存【swap out】
4. 进程的内存消耗= RES - SHR