关于linux-kernel:笨叔用4维空间来理解进程负载

124次阅读

共计 2689 个字符,预计需要花费 7 分钟才能阅读完成。

微信公众号:奔跑吧 Linux 社区
欢送订阅笨叔旗舰篇视频节目:https://weidian.com/?userid=1…

第二季更新视频啦
明天咱们更新了两集第二季的视频节目,这两集视频节目都是和过程调度治理相干的代码剖析视频,咱们是基于 Linux 5.0 来解说代码的哟,没错,咱们视频是率领大家间接鲁 5.0 代码。咱们会在第一季 + 第二季旗舰篇视频里陆续更新 Linux 5.0 内核的代码剖析视频,不见不散!

过程代码剖析 6 – 再谈 SMP 负载平衡
用 4 维空间的角度来解说过程的负载

下面这个视频只是咱们这一期视频的一个预览片,全程 1 个多小时,有趣味的小伙伴能够点击浏览原文,进入笨叔微店订阅旗舰篇视频课程。咱们在上 2 个月和大家录制了两期的 SMP 负载平衡的代码剖析视频,那咱们这期节目还是持续和大家聊负载平衡,一方面是负载平衡 是过程治理里最简单的模块,波及的概念和代码量也比拟多,笨叔怕大家一时半会还没有齐全了解,所以咱们这期视频还是持续来聊负载平衡。

咱们在第一次 smp 负载平衡节目里,次要是和大家聊负载是怎么计算的,这个很重要,外面波及到很多公式和概念。这一期视频节目没看明确,前面的代码看起来也是十分吃力的。那我呢,在最近奔跑吧第二版订正过程中,对一些概念,从新做了一些订正,所以,这期视频,我会更新一下咱们最近对负载计算的思考,和我本人定义的一些新概念,不过,公式啥的,基本上都没变动,只是概念做了一些优化,次要是 怎么用中文,更好的形象和了解这些 公式和代码,咱们会 4 维空间的角度来解说负载这个概念。

第二次 smp 负载平衡节目里,咱们次要是讲 调度域和调度组的关系,这个也是很重要的,因为代码里如何去找一个闲暇的 CPU 和一个忙碌的 CPU,这不是乱找的,是有法则的,这个法则就是遵循调度域和调度组的层次结构来,咱们稍后在和大家简略回顾一下。

咱们来扯一下物理学的 4 维空间。咱们晓得 0 维空间是点,一维空间是直线,两个点连起来就是一根直线。两条平行的线是不会相交的。两条不平行的线,他们有可能会在某个点相交。如果一个生命是在一条直线上,那么它就无奈和另外一条平行的直线上的生命相遇。那什么是二维空间呢,二维空间是几根线连起来的面,二维空间只有长和宽。而三维空间是啥呢,把立体卷起来,造成了一个三维的空间。三维空间是有长宽高,从而造成一个三维的,平面的空间。所以,三维空间能够了解为有有数的立体组成。比方,一个最强大脑里 常常常常玩的魔方,它就有好几个面组成了一个正方体。

那什么是 4 维空间,它们在工夫这个维度由很多的三维空间组成,所以 4 维空间多了工夫这个概念。咱们生存的 4 维空间是由无数个静止的三维空间 间断地,动静地,变动而成形成的。咱们就生存在这个动静的三维空间里。如果咱们把 工夫用宏观来看,你能够把它看成是由无数个宏观的三维空间组成的一个时间轴。其实,咱们人啊,是生存的 4 维空间里,你能看到三维的空间,你能感触到工夫的一分一秒的变动。咱们在时间轴是间断地匀速的变动,它不能减速,不能加速,不能静止,咱们人类无法控制这条工夫线。

还有的人说,人是生存在 5 维空间里,当人来到了地球,就去了五维空间了。

