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 |
可以使用的内存总量 |
相关文章: