Loading

top命令


监控CPU性能一般包括:运行队列、CPU使用率和上下文切换
对于一个CPU来说,运行队列最好不超过。

top

命令功能

显示当前系统正在执行的进程的相关信息,包括进程ID、内存占用率、CPU占用率等

命令参数

-b 批处理模式显示程序信息,搭配 "n" 参数一起使用,可以用来将 top 的结果输出到档案内
-c 显示整个命令行而不只是显示命令名
-s 使top命令在安全模式运行,这将去除交互命令带来的危险。
-S 累积模式
-i 使top命令不显示任何闲置或者僵死进程
-u<用户名> 指定用户名
-p<进程号> 指定进程
-n<次数> 循环显示的次数

举例说明

ccpang@ubuntu$ top -bn 1 -i -c
top - 03:56:40 up 12:18,  1 user,  load average: 0.11, 0.09, 0.03
Tasks: 320 total,   1 running, 254 sleeping,   0 stopped,   0 zombie
%Cpu(s):  0.3 us,  0.4 sy,  0.1 ni, 99.3 id,  0.0 wa,  0.0 hi,  0.0 si,  0.0 st
KiB Mem :  4002232 total,   265100 free,  1818128 used,  1919004 buff/cache
KiB Swap:  1942896 total,  1942896 free,        0 used.  1873368 avail Mem 

   PID USER      PR  NI    VIRT    RES    SHR S %CPU %MEM     TIME+ COMMAND
  6831 ccpang    20   0   51340   4144   3368 R 10.0  0.1   0:00.04 top -bn 1 -i -c
  3988 ccpang    20   0 3020468 292932 106928 S  5.0  7.3   0:38.87 /usr/bin/gnome-shell
  4499 ccpang    20   0  728896  37696  27416 S  5.0  0.9   0:02.68 /usr/lib/gnome-terminal/gnome-terminal-server

top结果说明

系统整体统计信息

第一行:任务队列信息

  • 03:56:40: 当前时间
  • up 12:18: 已经运行了12时18分
  • 1 user :当前有1个用户登录
  • load average:分别是1分钟、5分钟、10分钟的负载情况。

第二行:任务(进程)

系统现在有320个进程,1个运行,254个休眠、0个停止,0个僵死(zombie)

第三行:CPU占用

  • 0.3%us:用户空间占用CPU的百分比
  • 0.4%sy:内核空间占用CPU的百分比
  • 0.1%ni:改变过优先级的进程占用的CPU百分比
  • 99.3%id:空闲CPU的占比
  • 0.0%wa:IO等待占用CPU的百分比
  • 0.0%hi:硬中断占用CPU的百分比
  • 0.0%si:软中断占用的CPU百分比

第四行:内存状态(单位kib)

  • 4002232 total :物理内存总量3.81G
  • 265100 free: 剩余的内存总量(258M)
  • 1818128 used:使用的内存总量(1.73G)
  • 1919004 buff/cache:用作内核缓存的内存量(1.83G)

buffer是即将被写入磁盘的,而cache是被从磁盘中读出来的。buffer是用于存储速度不同步的设备或优先级不同的设备之间传输数据的区域。cache经常用于磁盘的I/O请求上,如果有多个进程都要访问某个文件,于是该文件就要被做成cache以便下次访问。

第五行:swap交换分区信息(单位kib)

  • 1942896 total:交换区总量(1.85G)
  • 1942896 free: 剩余的交换区总量(1.85G)
  • 0 used:空闲的交换区分量(0G)
  • 1873368 avail Mem: 缓冲区的交换区总量(1.78G)

avail Mem:表示可用于进程下一次分配的物理内存数量。

我们在观察内存使用情况时,只要没发现用swap的交换空间,就不必担心自己的内存太少。

进程信息区

  PID USER      PR  NI    VIRT    RES    SHR S %CPU %MEM     TIME+ COMMAND
  6831 ccpang    20   0   51340   4144   3368 R 10.0  0.1   0:00.04 top -bn 1 -i -c
  3988 ccpang    20   0 3020468 292932 106928 S  5.0  7.3   0:38.87 /usr/bin/gnome-shell
  4499 ccpang    20   0  728896  37696  27416 S  5.0  0.9   0:02.68 /usr/lib/gnome-terminal/gnome-terminal-server

  • PID:进程ID
  • USER:进程所有者的用户ID
  • 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秒
  • COMMARD:命令行
posted @ 2020-03-09 19:33  三只猫-  阅读(447)  评论(0)    收藏  举报