其实,咱们生存很多货色都是 4 维空间的,比如说,100 块钱的一张纸币,它是一个动态的货色,你能够把它看成是一个 3 维空间外面的一个物体,它是静止的。然而呢,如果咱们把工夫思考进去,10 年后,这个 100 块的购买力 就不是 100 块了,当初 100 块,你可能能够买 30 斤大米,3 块 3 一斤大米,10 年后可能只能买 10 斤大米了,这就是 4 维空间。它随着工夫的变动而变动的。扯蛋扯远了。咱们回到方才的问题,咱们发现间接使用权重,没有思考 4 维空间的影响,它只是停留在 3 维空间里,那当然是不准了,咱们现实生活是 4 维空间,必须把第 4 维空间,工夫这个因素思考进去。

Linux 内核里应用了 decay_avg_load 的计算公式,为什么这里要应用 decay 这个货色呢?decay 这个单词是衰减的意思。咱们还是从 4 维空间的角度来看。一个能量在时间轴里,它是会缓缓衰减的。比方咱们收回的声音,它就会随着工夫缓缓衰减,在几十米的中央基本上听不见了。在举个例子,方才提到的人民币购买力的状况,其实也是经济学上一种衰减,这个随着工夫的衰减是合乎经济法则的。比方,10 几年前,上海一套房子单价才 3~4 千一平方米,当初基本上要涨到 5~6,7~8w 一平方米了,这阐明同样的一百块钱 随着时间推移,购买力的降落,这叫做通货膨胀。很多人在通过买房子或者投资股票来抵制通胀。很多人感觉一线城市的房子能够抵制通胀,然而很难了解股票为什么能抵制通胀,其实情理很简略,一个国家的 GDP 是由这个国家所有的公司来奉献的,那么那些好公司的业绩肯定是优于整个国家的 GDP,GDP 其实是一个平均值,所有公司的平均值。比方咱们当初 GDP 增长 6~7%,那些头部的优质公司,它们的年增长率肯定大于 6~7%,对吧。咱们在股市大跌或者低迷的时候,买入头部优质的公司长期持有,它们的业绩增长肯定是远远大于 GDP,也大于 M2 的速度,这样就能够达到抵制通胀的目标,很多人没有把这个简略的 4 维空间的道现实明确,而是盯着 k 线图这个二维空间的图形来钻研股市,而后想着明天买今天卖,那当然是被割韭菜了。

过程代码导读 7 – 实时性介绍和剖析
很多人可能对实时性的概念有点含糊,什么是实时性?实时性是不是就是让零碎跑的更快的意思?是不是跑分更多?什么是硬实时?什么是软实时?
Linux 内核在关上了内核抢占性能之后,要达到硬实时规范,还有什么坎?
咱们在视频里详细分析,实时性有哪些延时?产生延时的可能的起因是什么?

欢送订阅奔跑吧旗舰篇视频课程
笨叔会持续录制基于 Linux 5.0 的代码剖析的视频课程,有趣味的同学能够微店或者淘宝店订阅笨叔的第一季 + 第二季旗舰篇视频,旗舰篇视频是继续不断更新的!一次订阅,继续更新!点击浏览原文,进入笨叔微店订阅旗舰篇视频课程。

蓝色奔跑吧第二版曾经交稿
笨叔历时 1 年新订正的蓝色奔跑吧曾经交稿,第二版会新增很多新内容,而且大部分内容是从新重构的,第二版齐全基于 Linux5.0 + ARM64/x86_64 来编写的。书稿在 3 月初曾经交稿,请大家急躁期待。想看 Linux 5.0 的代码解说,能够订阅旗舰篇视频课程,笨叔会在视频里具体和大家剖析 5.0 代码的实现。

第二版具体目录请登录“奔跑吧 linux 社区”微信公众号,输出“奔跑吧第二版”索取。

全新的一套奔跑卷题目,有趣味同学能够登录“奔跑吧 linux 社区”微信公众号,输出“奔跑卷”索取。

本书预计 2020 年隆冬出版,到时候笨叔约大家吃西瓜,看奔跑吧!

正文完
 0