cpu温度高怎么办_一开机啥也不干就60多度
Origin: GitHub
在大多数时间里,CPU处于一种近乎休眠的状态。尽管多数技术专家都了解这一事实,但关于CPU如何从闲置状态过渡到工作状态,完成工作后再次回到闲置状态的机制,我们尚未进行深入探讨。对于现代处理器而言,这种机制的必要性日益凸显;当前许多芯片设计的主要目标之一就是迅速将处理器切换至低功耗模式。
Gustavo Duarte的详尽文章指出,当CPU处于空闲状态时,它并非完全无所事事(doing nothing),而是在执行空闲任务(idle tasks)。CPU的设计宗旨是,在完成当前操作后尽可能快速地返回到空闲状态,但系统需要有一种方法来唤醒芯片以处理其他事务。其中一种方法就是使用系统计时器(system timer)。
如Duarte所述,减少CPU电量消耗的一种方法是增加时钟周期(tick periods)的长度。通过这种方式,CPU在进入工作状态前需要经历更长的空闲时间,之后执行基础任务,然后再度进入休眠。
那么,什么是空闲任务(idle task)呢?
虽然听起来有些自相矛盾,但关键在于理解一旦CPU通电,它就必须持续运转,即使没有执行具体的任务。从哲学角度来看,这可以被视为所谓的“忙等待”(busy waiting),其本质是让CPU不断计算某个条件,看其是否为真。
对于运行在x86芯片上的Windows系统而言,这种功能表现为HLT(暂停)指令,它对应于Windows的System Idle Process进程。只有当某个CPU核心没有合适的线程可执行时,Windows才会调用idle进程来运行。如果你查看Windows系统的任务管理器,你会注意到System Idle Process(系统空闲进程)在大多数情况下都显示有较高的CPU使用百分比。与其他进程不同,该值越高代表CPU的工作量越小。HLT指令的设计目的在于尽可能地降低电量消耗,使CPU进入节能模式。
HLT指令的历史背景
HLT(暂停)指令具有悠久的历史,早在第一颗8086处理器上就已实现。早期的操作系统并不支持这一指令。老一辈的程序员可能还记得,过去有一段时间,HLT功能往往不能按预期工作。回顾过去的超频时代,有一种工具叫做Rain(雨),实际上是为了增加CPU的空闲时间(并改善处理过程中的散热和能耗)。随着时间推移,我们可以看到硬件制造商和软件开发者都在变得越来越复杂。
这是Windows 8在创新方面的一个尝试——虽然本质上只是尝试进行创新——但这也产生了一些意料之外的结果。默认情况下,它允许在处理过程中有更长的间隔周期,但这也导致了一些程序如Google Chrome等出现问题。这些程序为了更快地响应用户操作,会自动将时钟频率设置为操作系统所允许的最小值。尽管在新版程序中这个问题已经被修复,但它仍可能影响某些Windows 8电脑的电池续航时间。
上传时间:2小时前
附件下载(0 Bytes)
一颗1978年的Intel 8086 CPU。没错,当时的CPU是非常简单的设备——只有大约2万个晶体管。
在可以调整时钟周期的同时支持没有基于晶体定时器的系统确实让微软措手不及。在Windows 8中,软件通过混合操作系统时间记录的方式来调整前端总线速度,这可能导致错误的基准测试结果。这种行为在Windows 10中依然存在,尽管它只是一种小众问题——即你需要调整系统前端总线时钟以解决操作系统产生的错误结果。