top - 16:53:39 up 10 min,  3 users,  load average: 0.00, 0.06, 0.07

Tasks: 128 total,   1 running, 127 sleeping,   0 stopped,   0 zombie

Cpu(s):  0.3%us,  0.3%sy,  0.0%ni, 99.3%id,  0.0%wa,  0.0%hi,  0.0%si,  0.0%st

Mem:   1914488k total,   467684k used,  1446804k free,    19604k buffers

Swap:  2047992k total,        0k used,  2047992k free,   162136k cached



 PID USER      PR  NI  VIRT  RES  SHR S %CPU %MEM    TIME+  COMMAND                                                





内容解释:

第一行

16:53:39当前时间

up 10                                                          系统运行时间,格式为时:

3 user                                                         当前登录用户数

load average: 0.00, 0.06, 0.07系统负载,即任务队列的平均长度。三个数值分别为 1分钟、5分钟、15分钟前到现在的平均值。

第二行

Tasks: 128 total                                       进程总数

1 running                                           正在运行的进程数

127 sleeping                                             睡眠的进程数

0 stopped                                            停止的进程数

0 zombie                                                    僵尸进程数

第三行

Cpu(s): 0.3% us                                      用户空间占用CPU百分比

0.3% sy                                                      内核空间占用CPU百分比

0.0% ni                                                       用户进程空间内改变过优先级的进程占用CPU百分比

99.3% id                                                     空闲CPU百分比

0.0% wa                                                     等待输入输出的CPU时间百分比

0.0% hi

0.0% si

第四行

Mem: 1914488 total                                物理内存总量

467684k used                                           使用的物理内存总量

1446804 free                                            空闲内存总量

19604k buffers                                         用作内核缓存的内存量

第五行

Swap: 2047992k total 交换区总量

0k used 使用的交换区总量

2047992k free 空闲交换区总量

162136k cached 缓冲的交换区总量

第六行

PID:进程的ID
USER
:进程所有者
PR
:进程的优先级别,越小越优先被执行
NInice
:值
VIRT
:进程占用的虚拟内存

      VIRTvirtual memory usage


           1、进程需要的虚拟内存大小,包括进程使用的库、代码、数据等

           2、假如进程申请100m的内存,但实际只使用了10m,那么它会增长100m,而不是实际的                使用量


RES:进程占用的物理内存

       RESresident memory usage 常驻内存


           1、进程当前使用的内存大小,但不包括swap out

           2、包含其他进程的共享

           3、如果申请100m的内存,实际使用10m,它只增长10m,与VIRT相反

           4、关于库占用内存的情况,它只统计加载的库文件所占内存大小


SHR:进程使用的共享内存

SHRshared memory


                            1、除了自身进程的共享内存,也包括其他进程的共享内存

2、虽然进程只使用了几个共享库的函数,但它包含了整个共享库的大小

                            3、计算某个进程所占的物理内存大小公式:RES – SHR

                            4swap out后,它将会降下来

             DATA

1、数据占用的内存。如果top没有显示,按f键可以显示出来。

                       2、真正的该程序要求的数据空间,是真正在运行中要使用的。


S:进程的状态。S表示休眠,R表示正在运行,Z表示僵死状态,N表示该进程优先值为负数
%CPU:进程占用CPU的使用率
%MEM:进程使用的物理内存和总内存的百分比
TIME+:该进程启动后占用的总的CPU时间,即占用CPU使用时间的累加值。
COMMAND:进程启动命令名称

  常用的命令:

P:按%CPU使用率排行
T:按MITE+排行
M:按%MEM排行