top 命令能够实时显示系统中各个进程资源占用情况。可以用它来快速排查系统性能问题。
先行概念
用户空间,常规进程所在空间,用户空间非特权区域,不能直接访问硬件设备
内核空间,操作系统所在空间,能与设备控制器通讯,控制用户区域进程运行状态
使用举例
直接使用
默认进入 top 时,各进程是按照 CPU 的占用量来排序的:
top
复制
解释:
第一行,系统时间,已运行天数,登录用户数,1 分钟,5 分钟,15 分钟负载
第二行,运行任务数
第三行,CPU 运行状态
us 用户空间占用 CPU 百分比
sy 内核空间占用 CPU 百分比
ni 改变过优先级的进程占用 CPU 百分比
id 空闲 CPU 百分比
wa IO 等待占用 CPU 的百分比
hi 硬中断(Hardware IRQ)占用 CPU 的百分比
si 软中断(Software Interrupts)占用 CPU 的百分比
第四行,内存使用
total 全部物理内存
free 空闲内存
used 已使用内存
buff/cache 缓存内存
第五行,swap 交换分区信息
第六行,空行
第七行及以下,各进程的运行状态
第七行信息,包括:
PID
USER
PR 进程优先级
NI 负值表示高优先级
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 进程名
查看每个 CPU 状态
在交互状态下按下 1
展开,查看每个 CPU 情况。
改变排序规则
按下 Shift + <
或者 >
来改变排序规则。
显示完整命令:
top -c
复制
显示指定进程信息
top -p 12002
复制
交互命令
h 显示帮助
c 切换名字与完整路径
m 切换内存显示方式
i 忽略闲置和僵死进程
r 重新设置进程优先级别
P CPU 使用百分比排序
Power by Github