【2023年10月07日】top详解

TOP详解

信息显示

Linux系统可以通过top命令查看系统的CPU、内存、运行时间、交换分区、执行的线程等信息。通过top命令可以有效的发现系统的缺陷出在哪里。是内存不够、CPU处理能力不够、IO读写过高….

top命令的第一行:

依次对应: 系统当前时间 , up 系统到目前为止运行的时间, 当前登陆系统的用户数量, load average后面的三个数分别是距离现在1分钟、5分钟、15分钟之前的负载情况。

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

top命令的第二行:

依次对应:tasks表示任务(进程),240 total则表示现在有240个进程,其中处于运行中的有2个,238个在休眠(挂起),stopped状态即停止的进程数为0,zombie状态即僵尸的进程数为0个。(僵尸进程就是已经死了但还占用着pid号)

top命令的第三行,cpu状态:

依次对应:

us: user - 用户空间占用cpu的百分比

sy: system - 内核空间占用cpu的百分比

ni: niced - 改变过优先级的进程占用cpu的百分比

id: idle - 空闲cpu百分比

wa: IO wait - IO等待占用cpu的百分比

hi: Hardware IRQ - 硬中断 占用cpu的百分比

si: software Interrupts - 软中断 占用cpu的百分比

st: 被hypervisor占用的CPU百分比(多个虚拟机抢CPU导致部分cpu没抢到)

top命令第四行,内存状态:

依次对应:物理内存总量(约1.8G), 空闲内存总量(约1G),使用中的内存总量(约440M),缓冲内存量 (约380M)

使用中的内存总量(used)指的是现在系统内核控制的内存数,空闲内存总量(free)是内核还未纳入其管控范围的数量。buff/cache是系统用来缓存一些打开的文件占用的内存,当程序需要使用内存时,系统会把这部分内存给程序用。因此在linux上free内存会越来越少,但不用为此担心 。

top命令第五行,swap交换分区:

依次对应:交换区总量(2G),空闲交换区总量(2G),使用的交换区总量(0),可用交换区总量

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

top命令第六行是空行

top命令第七行,各进程的监控:

依次对应:

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 — 进程名称(命令名/命令行)

二.交互命令

1.多U多核CPU监控

在top基本视图中,按键盘数字“1”,可监控每个逻辑CPU的状况:对于多核cpu进行单独每个cpu的占用情况进行查看, 见下图双核cpu:

2.高亮显示当前运行进程

敲击键盘“b” 高亮running状态的进程,top的视图变化如下:

3.进程字段排序

默认进入top时,各进程是按照CPU的占用量来排序的

敲击键盘“x”(高亮排序那一列)

可通过按” >”或” <”向右或左改变排序列

top状态的快捷键功能

h 显示帮助画面,给出一些简短的命令总结说明

k 终止一个进程。

i 忽略闲置和僵死进程。这是一个开关式命令。

q 退出程序

r 重新安排一个进程的优先级别

S 切换到累计模式

s 改变两次刷新之间的延迟时间(单位为s

f或者F 从当前显示中添加或者删除项目

o或者O 改变显示项目的顺序

l 切换显示平均负载和启动时间信息

m 切换显示内存信息

t 切换显示进程和CPU状态信息

c 切换显示命令名称和完整命令行

M 根据驻留内存大小进行排序

P 根据CPU使用百分比大小进行排序

T 根据时间/累计时间进行排序

W 将当前设置写入~/.toprc文件中

常用命令显示

  1. 显示 完整命令

top -c

  1. 设置信息更新次数

top -n 2 【表示更新两次后终止更新显示】

  1. 设置信息更新时间

top -d 3 【表示更新周期为3秒】

posted @ 2023-10-09 12:30  一只像鲨鱼的蜜蜂  阅读(62)  评论(0编辑  收藏  举报