top命令详解(动态进程)

top的功能是实时监控系统内进程活动信息,也包括CPU利用率、进程状态、内存利用率等信息,为系统管理员提供实时监控系统的工具。

top - 10:40:09 up 4 days, 11:45,  1 user,  load average: 0.00, 0.01, 0.05
Tasks:  65 total,   1 running,  64 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
KiB Mem :  1883724 total,    71344 free,   846560 used,   965820 buff/cache
KiB Swap:        0 total,        0 free,        0 used.   857524 avail Mem 

  PID USER      PR  NI    VIRT    RES    SHR S %CPU %MEM     TIME+ COMMAND                                                                                                                                      
19516 root       0 -20  126596   9188   6412 S  0.7  0.5  18:02.01 AliYunDun                                                                                                                                    
    1 root      20   0  125124   3344   2112 S  0.0  0.2   0:02.94 systemd                                                                                                                                      
    2 root      20   0       0      0      0 S  0.0  0.0   0:00.00 kthreadd                                                                                                                                     
    3 root      20   0       0      0      0 S  0.0  0.0   0:00.78 ksoftirqd/0                                                                                                                                  
    5 root       0 -20       0      0      0 S  0.0  0.0   0:00.00 kworker/0:0H                                                                                                                                 
    6 root      20   0       0      0      0 S  0.0  0.0   0:02.37 kworker/u2:0                                                                                                                                 
    7 root      rt   0       0      0      0 S  0.0  0.0   0:00.00 migration/0                                                                                                                                  
    8 root      20   0       0      0      0 S  0.0  0.0   0:00.00 rcu_bh                                                                                                                                       
    9 root      20   0       0      0      0 S  0.0  0.0   1:03.46 rcu_sched                                                                                                                                    
   10 root      rt   0       0      0      0 S  0.0  0.0   0:01.73 watchdog/0                                                                                                                                   
   12 root      20   0       0      0      0 S  0.0  0.0   0:00.00 kdevtmpfs                                                                                                                                    
   13 root       0 -20       0      0      0 S  0.0  0.0   0:00.00 netns                                                                                                                                        
   14 root      20   0       0      0      0 S  0.0  0.0   0:00.07 khungtaskd                                                                                                                                   
   15 root       0 -20       0      0      0 S  0.0  0.0   0:00.00 writeback                                                                                                                                    
   16 root       0 -20       0      0      0 S  0.0  0.0   0:00.00 kintegrityd                                                                                                                                  
   17 root       0 -20       0      0      0 S  0.0  0.0   0:00.00 bioset                                                                                                                                       
   18 root       0 -20       0      0      0 S  0.0  0.0   0:00.00 kblockd 
  ...

第一行用于显示系统的活动信息

  1. 当前时间
  2. 系统启动后所经历的 时间
  3. 系统中的当前用户数
  4. 系统负载在最近1分钟、5分钟、15分钟内的负载平均值。

第二行为系统内进程信息

  1. 当前系统的进程总数
  2. 当前系统正在运行的进程数
  3. 当前系统休眠的进程数
  4. 当前系统进程停止状态的进程数
  5. 当前系统进程处于僵死状态的进程数

第三行为与CPU相关的信息

  1. us:进程在用户地址空间中消耗 CPU 时间的百分比。
  2. sy:进程在内核地址空间中消耗 CPU 时间的百分比。
  3. ni:可以通过 nice 值调整进程用户态的优先级。
  4. id:CPU 处于 idle 状态的百分比。一般情况下, us + ni + id 应该接近 100%。
  5. wa:CPU 等待磁盘 IO 操作的时间。
  6. hi & si:这两个值表示系统处理中断消耗的时间。中断分为硬中断和软中断,hi 表示处理硬中断消耗的时间,si 表示处理软中断消耗的时间。
  7. st:只有 Linux 在作为虚拟机运行时 st 才是有意义的。

第四行为内存情况

  1. total 列显示系统总的可用物理内存大小。
  2. free 列显示还有多少物理内存可用。
  3. used 列显示已经被使用的物理内存。
  4. buff/cache 列显示被 buffer 和 cache 使用的物理内存大小。

第五行为交换分区使用事情

  1. total 列显示系统总的可用交换空间大小。
  2. free 列显示还有多少交换空间可用。
  3. used 列显示已经被使用的交换空间。
  4. available 列显示还可以被应用程序使用的物理内存大小。

第六行为任务的具体分类

  1. PID:表示进程ID。
  2. USER:表示进程所有者的有效用户名称。
  3. PR:表示进程执行的优先级,PR 的值是以 Linux 内核的视角看到的进程执行的优先级。
  4. NI:从用户视角看到的进程执行优先级。注意上图中NI值为-20的两个进程,它们的PR值都是0。
  5. VIRT:表示进程使用的虚拟内存大小。
  6. RES:表示进程使用的物理内存大小。
  7. SHR:表示进程使用的共享内存的大小。
  8. S:表示进程当前的状态。S 值有下面几种:
    •   D:不可中断的睡眠状态(uninterruptible sleep)
          I:idle 状态
          R:进程在 running 队列中,正在运行或准备运行(running)
          S:睡眠状态(sleeping)
          T:停止状态(stopped by job control signal)
          t:跟踪状态(stopped by debugger during trace)
          Z:僵尸状态(zombie)
  9. %CPU:表示进程使用 CPU 的百分比。
  10. %MEM:表示进程使用内存的百分比。
  11. TIME+:表示进程累计使用的 CPU 时间。
  12. COMMAND:表示运行进程对应的程序。

常用快捷键:

 f 可以进入任务信息的配置界面添加更多的信息

 e 来进行切换,比如我可以把它切换为以 MB 为单位

 1 可以查看各个 CPU 核心单独的数据

 W 保存修改的配置

 M 以 %MEM 列排序

 N 以 PID 列排序

 P 以 %CPU 列排序

 T 以 TIME+ 列排序

 R 可以将当期排序的结果反转。

 c 来切换 COMMAND 列的显示模式

 u 查看以某个用户权限启动的进程

 h 或者是 ? 可以打开 top 命令的帮助文档

posted @ 2019-10-30 10:34  tunan96  阅读(397)  评论(0编辑  收藏  举报