偷得浮生半桶水(半日闲), 好记性不如抄下来(烂笔头). 信息爆炸的时代, 学习是一项持续的工作.
全部博文(1748)
分类: LINUX
2010-07-26 14:34:29
CNET科技资讯网6月26日国际报道 如果不频频看表,也许你事情会做得更快。基本上,这就是程序设计师努力改善Linux操作系统运行效率的理论基础。
这群程序设计师将赋予新版Linux一种“无滴答”空闲循环机制(tickless)的核心(kernel),舍弃传统的计算机计时(computer time-keeping),希望藉此让处理器保持在休眠、耗电低的状态。
用电效率(power efficiency)是每一种操作系统都可能利用到的,但对Linux而言,改善效率有助于降低电费成本,进而加强这款开放源代码操作系统与Windows竞争的实力,俾以更长的电池续航力抢进可携式计算机,以及通常必须每天24小时开机的服务器。
无滴答核心不是唯一正在进行中的计划。英特尔5月间推出一种称为“PowerTop”的软件,标榜能更容易找出软件白白让计算机处在高度戒备状态、但其实无此必要的功能。
Illuminata分析师Gordon Haff说:“这(节电计划)十分合理。全速的马力愈来愈没这个必要,特别是就笔记本电脑而言。而笔记本电脑愈来愈普及化。”
Linux开发人员费时多年,总算把无滴答内核引进Linux主流应用。
Linux领导人Linus Torvalds说:“Linux的改造工程大致已完成。”他指出,就更高端的软件来说,PowerTop可谓”无价之宝”。他说:“许多人和Linux经销商对此兴趣浓厚,所以,用户应用软件问题看来确实搞定了。”
还有一些工作要做,但英特尔内核程序设计师Arjan van de Ven说,进度一直在掌握中。他说:“就我们实验室的成果而言,跑笔记型计算机时,现已提高效率的Linux在idle状态的耗电量,大约比三个月前的版本节省15%到25%。”
降低芯片功率
处理器必须消耗大量的电力,在许多情形下,比100瓦的灯泡还耗电。更糟的是,为了排热,散热风扇另需耗费更多的电,更别提资料中心空调设备吃的电。
不过,近年来,芯片制造商让微处理器能减速到较低功率的状态,不必再时时以全速运转。随着芯片内部的频率减缓,电压降低,电力消耗量也就跟着下降。
显然,当用户命令计算机进入待机(standby)模式时,处理器就能进入这类省电状态。不过,可做的还很多。因为频率达十亿赫兹(gigahertz)的处理器每一周期持续的时间不到每秒十亿分之一,所以,即使是打字快手,在两次击键的当中,芯片其实可以多次进、出较低功率的状态。
但操作系统内核--处理排程、与硬件沟通等基本任务的内核软件--未必善于避开繁忙的工作。一大原因是,软件通常会不必要地敦促内核进入戒备状态。另一原因是,内核本身也会平白耗电,比方说原本可打打瞌睡、让血压降下来的,却无聊地玩弄起手指来。
英特尔的软件有助于找出第一类问题。无滴答内核则对解决第二种问题有帮助。
无滴答趋势
Torvalds 4月间发布的2.6.21版Linux内核,就包含无滴答选项。这种功能也已纳入Fedora 7,也就是Red Hat免费提供的玩家版Linux。
van de Ven说:“就马力而言,这可以省很多的电。”
他说,典型的英特尔笔记本电脑处理器在最节电的状态下,最高耗电量是1.2瓦。他说:“问题在于,假如你每隔百万分之一秒就苏醒,你几乎不能超越那段浅浅的节电模式。最终的效果是,无滴答让你进入最高节电模式,节省可观的电力,进而延长电池续航力。”
无滴答内核仍在追踪时间,只是以不同的方式进行。一改以往频频检查待做的任务--就Linux的例子而言,每秒要检查1,000次,就内核频率每百万分之一秒滴答一次计算--新的作法让内核排定在未来的任务需要关注时,才进行硬件中断。
就用电效率而论,无滴答内核还产生另一种间接的好处,就是更善加利用虚拟化技术。虚拟化技术让多重的操作系统同时在同一台计算机上运行。这么一来,就可用为数更少、使用效率更高的机器,取代众多闲闲没事干的机器。
无滴答内核意味着,作为操作系统基础的虚拟化软件,不会因为不必要的中断,而造成不当的过度负荷。所以,理论上,这让管理员能更大胆整并服务器。
van de Ven说:“如果你某台服务器有50个虚拟化的guests,而每个guest每秒定时器滴答1,000次,那就等于每秒滴答50个千滴答(thousand ticks),但却什么工作也没做。使用无滴答技术,就可以从1,000降到(比方说)10。突然间,要运行50个guests,就变得轻松多了。”
测试Linux硬件效能的Phoronix网站编辑Michael Larabel发现,内建Pentium M处理器的IBM ThinkPad R52,若运行Fedora 7,并采用无滴答内核,耗电量可从28瓦降到26瓦。
一窥PowerTop奥秘
但若更高端软件需要内核来排定发出经常性的苏醒呼叫,无滴答内核就不灵光了,这时需要PowerTop进场。
使用PowerTop检测,已发现许多白白耗电的元凶。例如The Gvim文书处理器的闪烁光标,就会叫醒内核。Evolution电子邮件软件则每秒需要检查十次,看看有没有新任务需运行。GAIM (如今称为 Pidgin) 实时通讯软件每5秒自我检查一次,是否处于”空闲”的状态。
除了解决以上问题之外,Linux内核本身仍有一些改良工程要做。例如,van de Ven指出,装置驱动程序--让内核与网络卡、键盘等硬件沟通的软件--需要翻新,才能处理节电问题。
另一问题是开发电力相关政策管理软件,让管理员根据用户做的任务,来决定计算机应该有的行为。还有一项棘手问题,就是进一步改良笔记型计算机的suspend-resume功能,让笔电能更优雅地进入休眠状态。(唐慧文/译)