码迷,mamicode.com
首页 > 其他好文 > 详细

top命令详解

时间:2016-06-30 14:49:42      阅读:202      评论:0      收藏:0      [点我收藏+]

标签:top

top - 10:30:08 up 23:09,  1 user,  load average: 0.14, 0.07, 0.05

Tasks: 176 total,   1 running, 175 sleeping,   0 stopped,   0 zombie

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

KiB Mem : 12134480 total,  2682756 free,  5481808 used,  3969916 buff/cache

KiB Swap:  6036476 total,  6036476 free,        0 used.  6363884 avail Mem 


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

 2114 qemu      20   0 2459164 2.003g  10144 S   6.3 17.3  88:44.45 qemu-kvm                                                                                               

 2166 qemu      20   0 2459164 2.002g  10140 S   2.7 17.3  35:26.26 qemu-kvm                                                                                               

 2129 qemu      20   0 4561080 1.079g  10188 S   0.3  9.3   2:53.97 qemu-kvm                                                                                               

20382 root      20   0  157684   2264   1544 R   0.3  0.0   0:00.29 top                                                                                                    

    1 root      20   0   41292   3844   2412 S   0.0  0.0   0:04.49 systemd   

上面是top命令的输出结果及格式。




详细讲解输出的含义:


系统运行时间和平均负载:与uptime显示相似

top - 10:30:08 up 23:09,  1 user,  load average: 0.14, 0.07, 0.05

当前时间

系统已运行的时间

当前登录用户的数量

相应最近5、10和15分钟内的平均负载。

可以使用‘l‘命令切换uptime的显示


任务:

Tasks: 176 total,   1 running, 175 sleeping,   0 stopped,   0 zombie

这里显示了全部进程的数量。除此之外,还有正在运行、睡眠、停止、僵尸进程的数量(僵尸是一种进程的状态)。这些进程概括信息可以用‘t‘切换显示。


CPU状态:

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

这里显示了不同模式下的所占CPU时间的百分比。这些不同的CPU时间表示:

us, user: 运行(未调整优先级的) 用户进程的CPU时间

sy,system: 运行内核进程的CPU时间

ni,niced:运行已调整优先级的用户进程的CPU时间

wa,IO wait: 用于等待IO完成的CPU时间

hi:处理硬件中断的CPU时间

si: 处理软件中断的CPU时间

st:这个虚拟机被hypervisor偷去的CPU时间(译注:如果当前处于一个hypervisor下的vm,实际上hypervisor也是要消耗一部分CPU处理时间的)。

可以使用‘t‘命令切换显示。


内存使用:free命令的结果

KiB Mem : 12134480 total,  2682756 free,  5481808 used,  3969916 buff/cache

KiB Swap:  6036476 total,  6036476 free,        0 used.  6363884 avail Mem 

第一行是物理内存使用,第二行是虚拟内存使用(交换空间)。

物理内存显示如下:全部可用内存、已使用内存、空闲内存、缓冲内存。相似地:交换部分显示的是:全部、已使用、空闲和缓冲交换空间。

内存显示可以用‘m‘命令切换。



横向列出的系统属性和状态下面,是以列显示的进程。不同的列代表下面要解释的不同属性。

默认上,top显示这些关于进程的属性:

PID

进程ID,进程的唯一标识符

USER

进程所有者的实际用户名。

PR

进程的调度优先级。这个字段的一些值是‘rt‘。这意味这这些进程运行在实时态。

NI

进程的nice值(优先级)。越小的值意味着越高的优先级。

VIRT

进程使用的虚拟内存。

RES

驻留内存大小。驻留内存是任务使用的非交换物理内存大小。

SHR

SHR是进程使用的共享内存。

S

这个是进程的状态。它有以下不同的值:

  • D - 不可中断的睡眠态。

  • R – 运行态

  • S – 睡眠态

  • T – 被跟踪或已停止

  • Z – 僵尸态

%CPU

自从上一次更新时到现在任务所使用的CPU时间百分比。

%MEM

进程使用的可用物理内存百分比。

TIME+

任务启动后到现在所使用的全部CPU时间,精确到百分之一秒。

COMMAND

运行进程所使用的命令。

还有许多在默认情况下不会显示的输出,它们可以显示进程的页错误、有效组和组ID和其他更多的信息。





‘h’: 帮助

‘’ 或者 ‘’: 刷新显示

top命令默认在一个特定间隔(3秒)后刷新显示。要手动刷新,用户可以输入回车或者空格。


‘A’: 切换交替显示模式

这个命令在全屏和交替模式间切换。在交替模式下会显示4个窗口:

Def (默认字段组)

Job (任务字段组)

Mem (内存字段组)

Usr (用户字段组)

这四组字段共有一个独立的可配置的概括区域和它自己的可配置任务区域。4个窗口中只有一个窗口是当前窗口。当前窗口的名称显示在左上方。

我们可以用‘a‘和‘w‘在4个 窗口间切换。‘a‘移到后一个窗口,‘w‘移到前一个窗口。用‘g‘命令你可以输入一个数字来选择当前窗口。


‘B’: 触发粗体显示


‘d’ 或‘s’: 设置显示的刷新间隔

当按下‘d‘或‘s‘时,你将被提示输入一个值(以秒为单位),它会以设置的值作为刷新间隔。如果你这里输入了1,top将会每秒刷新。


‘l’、‘t’、‘m’: 切换负载、任务、内存信息的显示


‘f’: 字段管理

上下光标键在字段内导航,左光标键可以选择字段,回车或右光标键确认。


‘R’: 反向排序

切换反向/常规排序。


‘c’: 触发命令

切换是否显示进程启动时的完整路径和程序名。


‘i’: 空闲任务

切换显示空闲任务。


‘V’: 树视图


‘Z’: 改变配色


‘z’: 切换彩色显示


‘x’ 或者 ‘y’

切换高亮信息:‘x‘将排序字段高亮显示(纵列);‘y‘将运行进程高亮显示(横行)。依赖于你的显示设置,你可能需要让输出彩色来看到这些高亮。


‘u’: 特定用户的进程

显示特定用户的进程。你会被提示输入用户名。空白将会显示全部用户。


‘n’ 或 ‘#’: 任务的数量

设置最大显示的任务数量


‘k’: 结束任务

top命令中最重要的一个命令之一。用于发送信号给任务(通常是结束任务)。


‘r’: 重新设置优先级




top命令带参数选项

-b: 批处理模式

-c: 命令/程序名 触发:

-d: 设置延迟间隔

-I:忽略失效过程

-i: 切换显示空闲进程

-n: 设置迭代数量

-p: 监控特定的PID

-u 或 -U: 用户名 或者 UID

-s:保密模式

-S:累积模式
















top命令详解

标签:top

原文地址:http://ting2junshui.blog.51cto.com/975290/1794458

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!