新聞中心

EEPW首頁 > 電源與新能源 > 設計應用 > 電源管理的Linux技術實施應用在便攜式動態(tài)設備

電源管理的Linux技術實施應用在便攜式動態(tài)設備

作者: 時間:2014-01-15 來源:網絡 收藏

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

本文引用地址:http://2s4d.com/article/226937.htm

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

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

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

DPM架構

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

電源管理的Linux技術實施應用在便攜式動態(tài)設備


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

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

內核接口

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

驅動程序接口

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

應用程序API

應用程序可以分為三類:

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

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

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

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

linux相關文章:linux教程



上一頁 1 2 下一頁

評論


相關推薦

技術專區(qū)

關閉