首页 » 技术分享 » 降温软件是如何实现降温的?

降温软件是如何实现降温的?

 

前言:

     一般电脑发热后,我们就听到了风扇呼呼的声音,这个是电脑的物理散热的机制。除了物理降温,我们当然还有软件降温,而软件降温就和CPU有关了。常见的电脑降温软件有:鲁大师呀,驱动精灵这类的。那么我们就一起来探索这些降温软件是如何实现降温的吧。

 

一、CPU运行原理

      如果要探究降温软件是如何减少CPU能耗来降温的,那么我们应该要了解一些CPU工作的原理。当我们启动电脑时,CPU便开始工作了,怎么工作呢,冯诺依曼体系告诉我们,CPU一直在取指令和执行指令,只是抽象到我们的用户层时,我们就只是单纯的点击按键,然后来实现多种多样的功能。

      计算机的底部运算都是二进制的运算(这个和电路的特性有关),然后利用矩阵和数学逻辑的知识将我们需要做的指令打包抽象,于是就有了下面这样CPU取指令和执行指令的图片:

这个图片要表达的两个值的加法操作,例如x=3,y=2,这个程序要实现y=x+y;如果你了解汇编语言,这个是很好理解的。我们一起来熟悉一下这个操作的流程:

(左边内存里面的数字其实是指令操作,例如1940中“1”代表load AC from memory就是从内存里面读取数据存到AC临时存储空间,其中的940我们可以认为是地址。依次类推,之后的5941 和 2941中的“5”和“2”表示的是从内存中读取数据加到AC上将AC的数据存到内存中

 

  1. 所以我们开始取指令,然后指向指令的操作“1”,得到了X=3的数据,计数器++,准备读取下一条指令;取指令“5”,将Y=2的数据加到AC中,实现了Y=5,计数器++;取指令“2”,执行指令,将AC中的数据存到内存中。就此完成上面的操作。

     我要说的重点并不是CPU是如何工作的,而是想要大家知道,从开机一开始CPU就一直在取指令执行指令,从未停止,所以就会产生大量的热量。

 

二、进程

     为什么要说进程呢?我们不是要了解如何让CPU减少耗能吗?这里我们再次的抽象,你可以打开任务管理器,例如,我的这一个(温馨提示,当你要打开任务管理器的时候,不要有大型的任务,不然占CPU过高,会卡顿,如果有腾讯管家也可以先关闭再打开任务管理器,不然也会有卡顿):

      其实我们的这些应用都是作为进程来管理的,当然,进程里面也有线程(这个我们之后博客探讨哦,这里只关注进程)。例如,我们打开一个记事本,此时你查看进程会发现多了一个进程。这些进程会进行抢夺CPU的资源,那么接下来我给出一个最简单的模型——五状态进程模型。

     好的,我们看看这个模型,我会从操作系统的角度简单的说一下,首先我们创建一个进程,为它分配PCB数据结构(它就是进程的数据结构,可以先抽象理解),内存等资源,然后它进入就绪队列(这里的就绪态ready)。然后运行,如果超出给定的运行时间片,重新回到就绪态,如果需要读取IO硬盘等操作(因为CPU读取速度比外设的读取速度快了大概几万年左右,所以当程序要读取外设时,我们会把程序变成阻塞态去读取外设,而CPU继续运行下一个指令),那么进入阻塞态,准备好之后又进入就绪态。如果运行结束,那么我们退出,进程交出CPU等资源。

      所以,我们可以概括为进程都是在就绪-----运行-----等待这个状态中循环,你会发现此时CPU一直在工作,那么如何实现降温呢?好吧,很简单,让CPU停下来,可是我们可以直接让CPU停下来吗?答案是否定的,我们需要使用指令来让CPU停下来,就像上面“1”“2”“5”这些指令一般,CPU会去执行它们。

 

三、降温软件原理

     那么介绍一个指令HLT(处理器暂停指令),有了这个指令,那么我们可以直接让CPU执行它吗?如果直接这样做,是不妥当的,所以我们需要一个聪明的方法。

     再看看上面的就绪队列,既然是队列,那么我们肯定是可以设置优先级别的对吧。如果你足够细心,你会发现CPU中的进程其实是有优先级别的(看看任务管理器就知道啦),这里我们暂不考虑如何去实现它,而是抽象来看,我们可以设置进程的优先级别。

     是的,当我们打完一局游戏,电脑很热,而此时CPU依旧一直执行,从不停息,不断产热,风扇呼呼的转,除了物理降温(搬到冰箱里)等操作,我们当然希望有软件也可以实现这样的操作。所以我们可以将HLT这个指令设置为优先级最低的指令。这样,当我们打完游戏,又没什么需要做的,就可以让CPU处于暂停态。让它无限的循环与HLT指令中,除非有一个新的进程进入了就绪队列需要使用CPU而结束循环,其它时候一直让CPU休息。

     所以,HLT唯唯诺诺,没有进程时让CPU休息降温,有进程时执行进程。这也就是降温软件的原理了。

 

四、总结

     但是,经验告诉我,手机发热了,“打开鲁大师?不,直接放冰箱”。是的,这种让CPU减少耗能的操作其实我们直接感受到的不够迅速,毕竟没有物理降温快速。但是这个才是根源,我们可以改变电源性能,让CPU自动的调节,当电脑不需要进行游戏等操作时,可以处于低耗阶段,反之,进入游戏阶段(这个阶段就不要想着一边打游戏一边开降温软件降温了,看看上面的例子,你就知道HLT唯唯诺诺,此时物理降温才直接有用)。

     温馨小提示,你的电脑清灰了么?

 

参考文献:

CPUCool是一款计算机程序,可以在Windows环境中让CPU降温,另外还包含支持在Windows环境中最佳化CPU功能。

百度百科地址:

https://baike.baidu.com/item/CPUCool/10948081?fr=aladdin

百度百科:

CPU优化——CPUCool  随着CPU的频率不断加快,CPU的发热量也越来越高。不过,我们除了可以通过CPU风扇来降低CPU的温度,还可以通过一些降温软件来实现CPU的降温。这类软件可以随时监测CPU的使用情况,当CPU空闲时就向CPU发送HLT指令(CPU状态控制指令之一,使CPU不执行任何操作,处于暂停状态),使其进入暂停状态,有外来指令到达CPU时,该类软件再将CPU唤醒,从而减轻CPU的工作量,以达到降温的目的。

转载自原文链接, 如需删除请联系管理员。

原文链接:降温软件是如何实现降温的?,转载请注明来源!

0