CPU闲着就是闲着了?也是有任务的!

我们打开电脑而没有使用的时候,CPU是闲着的吗?当我们点击一个程序的时候,电脑如何快速的做出反应?大家都知道,CPU是电脑的中央处理器,CPU是不是随时待命的呢?其实CPU闲着的时候也是有任务的!

CPU在绝大部分时间是什么都不干的。大多数技术专家都知道这个事实,但对于CPU是如何从空闲状态切换到工作状态,忙完后又回到空闲状态的相应机制,我们还没有详细讨论过。

对现代处理器来说,这种机制变得越来越重要。今天大部分芯片设计的一个目标是将处理器尽快地切换到低功率状态。



其实CPU空闲时并不是什么都不干,而是在运行空闲任务(idle tasks)。

CPU整体设计就是完成当前操作后尽可能快速地返回到空闲状态,但系统必须要有某种方法/方式来唤醒芯片,让它去关注其他某些东西。

其中的一种方式是使用系统计时器(system timer)。



阻止CPU消耗太多电量的一种方法是内置更长的时钟周期(tick periods)。通过这种方式,CPU在唤醒之前需要度过更长的空闲时间,然后执行基本任务,接着再次睡眠。

什么是空闲任务(idle task)

空闲任务可能听起来有点自相矛盾,关键是你要理解CPU既然通电,那么就必须时刻不停地在运转,即使他什么正事也不干。

在哲学上对应的词汇就是所谓的“忙等待”(busy waiting),本质是让CPU不停地去计算某个条件,看看是否为true。



对于运行在x86芯片上的Windows来说,这个功能表现为暂停(HLT)指令,对应Windows的System Idle Process进程。

Windows只有在某个CPU核心没有合适的线程可执行时,才会调用idle空闲进程去运行。

如果你查看Windows系统的任务管理器,你会看到System Idle Process(系统空闲进程)大多数时候都显示一个较高的CPU使用百分比。和进程列表中的其他进程不同,空闲进程的值越高,代表CPU的工作量越校

设计HLT指令的目的是为了尽可能地减少电量消耗,并使CPU进入节能模式/状态。

HLT的历史

HLT(暂停)指令其实有很长的历史,在第一颗8086处理器上就已经实现了,但早期操作系统并不支持它。老程序员可能会记得,曾经有一段时间,甚至连基本的HLT功能都总是不能按预期方式执行。

回首过去的超频年代,那时候CPU有一个基本的工具叫做Rain(雨),用来增加CPU的空闲时间(以及提升处理过程中的散热和能耗)。随着时间的流逝,我们可以看到硬件制造厂商和软件开发者都变得越来越复杂。

这是Windows 8创新的一个方面——好吧,本质上只是尝试创新——但却产生了一些奇怪的结果。在默认情况下它允许在处理过程中有更长的间隔周期,但这也导致一些程序产生问题,如Google Chrome等程序为了更快地对用户操作进行响应,会自动将时钟频率(tick rate)设置为操作系统所允许的最小值。

这个BUG在新版程序中已经修复了,但仍可能减少某些Windows 8电脑的电池续航时间。



这确实是一个可以调节时钟周期的地方,加上要支持没有基于晶体定时器的系统,使微软措手不及。在Windows8中,软件通过混合操作系统时间记录的方式来调整前端总线速度,就会导致错误的基准测试结果。

这种行为在Windows 10中一直保持,尽管它只是一个小众的问题——在操作系统产生错误的结果你必须调整系统前端总线的时钟.

race-to-idle是现代CPU架构的关键组件,AMD和Intel基本每年都会发布新一代产品,还会经常推出更新,可能最高性能只提升那么一点点,但通过更好的时钟门控(clock gating)却能显著提高能量使用率,并更快地进行节能模式切换。

(0)

相关推荐

  • 闲鱼怎么开通闲鱼号? 闲鱼号实名认证的方法

    闲置品交易平台“闲鱼”宣布,正式推出其信用新产品“闲鱼号”.闲鱼号将对用户进行严格的实人认证,并可以让用户展现自己淘宝等级.芝麻信用.微博认证.动态信息等多维“信用记录”.据了解,“闲鱼号”推出的“实 ...

  • 闲鱼网 替换 闲鱼二手信息

    相信大家都有上网淘宝的经历.本贴以闲鱼(淘宝二手)网站为例,教大家如何用网站资讯监控工具实时监控iphone二手最新消息,助你抢到心仪的iphone手机.我们用到的网页资讯监控工具如下: 操作方法 0 ...

  • 闲鱼怎样更快的卖出东西 闲鱼快速卖出去闲置 方法

    闲鱼快速卖出去闲置物品方法 1.完善信息,有的项目都填完,物品描述写多点,不行可以照搬点产品参数进去,照片多照几张,这样信息完善度高,我这几个虽然不是同时挂的,但肉测信息完善的物品看得人更多,那个40 ...

  • 卖闲置的app排行榜单,二手交易平台那个好?

    有人说,女人的衣柜里真正的使用率只有30%,剩余的70%放的都是不常用的东西.经常清理不用的东西,会提高生活的满意度,但是"断舍离"实施起来还有有点小困难,除了闲鱼是比较有名的出闲 ...

  • 二手交易APP哪个好?十大二手交易app排行榜推荐

    买买买是大家都喜欢的事情.然后有时候一不小心买的东西就没地方堆积了,也可能是用了几次就不想再用的东西,丢了也可惜,这个时候就可以拿到二手交易市场去转手出让了,尤其是现在有很多方便好用的二手较易APP, ...

  • 玩捞腌菜赢的秘诀

    捞腌菜是什么游戏?捞腌菜不就是把菜放在盘子里每个人去捞?哈哈,当然不可能是这样了,捞腌菜虽然名字不时髦,玩法倒也非常简单,下面小乐就来说说捞腌菜到底怎么玩,会玩的人可以不要看咯. 操作方法 01 游戏 ...

  • 牛牛怎么玩法介绍

    我来教你牛牛怎么玩法介绍,希望能够为你带来帮助. 操作方法 01 1.基本规则: 游戏用牌为一副牌除大小王以外,共计52张.玩家人数为2人至6人,每人随机发5张牌. 选择庄家与倍数: 每盘开始前,随机 ...

  • 牛牛游戏玩法规则

    玩法规则 01 一.游戏阐述 "牛牛"是流行于浙南一带的游戏,玩家要是可以将手中的五张牌,以三张一卡.两张一卡的形势排列成10的倍数,此种牌就被称为"牛牛",属 ...

  • 斗牛游戏玩法简介

    斗牛是一种棋牌游戏,主要流行在我国地区.游戏可以由2人到6人同时进行,总共52张牌(除大小王),在确定庄家后,系统将给予玩家每人5张牌,用户将根据5张牌进行排列组合,并且闲家一一和庄家进行大小比较确定 ...