CPU占用率是什么?
嵌入式Linux
共 2117字,需浏览 5分钟
· 2021-05-25
这是昨晚上在朋友圈发的一个讨论
回答的问题很多
因为这个问题,我晚上也没早睡,就想把这个讲清楚
说这个问题之前我们先了解下时间片调度算法,因为用这个来讲比较清楚。
CPU可以执行任务,CPU给哪个进程执行,哪个进程就可以占用CPU去做它想做的事情,如果进程的优先级比较低,调度器每次调度的时候,就容易被高优先级的进程插队,这个进程实际上占有CPU的时间就会比较短。
什么是CPU是利用率呢?
先说下,这个指的是有操作系统的情况下,有多任务系统,那系统有一个调度室,调度室分配给进程的使用CPU时间T1,进程在被调度时,进程实际占用CPU时间T2,T2/T1就是这个进程的CPU占用率了。
如果我们这样写代码
#include <sys/types.h>
#include <unistd.h>
#include <stdio.h>
#include <stdlib.h>
int main(void)
{
printf("%d:Cpu start...\n",getpid());
while(1)
{
sleep(1);
}
return 0;
}
这时候的CPU占用率是
如果我们代码修改成这样
#include <sys/types.h>
#include <unistd.h>
#include <stdio.h>
#include <stdlib.h>
int main(void)
{
int i=0;
printf("%d:Cpu start...\n",getpid());
while(1)
{
for(i=0;i<100000000;i++)
{}
sleep(1);
}
return 0;
}
CPU 占用率如下
如果我把代码修改成这样
#include <sys/types.h>
#include <unistd.h>
#include <stdio.h>
#include <stdlib.h>
int main(void)
{
int i=0;
printf("%d:Cpu start...\n",getpid());
while(1)
{
for(i=0;i<100000000;i++)
{}
//sleep(1);
}
return 0;
}
CPU占用率如下:
关于这个问题,还有很多回复
至于能不能出现超过100%的CPU占用率,在多核的情况下肯定是可以的,至于单核是不会出现这个情况的。
欢迎一起交流
评论
知乎热议:博士生最好的状态是什么?
链接:https://www.zhihu.com/question/447412618编辑:深度学习与计算机视觉声明:仅做学术分享,侵删作者:JackieLeehttps://www.zhihu.com/question/447412618/answer/2963078772最好状态比较难说,最开心
机器学习初学者
0
自动化测试做得好的标准是什么
自动化测试要做得好的标准,主要包括以下几个方面:一、高覆盖率与精准定位1、测试用例覆盖全面:自动化测试应覆盖产品的核心功能、关键业务流程以及常见的异常场景,确保测试范围广泛,降低遗漏风险。2、问题定位准确:自动化测试应能够精准地识别并定位问题,包括缺陷的位置、产生的原因以及可能的影响,为开发团队提供
测试开发社区
0
漫游CPU缓存效应,让你的程序性能飙升!
推荐一个原创技术号-非科班大厂码农,号主是机械专业转行进入腾讯的后端程序员!大多数读者都知道cache是一种快速小型的内存,用以存储最近访问内存位置。这种描述合理而准确,但是更多地了解一些处理器缓存工作中的“烦人”细节对于理解程序运行性能有很大帮助。在这篇博客中,我将运用代码示例来详解 cache工
码农有道公众号
1
如何动手做出一个 CPU,很简单
将Python客栈设为“星标⭐”第一时间收到最新资讯来源:无聊的闪客纯手工打造一个 CPU 这个事儿。在电子专业的同学眼里,很容易。在计算机专业的同学眼里,稍稍有点复杂,有的专业课的实验课可能会带着同学做一个,或者用 Logisim 这样的仿真软件去模拟实现一个。在非计算机专业的同学眼里,就有点不敢
Python客栈
0
每天骑的共享单车是什么通信原理,有人了解过吗?
转自:网络我们经常骑的共享单车到底是什么通信原理,有人了解过吗?现在就带大家了解下。一、智能车锁共享单车最核心的硬件是智能车锁,主要用于实现控制和定位功能。车锁内集成了嵌入式芯片(通信模块),GPS模块和物联网SIM卡。智能锁制造商通过在锁内集成带有独立号码的SIM卡,通过2G、3G、4G网络,与云
菜鸟学Python
1
算法工程师的核心竞争力是什么?
点击上方“小白学视觉”,选择加"星标"或“置顶”重磅干货,第一时间送达链接:https://www.zhihu.com/question/527696166编辑:深度学习与计算机视觉声明:仅做学术分享,侵删作者:赵俊博 Jakehttps://www.zhihu.com/question/52769
小白学视觉
10
得物面试:Redis 内存碎片是什么?如何清理?
JavaGuide官方网站:javaguide.cn这是一道不是特别高频但很重要的 Redis 面试题,属于 Redis 性能优化的范畴。Redis 内存碎片相关的问题在得物、美团、阿里、字节、携程等公司的后端面试中都曾出现过,还是建议认真准备一下。即使不是准备面试,日常开发也是能够用到的!什么是内
JavaGuide
0
回调函数(callback)是什么?一文理解回调函数(callback)
一、什么是回调函数1.1、回调函数的定义和基本概念回调函数是一种特殊的函数,它作为参数传递给另一个函数,并在被调用函数执行完毕后被调用。回调函数通常用于事件处理、异步编程和处理各种操作系统和框架的API。基本概念:回调:指被传入到另一个函数的函数。异步编程:指在代码执行时不会阻塞程序运行的方式。事件
良许Linux
0