一个类比上面还看太懂怎么办?没事,我们来看一个简单的类比例子 。
先假设最简单的情况,你的计算机只有一个 CPU,所有的运算都必须由这个 CPU 来完成 。
那么,我们不妨把这个 CPU 想象成一座大桥,桥上只有一根车道,所有车辆都必须从这根车道上通过 。(很显然,这座桥只能单向通行 。)
系统负载为 0,意味着大桥上一辆车也没有 。

系统负载为 0.5,意味着大桥一半的路段有车 。

系统负载为 1.0,意味着大桥的所有路段都有车,也就是说大桥已经”满”了 。但是必须注意的是,直到此时大桥还是能顺畅通行的 。

系统负载为 1.7,意味着车辆太多了,大桥已经被占满了(100%),后面等着上桥的车辆为桥面车辆的 70% 。以此类推,系统负载 2.0,意味着等待上桥的车辆与桥面的车辆一样多;系统负载 3.0,意味着等待上桥的车辆是桥面车辆的 2 倍 。总之,当系统负载大于 1,后面的车辆就必须等待了;系统负载越大,过桥就必须等得越久 。

CPU 的系统负载,基本上等同于上面的类比 。大桥的通行能力,就是CPU 的最大工作量;桥梁上的车辆,就是一个个等待 CPU 处理的进程(process) 。
如果CPU 每分钟最多处理100个进程,那么系统负载0.2,意味着CPU在这 1 分钟里只处理 20 个进程;系统负载 1.0,意味着 CPU 在这 1 分钟里正好处理 100 个进程;系统负载 1.7,意味着除了 CPU 正在处理的100 个进程以外,还有 70 个进程正排队等着CPU处理 。
为了计算机顺畅运行,系统负载最好不要超过 1.0,这样就没有进程需要等待了,所有进程都能第一时间得到处理 。很显然,1.0 是一个关键值,超过这个值,系统就不在最佳状态了,你要动手干预了 。
多处理器和多核系统
在具有多个处理器或核心(多个逻辑CPU)的系统中,CPU负载值的含义取决于系统中存在的处理器数量 。因此,具有4个处理器的计算机在达到4.00的负载之前将不会以100%使用,因此在解释由top,htop或正常运行时间等命令提供的3个负载值时,你必须要做的第一件事 就是将它们分开 。系统中存在的逻辑CPU数量,并从中得出结论 。举个例子,如果你的计算机装了 2 个 CPU,会发生什么情况呢? 2 个 CPU,意味着计算机的处理能力翻了一倍,能够同时处理的进程数量也翻了一倍 。还是用大桥来类比,两个 CPU 就意味着大桥有两根车道了,通车能力翻倍了

所以,2 个CPU表明系统负载可以达到 2.0,此时每个 CPU 都达到 100%的工作量 。推广开来,n 个 CPU 的计算机,可接受的系统负载最大为n.0 。
芯片厂商往往在一个 CPU 内部,包含多个CPU核心,这被称为多核CPU 。
在系统负载方面,多核 CPU 与多 CPU 效果类似,所以考虑系统负载的时候,必须考虑这台计算机有几个 CPU、每个 CPU 有几个核心 。然后,把系统负荷除以总的核心数,只要每个核心的负荷不超过 1.0,就表明计算机正常运行 。怎么知道电脑有多少个 CPU 核心呢?
推荐阅读
- ip代理是怎么做出来的 代理ip有什么用
- 怎样选择电热水壶呢
- 电热水壶烧的开水真的对人们健康有影响吗
- 我们要明白哪些电热水壶是有问题的
- 喝电水壶烧开的水对健康有影响吗
- 长期喝电热水壶烧的开水对健康有影响吗
- 每天喝电热水壶烧得水真的会有什么危害吗
- 长期喝电热水器烧的开水对健康有影响吗
- 长期喝电热水壶烧的开水对我们的健康有影响吗
- 长期喝电热水壶烧的对身体健康有哪些影响
