top命令使用总结

2019-07-15  本文已影响0人  Oceans言欢

简介

top命令显示系统上正在运行的进程,用来监视服务的负载。

输出

系统运行时间和平均负载

top |uptime

显示:

 11:03:34 up 12 days, 20:16,  2 users,  load average: 0.02, 0.11, 0.16

字段分别表示:

任务

该行显示的是任务或者进程的总结。会显示全部进程的数量。

Tasks:  76 total,   1 running,  75 sleeping,   0 stopped,   0 zombie

字段表示:

CPU状态

Cpu(s):  2.7%us,  0.9%sy,  0.0%ni, 96.2%id,  0.0%wa,  0.0%hi,  0.2%si,  0.0%st

该行显示的是CPU的状态

在top视图下按1会显示每个逻辑CPU的状况:

Cpu0  : 16.3%us,  4.8%sy,  0.0%ni, 77.5%id,  0.0%wa,  0.0%hi,  1.4%si,  0.0%st
Cpu1  :  3.3%us,  1.3%sy,  0.0%ni, 95.3%id,  0.0%wa,  0.0%hi,  0.0%si,  0.0%st
Cpu2  :  1.0%us,  0.7%sy,  0.0%ni, 98.3%id,  0.0%wa,  0.0%hi,  0.0%si,  0.0%st
Cpu3  :  1.0%us,  0.7%sy,  0.0%ni, 98.3%id,  0.0%wa,  0.0%hi,  0.0%si,  0.0%st

如果不按1 则在top视图里面显示的是所有cpu的平均值。

查看CPU的相关信息

cat /proc/cpuinfo

输出:

processor   : 0 
vendor_id   : GenuineIntel
cpu family  : 6
model       : 62
model name  : Intel(R) Xeon(R) CPU E5-2650 v2 @ 2.60GHz
stepping    : 4
microcode   : 1
cpu MHz     : 2593.746
cache size  : 20480 KB
physical id : 0
siblings    : 4
core id     : 0
cpu cores   : 4 
apicid      : 0
initial apicid  : 0
fpu     : yes
fpu_exception   : yes
cpuid level : 13
wp      : yes
flags       : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush mmx fxsr sse sse2 ss ht syscall nx pdpe1gb rdtscp lm constant_tsc rep_good unfair_spinlock pni pclmulqdq ssse3 cx16 pcid sse4_1 sse4_2 x2apic popcnt tsc_deadline_timer aes xsave avx f16c rdrand hypervisor lahf_lm xsaveopt
bogomips    : 5187.49
clflush size    : 64
cache_alignment : 64
address sizes   : 46 bits physical, 48 bits virtual

物理CPU个数:

cat /proc/cpuinfo |grep "physical id" |sort |uniq |wc -l

每个物理CPU的核心数

cat /proc/cpuinfo |grep "cpu cores" |uniq

查看逻辑CPU的个数

cat /proc/cpuinfo |grep "processor" |wc -l

查看CPU信息

cat /proc/cpuinfo | grep name | cut -f2 -d: | uniq -c

查看CPU波动情况 尤其是多核机器

mpstat -P ALL 10 // 该命令会10s采样CPU的使用情况

内存使用

接下来两行显示内存的使用情况 输出类似free命令

Mem:   8061236k total,  7587396k used,   473840k free,   155740k buffers
Swap:        0k total,        0k used,        0k free,  6170164k cached

物理内存

字段表示:

used使用中的内存重量指现在系统内核控制的内存数,free空间内存指内核还未纳入其管理范围的数量。used中纳入内核管理的内存不见得都在使用中,还包括过去使用过的现在还可以被重复使用的内存,这些可以重新使用的内存还未交还到free中。
粗略计算可用内存数 计算公式: 第四行free + 第四行buffers + 第五行cached

交换分区

交换分区字段和物理内存字段含义相同。

内存不够的现象

在top命令下如果swap分区的used的值在不断发生变化,说明内核不断进行内存和swap的数据交换,表示内存真正的不够用。

进程

字段显示

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

命令使用

监控指定的进程

top -p PID

设置top的显示间隔

top -d 1 //1s显示一次 默认3s

显示完成的进程命令/名称

top -c // 适用于查看进程比如java的启动命令

显示指定进程下的线程

top -Hp <PID>
上一篇 下一篇

猜你喜欢

热点阅读