TOP命令详解

183 阅读2分钟

1 TOP 命令简介

top命令可以动态查看进程变化,监控linux的系统状况;它是常用的性能分析工具,能够实时显示系统资源各个进程占用状况。

[root@localhost ~]# top
top - 09:56:25 up 49 days, 15:19,  1 user,  load average: 0.01, 0.05, 0.05
Tasks: 147 total,   1 running, 146 sleeping,   0 stopped,   0 zombie
%Cpu(s):  0.0 us,  0.8 sy,  0.0 ni, 99.2 id,  0.0 wa,  0.0 hi,  0.0 si,  0.0 st
KiB Mem : 32781220 total,  9375268 free, 10749464 used, 12656488 buff/cache
KiB Swap:        0 total,        0 free,        0 used. 21365776 avail Mem 

  PID USER      PR  NI    VIRT    RES    SHR S  %CPU %MEM     TIME+ COMMAND                                                                                                                                      
 7150 root      20   0  157724   2156   1480 R   6.2  0.0   0:00.01 top                                                                                                                                          
    1 root      20   0   43320   3604   2308 S   0.0  0.0   1:33.24 systemd

top视图分为两部分:操作系统资源概况信息进程信息

2 操作系统资源概况

2.1 资源概况

  top - 09:56:25 up 49 days, 15:19,  1 user,  load average: 0.01, 0.05, 0.05
  • load average:1,5,15min的系统平均负载。

2.1 运行任务概况

Tasks: 147 total,   1 running, 146 sleeping,   0 stopped,   0 zombie

2.3 CPU概览

%Cpu(s) 表示CPU使用百分比,按照时间占用计算, 时间占用百分比 = 该种类型操作消耗cpu时间 / top刷新间隔时间。top每3s刷新一次

%Cpu(s):  0.0 us,  0.8 sy,  0.0 ni, 99.2 id,  0.0 wa,  0.0 hi,  0.0 si,  0.0 st
  • us:用户空间占用cpu时间百分比
  • sy:内核空间占用cpu时间百分比
  • ni:用户空间改变过优先级的进程占用cpu时间百分比
  • id:空闲时间占用cpu的百分比
  • wa:等待输入输出占用cpu时间百分比
  • hi:硬中断占用cpu时间百分比
  • si:软中断占用cpu时间百分比

2.3 内存概览(KB)

KiB Mem : 32781220 total,  9375268 free, 10749464 used, 12656488 buff/cache
KiB Swap:        0 total,        0 free,        0 used. 21365776 avail Mem 

3 进程概况

 PID USER      PR  NI    VIRT    RES    SHR S  %CPU %MEM     TIME+ COMMAND                                                                                                                                      
 7150 root      20   0  157724   2156   1480 R   6.2  0.0   0:00.01 top  
  • PID: 进程id
  • USER: 进程所有者的用户名
  • PR: 优先级
  • NI: nice值。负值表示高优先级,正值表示低优先级
  • VIRT: 进程使用的虚拟内存总量,单位kb。VIRT=SWAP+RES
  • RES: 进程使用的、未被换出的物理内存大小,单位kb。RES=CODE+DATA
  • SHR: 共享内存大小,单位kb
  • S: 进程状态。D=不可中断的睡眠状态 R=运行 S=睡眠 T=跟踪/停止 Z=僵尸进程
  • %CPU: 上次更新到现在的CPU时间占用百分比
  • %MEM: 进程使用的物理内存百分比
  • TIME+: 进程使用的CPU时间总计,单位1/100秒 -COMMAND: 命令名/命令行