歡迎來到Linux教程網
Linux教程網
Linux教程網
Linux教程網
您现在的位置: Linux教程網 >> UnixLinux >  >> Linux綜合 >> Linux資訊 >> Linux文化

“無滴答”機制引入Linux主流 省電不是夢想


  如果不頻頻看表,也許你事情會做得更快。基本上,這就是程序設計師努力改善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功能,讓筆電能更優雅地進入休眠狀態。

Copyright © Linux教程網 All Rights Reserved