top命令是linux常用来进行性能分析的命令,与windows的任务管理器类似,
显示当前系统正在执行的进程的相关信息,包括进程ID、内存占用率、CPU占用率等。
在命令行执行top命令:
按行解释:
1.第一行,与uptime执行的结果相同
top - 05:35:07 up 21:31, 4 users, load average: 1.00, 1.01, 1.02
05:35:07 当前时间。
up 21:31 系统已运行时间。
4 users 4个用户在线,可以执行who命令查看。
load average: 1.00, 1.01, 1.02 平均负载:1.00, 1.01,1.01,最近1分钟、5分钟、15分钟系统的负载
2.第二行总体进程信息
Tasks: 218 total, 1 running, 217 sleeping, 0 stopped, 0 zombie
现在系统中总共有218个进程,1个进程正在运行,217个在睡眠中,0个进程停止,0个僵尸进程。
3.第三行CPU状态信息
%Cpu(s): 41.2 us, 58.8 sy, 0.0 ni, 0.0 id, 0.0 wa, 0.0 hi, 0.0 si, 0.0 st
%Cpu(s):
41.2 us 用户空间占用CPU百分比
58.8 sy 内核空间占用CPU百分比
0.0 ni 用户进程空间内改变过优先级的进程占用CPU百分比
0.0 id 空闲CPU百分比
0.0 wa 等待输入输出的CPU时间百分比
0.0 hi 硬件CPU中断占用百分比
0.0 si 软中断占用百分比
0.0 st 虚拟机占用百分比
41.2 us 用户空间占用CPU百分比
58.8 sy 内核空间占用CPU百分比
0.0 ni 用户进程空间内改变过优先级的进程占用CPU百分比
0.0 id 空闲CPU百分比
0.0 wa 等待输入输出的CPU时间百分比
0.0 hi 硬件CPU中断占用百分比
0.0 si 软中断占用百分比
0.0 st 虚拟机占用百分比
4.第四行内存状态信息
KiB Mem: 505204 total, 462592 used, 42612 free, 46464 buffers
505204 total — 物理内存总量(493MB)
462592 used — 使用中的内存总量(454MB)
42612 free — 空闲内存总量(41MB)
46464 buffers — 缓存的内存量 (45MB)
462592 used — 使用中的内存总量(454MB)
42612 free — 空闲内存总量(41MB)
46464 buffers — 缓存的内存量 (45MB)
5.第五行,swap交换分区的信息
KiB Swap: 509948 total, 307620 used, 202328 free. 207560 cached Mem
509948 total — 交换区总量(497MB)
307620 used — 使用的交换区总量(300MB)
202328 free — 空闲交换区总量(197MB)
207560 cached — 缓冲的交换区总量(202MB)
307620 used — 使用的交换区总量(300MB)
202328 free — 空闲交换区总量(197MB)
207560 cached — 缓冲的交换区总量(202MB)
6.空行
7.第七行,各进程的实时状态信息
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 — 进程名称(命令名/命令行)
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 — 进程名称(命令名/命令行)
8.如果使用top只关心某个进程
top -p 进程号