1. top(1)
  2. top(1)

NAME

top - 显示系统当前的进程和其他状况

综述

top −hv|−bcHiOSs −d secs −n max −u|U user −p pid −o fld −w [cols]

描述

top命令提供了实时的对系统处理器的状态监视.如果在前台执行该命令,它将独占 前台,直到用户终止该程序为止.该命令可以按CPU使用,内存使用和执行时间对任务 进行排序..而且该命令的很多特性都可以通过交互式命令或者在个人定制文件中进 行设定.

选项

The traditional switches ‘−’ and whitespace are optional.

-d

指定每两次屏幕信息刷新之间的时间间隔

-b

以批次的方式执行,通常会搭配数据流重导向来将批次的结果输出成为档 案.

-n N

与"-b"搭配,意义是需要进行N次top的输出结果.

-p

通过指定监控进程ID来仅仅监控某个进程的状态

-q

该选项将使top没有任何延迟的进行刷新.如果调用程序有超级用户权限, 那么top将以尽可能高的优先级运行.

-S

指定累计模式

-s

使top命令在安全模式中运行.

-i

使top不显示任何闲置或者僵死进程.

-c

显示整个命令行而不只是显示命令名

交互命令

下面是在top命令执行过程中可以使用的一些交互命令.这些命令都是单字母的,如 果在命令行选项中使用了s选项,则可能其中一些命令会被屏蔽掉.

Ctrl+L

擦除并且重写屏幕

h, ?

显示帮助画面,给出一些简短的命令总结说明.

k

终止一个进程.系统将提示用户输入需要终止的进程PID,以及需要发送给 该进程什么样的信号.一般的终止进程可以使用15信号;如果不能正常结 束那就使用信号9强制结束该进程.默认值是信号15.在安全模式中此命令 被屏蔽.

i

忽略闲置和僵死进程.这是一个开关式命令.

q

退出程序.

r

重新安排一个进程的优先级别.系统提示用户输入需要改变的进程PID以及 需要设置的进程优先级值.输入一个正值将使优先级降低,反之则可以使该 进程拥有更高的优先权.默认值是10.

S

切换到累计模式.

s

改变两次刷新之间的延迟时间.系统将提示用户输入新的时间,单位为s.如 果有小数,就换算成ms.输入0值则系统将不断刷新,默认值是5s.

f, F

从当前显示中添加或者删除项目.

o, O

改变显示项目的顺序.

l

切换显示平均负载和启动时间信息.

m

切换显示内存信息.

t

切换显示进程和CPU状态信息.

c

切换显示命令名称和完整命令行.

M

根据驻留内存大小进行排序.

P

根据CPU使用百分比大小进行排序.

T

根据时间/累计时间进行排序.

W

将当前设置写入~/.toprc文件中.

统计信息区

top显示的前五行是系统整体的统计信息.第一行是任务队列信息,其内容如下:

top - 19:07:03 up  1:28,  1 user,  load average: 0.16, 0.20, 0.23

19:07:03        当前时间
up 1:28         系统运行时间,格式为时:分
1 users         当前登录用户数
load average        系统负载,即任务队列的平均长度.
            三个数值分别为1分钟、5分钟、15分钟前到现在的平均值.

第二行为进程和CPU的信息.当有多个CPU时,这些内容可能会超过两行

Tasks: 125 total,   2 running, 123 sleeping,   0 stopped,   0 zombie

Tasks : 125 total   进程总数
2 running       正在运行进程数
123 sleeping        睡眠进程数
0 stopped       停止进程数
0 zombie        僵尸进程数

最后两行为内存信息

Mem             物理内存总量
Swap            交换分区总量

内存中的内容被换出到交换区,而后又被换入到内存,但使用过的交换区尚未被覆盖 ,该数值即为这些内容已存在于内存中的交换区的大小.相应的内存再次被换出时可 不必再对交换区写入.

进程信息

统计信息区域的下方显示了各个进程的详细信息.

序号列名    含义
PID         进程id
PPID        父进程id
RUSER       Realusername
UID         进程所有者的用户id
USER        进程所有者的用户名
GROUP       进程所有者的组名
TTY         启动进程的终端名.不是从终端启动的进程则显示为?
PR          优先级
NInice      值.负值表示高优先级,正值表示低优先级
P           最后使用的CPU,仅在多CPU环境下有意义
%CPU        上次更新到现在的CPU时间占用百分比
TIME        进程使用的CPU时间总计,单位秒
TIME+       进程使用的CPU时间总计,单位1/100秒
%MEM        进程使用的物理内存百分比
VIRT        进程使用的虚拟内存总量,单位kb.VIRT=SWAP+RES
SWAP        进程使用的虚拟内存中,被换出的大小,单位kb.
RES         进程使用的、未被换出的物理内存大小,单位kb.RES=CODE+DATA
CODE        可执行代码占用的物理内存大小,单位kb
DATA        可执行代码以外的部分(数据段+栈)占用的物理内存大小,单位kb
SHR         共享内存大小,单位kb
nFLT        页面错误次数
nDRT        最后一次写入到现在,被修改过的页面数.
S           进程状态.
D=          不可中断的睡眠状态
R=          运行
S=          睡眠
T=          跟踪/停止
Z=          僵尸进程
COMMAND     命令名/命令行
WCHAN       若该进程在睡眠,则显示睡眠中的系统函数名
Flags       任务标志,参考sched.h
  1. March 2015
  2. top(1)