<meter id="pryje"><nav id="pryje"><delect id="pryje"></delect></nav></meter>
          <label id="pryje"></label>

          新聞中心

          EEPW首頁 > 嵌入式系統(tǒng) > 設(shè)計應(yīng)用 > 便攜式設(shè)備動態(tài)電源管理的Linux技術(shù)

          便攜式設(shè)備動態(tài)電源管理的Linux技術(shù)

          作者: 時間:2008-08-22 來源:網(wǎng)絡(luò) 收藏
          任何擁有筆記本電腦的人都會察覺,當(dāng)依靠電池供電時,其便攜的行為與使用交流主供電時不同――顯示屏變暗、處理器的時鐘變慢、系統(tǒng)只要有可能就會轉(zhuǎn)入待機(jī)或睡眠狀態(tài)。PDA用戶也發(fā)現(xiàn),在停止使用一段時間后顯示屏將變暗,甚至進(jìn)入睡眠狀態(tài)。蜂窩電話用戶也已經(jīng)注意到,背景光和按鍵照明在完成撥號之后會熄滅。事實上,這些可見行為的背后是軟硬件和節(jié)電機(jī)制在發(fā)揮作用。

          全速運(yùn)行、待機(jī)和睡眠等宏觀行為利用CPU的固有能力通過降低工作電壓或時鐘頻率來節(jié)省功耗。除了全面地改變系統(tǒng)狀態(tài)外,大多數(shù)用戶察覺不到的是,實際的也能夠逐漸地改變系統(tǒng)狀態(tài),這種情況在一秒之內(nèi)可以發(fā)生數(shù)百次。

          任何策略的基礎(chǔ)都是調(diào)整設(shè)備中一個或多個處理器內(nèi)核的工作電壓和頻率,此外,在高集成度的PowerPC、ARM和基于x86的系統(tǒng)中經(jīng)常包含一個DSP或智能基帶處理器。的確,諸如英特爾的StrongARM和XScale處理器、TI的OMAP處理器系列以及IBM的PowerPC 405LP和Transmeta Crusoe等CPU都提供內(nèi)核電壓和頻率的調(diào)節(jié)功能。不過,現(xiàn)代的嵌入式處理器具有非常高的電源效率,以至于CPU并不總是最主要的耗能器件,其它高耗能的器件包括高性能存儲器、彩色顯示器和射頻接口等。因此,如果電源系統(tǒng)只能調(diào)節(jié)處理器內(nèi)核的電壓和頻率,那么它的用途將有限。

          一個真正有用的動態(tài)電源管理方案應(yīng)該可以采用與CPU內(nèi)核運(yùn)行相協(xié)調(diào)或相獨(dú)立的方式,支持對一系列電壓和時鐘的快速調(diào)節(jié)。

          DPM架構(gòu)圖1:電源管理和嵌入式<a href='/article/quickSearch.do?action=Searchkeyword=Linux'><a class=Linux軟件堆棧。" hspace=12 src="http://uphotos.eepw.com.cn/fetch/20130729/152684_1_0.jpg" align=right vspace=12>

          兩個現(xiàn)有的電源管理方案分別來自于PC和筆記本電腦領(lǐng)域:一個是傳統(tǒng)的高級電源管理(APM)方案,它目前仍然使用在許多基于的便攜設(shè)備中,但在基于微軟操作系統(tǒng)的筆記本電腦和手持設(shè)備中已經(jīng)被逐步淘汰;另一個是高級配置和電源接口(ACPI)方案,它是英特爾、東芝和其他一些公司支持的現(xiàn)行標(biāo)準(zhǔn)。在PC、筆記本電腦、服務(wù)器、甚至刀片式通信設(shè)備等商業(yè)硬件中,類似ACPI的系統(tǒng)是人們的首選,但它強(qiáng)烈依賴于流行的x86/IA-32 BIOS 架構(gòu)。

          嵌入式系統(tǒng)通常沒有類似于PC中的BIOS,而且通常不具備那么高的機(jī)器抽象水平,能夠把操作系統(tǒng)與低層次的設(shè)備和電源管理活動隔離開來。與其它瞄準(zhǔn)電池供電應(yīng)用的操作系統(tǒng)類似,在嵌入式中,電源管理活動需要對操作系統(tǒng)內(nèi)核和設(shè)備驅(qū)動程序進(jìn)行特殊的干預(yù)。不過,需要重點(diǎn)強(qiáng)調(diào)的是,雖然低層次的動態(tài)電源管理是駐留在操作系統(tǒng)內(nèi)核中,但電源管理策略和機(jī)制是來源于中間件和用戶應(yīng)用代碼。

          接口和API

          理想的電源管理系統(tǒng)應(yīng)盡可能對更多軟件堆棧層達(dá)到幾乎完全透明的程度。事實上,這是Transmeta公司在其Crusoe架構(gòu)中所遵循的路線,而且已經(jīng)成為基于BIOS的現(xiàn)有電源管理方案追求的目標(biāo)。然而,具備手持設(shè)備設(shè)計經(jīng)驗的開發(fā)人員證實,系統(tǒng)內(nèi)部各部分之間需要某種程度的直接合作,具體描述如下:

          內(nèi)核接口

          在面向Linux的DPM架構(gòu)中,內(nèi)核中的DPM子系統(tǒng)負(fù)責(zé)維持整個系統(tǒng)的電源狀態(tài),并把DPM系統(tǒng)的不同電源管理模塊聯(lián)系在一起。如果內(nèi)核的任何其它部分需要與DPM直接對話(盡管這種情況相對較少),那么最好把DPM看成是為驅(qū)動程序、中間件和應(yīng)用程序提供服務(wù)的元素。

          驅(qū)動程序接口

          支持DPM功能的設(shè)備驅(qū)動程序比默認(rèn)的驅(qū)動程序更了解系統(tǒng)狀態(tài):它們在外部事件的驅(qū)使下通過設(shè)定不同的狀態(tài)來反映或遵循那些操作機(jī)制,或者通過來自內(nèi)核 DPM子系統(tǒng)的調(diào)用來反映或遵循那些操作機(jī)制。為了實現(xiàn)更精確的機(jī)制決策,驅(qū)動程序API也允許驅(qū)動程序注冊與它們接口或由它們管理的那些設(shè)備的基礎(chǔ)操作特征。

          應(yīng)用程序API

          應(yīng)用程序可以分為三類:


          *電源管理知會型(PM-aware)應(yīng)用程序


          *在電源管理知會“包裹器”中的傳統(tǒng)應(yīng)用程序


          *不帶有電源管理的傳統(tǒng)應(yīng)用程序

          電源管理知會型應(yīng)用程序能夠利用機(jī)制管理器提供的API,建立其基本的約束條件,并強(qiáng)迫電源管理機(jī)制發(fā)生與其執(zhí)行需求相匹配的變化。不直接帶有電源管理能力的傳統(tǒng)應(yīng)用程序能夠被“包裹”在代碼或補(bǔ)丁中,以達(dá)到較高的效率,但它們也能夠根據(jù)更大范圍的默認(rèn)機(jī)制管理,按默認(rèn)的行為運(yùn)行。

          在嵌入式Linux圖2 DPM下的實際機(jī)制包括以下API,如dpm_set_os()(內(nèi)核)、assert_constraint()、remove_constraint ()和set_operating_state()(內(nèi)核和驅(qū)動程序)、set_policy()和set_task_state()(經(jīng)系統(tǒng)的用戶級調(diào)用)以及/proc接口。

          對實時性能的影響

          迄今為止,調(diào)整CPU電壓和頻率對系統(tǒng)的實時性能而言依然是一個重大挑戰(zhàn)。任何參數(shù)的改變都將導(dǎo)致系統(tǒng)不穩(wěn)定,重新鎖定鎖相環(huán)和其它動態(tài)時鐘機(jī)制也需要相應(yīng)的時間,這兩個因素將使系統(tǒng)的響應(yīng)出現(xiàn)長延時(有時達(dá)到數(shù)十毫秒),在此期間,CPU既不能執(zhí)行計算操作,也不能對外部事件(中斷)做出響應(yīng)。

          TI的 OMAP、英特爾的Xscale和IBM的PowerLP等嵌入式處理器能夠在十幾毫秒的延時內(nèi)調(diào)整頻率,在數(shù)十毫秒的延時內(nèi)改變電壓,而且所有這些動作都不會中斷系統(tǒng)的操作,從而允許實現(xiàn)更大膽和更精確的節(jié)電機(jī)制。例如,在處理MPEG視頻幀或IP語音包的過程中可以降低電壓和頻率。

          實時性能面臨的一個更普遍的挑戰(zhàn)是,如何在睡眠模式期間對中斷做出響應(yīng)。雖然通過編程,大多數(shù)片上外圍元件在收到中斷之后都可以喚醒系統(tǒng),但開發(fā)者必須謹(jǐn)慎地定義用于喚醒設(shè)備的機(jī)制,并把整個系統(tǒng)的延時和存儲器類別考慮在內(nèi),以確保處理中斷的執(zhí)行時間和用戶空間對事件的響應(yīng)(優(yōu)先延時)。

          向嵌入式Linux發(fā)展的趨勢

          理想情況下,用戶既無需知道也無需關(guān)心支撐其手持設(shè)備的底層操作系統(tǒng)。現(xiàn)在,設(shè)備制造商對操作系統(tǒng)有了更多的選擇余地。雖然微軟一直非常重視品牌,但 Windows系列操作系統(tǒng)進(jìn)入手持設(shè)備市場(如蜂窩電話)的規(guī)模卻落后于Symbian和Brew,也落后于嵌入式Linux。設(shè)備制造商轉(zhuǎn)向 Linux的原因之一是可以利用標(biāo)準(zhǔn)的電源管理替代專有,這樣既能達(dá)到更快的上市時間,同時又能滿足終端用戶和運(yùn)營商的技術(shù)需求。

          linux操作系統(tǒng)文章專題:linux操作系統(tǒng)詳解(linux不再難懂)


          評論


          相關(guān)推薦

          技術(shù)專區(qū)

          關(guān)閉
          看屁屁www成人影院,亚洲人妻成人图片,亚洲精品成人午夜在线,日韩在线 欧美成人 (function(){ var bp = document.createElement('script'); var curProtocol = window.location.protocol.split(':')[0]; if (curProtocol === 'https') { bp.src = 'https://zz.bdstatic.com/linksubmit/push.js'; } else { bp.src = 'http://push.zhanzhang.baidu.com/push.js'; } var s = document.getElementsByTagName("script")[0]; s.parentNode.insertBefore(bp, s); })();