top 命令提供了实时的对系统处理器的状态监视,比较像 windows 下的任务管理器。top 命令的显示如下:
下面对以上显示信息逐行做解释,比较重要和常用的信息均用斜黑体加粗:
第一行(任务队列信息,同 uptime 命令) |
解释 |
16:19:04 |
系统当前时间 |
up 19 days,16min |
主机已运行时间 |
2 users |
用户连接数 |
load average:1.24,1.29,1.28 |
系统平均负载,统计最近1,5,15分钟的系统平均负载 |
第二行(进程信息) |
解释 |
Tasks:501 total |
进程总数 |
2 running |
正在运行的进程数 |
499 sleeping |
睡眠的进程数 |
0 stopped |
停止的进程数 |
0 zombie |
僵尸进程数 |
第三行(CPU信息,多个CPU时会超行) |
解释 |
2.3 us |
用户空间所占CPU百分比 |
0.1 sy |
内核空间占用CPU百分比 |
0.0 ni |
用户进程空间内改变过优先级的进程占用CPU百分比 |
97.1 id |
空闲CPU百分比 |
0.4 wa |
等待输入输出的CPU时间百分比 |
0.0 hi |
硬件CPU中断占用百分比 |
0.0 si |
软中断占用百分比 |
0.0 st |
虚拟机占用百分比 |
第四行(内存信息,可参考free命令) |
解释 |
26385827+total |
物理内存总量 |
688164 free |
空闲内存总量 |
7174508 used |
使用的物理内存总量 |
25599558+buff/cache |
用作内核缓存的内存量 |
第五行(swap信息) |
解释 |
4194300 total |
交换分区总量 |
4175428 free |
空闲交换区总量 |
18872 used |
已使用的交换分区总量 |
25107208 +avail Mem |
缓冲的交换区总量 |
进程信息区 |
解释 |
PID |
进程 ID |
USER |
进程所有者的用户名 |
PR |
优先级 |
NI |
nice值,负值表示高优先级,正值表示低优先级 |
VIRT |
进程使用的虚拟内存总量,单位kb |
RES |
进程使用的、未被换出的物理内存大小 |
SHR |
共享内存大小 |
S |
进程状态(D=不可中断的睡眠状态,R=运行,S=睡眠,T=跟踪/停止,Z=僵尸进程) |
%CPU |
上次更新到现在的CPU时间占用百分比 |
%MEM |
进程使用的物理内存百分比 |
TIME+ |
进程所使用的CPU时间总计,单位1/100秒 |
COMMAND |
命令名/行 |
下面再针对内存查看命令 free 作一个总结:
free打印出的内存信息主要分为两种,一种是安装的内存,一种是用磁盘虚拟的内存,就是这里的Swap。
free命令显示信息 |
解释 |
total |
去掉为硬件和操作系统保留的内存后剩余的内存总量 |
used |
当前已使用的内存总量 |
free |
空闲的或可以使用的内存总量 |
shared |
共享内存大小,主要用于进程间通信 |
buff/cache |
主要用于块设备数据缓冲,例如记录文件系统的metadata(目录、权限等等信息) |
available |
可以使用的内存总量 |