cpu百分比linux,Linux:cpu使用百分比的计算
处理器时间由分离的时间片(ticks)组成。在一些时间片上,cpu繁忙;另一些时间片上,cpu空闲。下图表示,在10个时间片上其中6个是繁忙的,cpu使用百分比是6/10 = 60%,也即是40%的空闲时间。
注意:一个cpu周期是单个脉冲时间,脉冲由高低电压组成。每秒中有上亿个ticks,取决于cpu的频率。
你可以从/proc/stat中获得自计算机启动后的CPU ticks个数:
$ cat /proc/stat
user nice system idle iowait irq softirq steal guest guest_nice
cpu 1732 182 590 4682 1022 0 34 0 0 0
计算公式
自计算机启动后总的CPU时间:
@1 = user+nice+system+idle+iowait+irq+softirq+steal
自计算机启动后总的CPU空闲时间:
@2 = idle + iowait
自计算机启动后CPU繁忙的时间:
@3 = @1 - @2
总的cpu使用百分比:
@3 / @1 X 100
注意 Guest 和 Guest_nice已经计算到了 user 和 nice中。
为了获得实时的cpu使用百分比,你需要计算时间间隔的ticks数。
实时计算cpu使用百分比的的bash脚本(Paul Colby编写):
#!/bin/bash
# by Paul Colby (http://colby.id.au), no rights reserved ;)
PREV_TOTAL=0
PREV_IDLE=0
while true; do
# Get the total CPU statistics, discarding the 'cpu ' prefix.
CPU=(`sed -n 's/^cpu\s//p' /proc/stat`)
IDLE=${CPU[3]} # Just the idle CPU time.
# Calculate the total CPU time.
TOTAL=0
for VALUE in "${CPU[@]}"; do
let "TOTAL=$TOTAL+$VALUE"
done
# Calculate the CPU usage since we last checked.
let "DIFF_IDLE=$IDLE-$PREV_IDLE"
let "DIFF_TOTAL=$TOTAL-$PREV_TOTAL"
let "DIFF_USAGE=(1000*($DIFF_TOTAL-$DIFF_IDLE)/$DIFF_TOTAL+5)/10"
echo -en "\rCPU: $DIFF_USAGE% \b\b"
# Remember the total and idle CPU times for the next check.
PREV_TOTAL="$TOTAL"
PREV_IDLE="$IDLE"
# Wait before checking again.
sleep 1
done
cpu百分比linux,Linux:cpu使用百分比的计算相关推荐
- Linux查看CPU和内存使用情况详解
在系统维护的过程中,随时可能有需要查看 CPU 使用率,并根据相应信息分析系统状况的需要.在 CentOS 中, 可以通过 top 命令来查看 CPU 使用状况.运行 top 命令后,CPU 使用状态 ...
- linux监测cpu 内存,Linux中CPU与内存性能监测.docx
Linux中CPU与内存性能监测(出处://chenleixing/article/details 在系统维护的过程中,随时可能有需要查看 CPU 使用率内存使用情况的需要,尤其是涉及到JVM,程序调 ...
- linux系统CPU,内存,磁盘,网络流量监控脚本
前序 1, #cat /proc/stat/ 信息包含了所有CPU活动的信息,该文件中的所有值都是从系统启动开始累积到当前时刻 2, #vmstat –s 或者 #vmstat 虚拟内存统 ...
- linux 使cpu使用率升高_linux命令总结(二)
每天不断完善和更新自己的认知是件让人很愉悦的事情!!! MOMO:linux命令总结(一)zhuanlan.zhihu.com MOMO:linux命令总结(二)zhuanlan.zhihu.co ...
- Linux系统cpu负载浅析
cpu负载就是cpu在一段时间内正在处理以及等待cpu处理的进程数之和的统计信息,也就是cpu使用队列的长度统计信息,这个数字越小越好. 维基百科关于系统负载的解释: the system Load ...
- 值得收藏的 14 个 Linux 下 CPU 监控工具
点击上方蓝色"程序猿DD",选择"设为星标" 回复"资源"获取独家整理的学习资料! 来源 | 8rr.co/wgqK 01. top top ...
- 【干货】值得收藏的 14 个 Linux 下 CPU 监控工具
01. top top是最常用的查看系统资源使用情况的工具,包括CPU.内存等等资源. 这里主要关注CPU资源. 1.1 /proc/loadavg load average取自/proc/loada ...
- Linux下查看CPU等基本命令,Linux查看CPU和内存使用情况的常用命令
1.top top 的全屏对话模式可分为3部分:系统信息栏.命令输入栏.进程列表栏. 第一部分 -- 最上部的 系统信息栏 : 第一行(top): "00:11:04"为系统当前时 ...
- Linux按照CPU、内存、磁盘IO、网络性能监测
系统优化是一项复杂.繁琐.长期的工作,优化前需要监测.采集.测试.评估,优化后也需要测试.采集.评估.监测,而且是一个长期和持续的过程,不 是说现在优化了,测试了,以后就可以一劳永逸了,也不是说书本上 ...
最新文章
- 3.2.1 造成误差的原因分析
- Tensorboard—使用keras结合Tensorboard可视化
- 食品行业ERP选型 需把握关键的20%
- Windows Presentation Foundation (WPF)中的命令(Commands)简述
- Spring中Quartz的最精简的配置
- [HNOI2016]矿区
- Java Finalizer和Java文件输入/输出流
- Win32汇编学习[7]: 定义符号常量(=、EQU、TEXTEQU)
- 文档转换乱码异常解决:unoconv openoffice libreoffice
- Centos 5 手动安装yum
- Spark-Streaming
- android解压sd卡中的压缩文件
- 利用C++不使用递归,循环和goto,打印1到100 的某一答案分析
- 个人知识管理系统思源笔记
- HTML 行间距的设置方法与问题
- php detailview,PHP开发框架Yii Framework教程(31) Zii组件-DetailView示例
- 计算器的改良(NOIP2000)
- 【MyBatis-Plus】CRUD 操作
- 国家海洋局的超算应用探索
- 怎么把曲线拟合成一条直线 matlab,用matlab怎么拟合一条空间直线
热门文章
- 重磅发布!最新版《动手学深度学习》PDF 版今天终于可以下载
- 知识图谱理论与实践(以问答系统为例)
- CVPR 2018 论文解读 | 基于GAN和CNN的图像盲去噪
- 岗位推荐 | 实在智能招聘深度学习算法研究员(可实习)
- 数学建模第五节2020.5.8-17补
- Opencv-python 3.3版本安装
- HDU 2612 Find a way bfs
- java download oracle,Oracle Java Products Download
- LeetCode 两数之和
- C#——《C#语言程序设计》实验报告——继承与多态——银行ATM程序