Linux进程管理(二)
Linux进程管理(二)
😄 Written by Zak Zhu
参考
- 马哥linux视频
- 青鸟天空/top命令使用说明(https://blog.csdn.net/bbirdsky/article/details/52085633)
vmstat命令
vmstat -w -S M 1
procs
- r # 运行或等待cpu时间片的进程的个数
- b # 被阻塞(通常为等待I/O完成)的进程队列的长度
memory
- swpd # 从物理内存交换至swap中的数据量
- free # 未使用的内存大小
- buffer # buffer空间大小, 通常与缓存写操作相关
- cache # cache空间大小, 通常与缓存读操作相关
swap
- si # swap in, 数据进入swap中的数据量, 通常是速率(kb/s)
- so # swap out, 数据离开swap中的数据量, 通常是速率(kb/s)
io
- bi # block in, 从块设备读入的数据量, 通常是速率(kb/s)
- bo # block out, 保存至块设备中的数据量, 通常是速率(kb/s)
system
- in # interrupte, 中断发生频率, 每秒的中断数
- cs # context switch, 上下文切换, 进程切换, 通常是速率(kb/s)
top命令
上图信息解释
-
第一行
-
15:16:26 系统当前时间和up 1 day, 23:28 系统运行时间,
-
1 user 当前登陆用户数,
-
load average: 1.23, 1.04, 0.93 CPU任务队列的平均长度, 3 个数值分别统计最近1分钟, 5分钟, 15分钟的系统平均负载
**CPU负载: CPU核数 * 0.7 = 理想负载 **
例如上图, 4核CPU不超过2.8负载表示没有出现高负载
-
-
第二行
- Tasks: 339 total 表示总共运行的进程数
- 1 running 表示正在运行的进程数
- 264 sleeping 表示睡眠的进程数
- 0 stopped 表示停止的进程数
- 1 zombie 表示僵尸的进程数
-
第三至六行
按数字"1"可显示各核CPU信息
- us # 用户空间占用CPU百分比
- sy # 内核空间占用CPU百分比
- ni # 用户进程空间内改变过优先级的进程占用CPU百分比
- id # 空闲CPU百分比
- wa # 等待输入输出的CPU时间百分比
- hi # 硬件中断所消耗的时间总额
- si # 软件中断所消耗的时间总额
- st # VM被Hypervisor偷去的CPU时间
-
第七行
- KiB Mem: 16167652 total 物理内存总量
- 1454352 free 空闲的内存
- 3643432 used 使用的物理内存
- 11069868 buff/cache 缓冲的内存
-
第八行
- KiB swap: 1999868 total 交换区总量
- 1999868 free 空闲的交换区量
- 0 used 使用的交换区量
- 9266832 avail Mem 缓冲的交换区量
-
第九行
字段 注释 PID Process ID USER USER name PR PRiority NI NIce VIRT VIRTual image, 进程使用的虚拟内存总量, 单位kb. VIRT=SWAP+RES RES RESident size, 常驻内存, 单位kb, RES=CODE+DATA SHR SHAred mem size, 共享内存大小, 单位kb S Status %CPU CPU usage, 上次更新到现在的CPU时间占用百分比 %MEM MEMory usage, 进程使用的物理内存占用百分比 TIME+ 累计占用的内存时间 COMMAND COMMAND name