在過去的幾年中,人們越來越關(guān)注在嵌入式開發(fā)中各種設備的功耗。這通常是因為設備是由電池供電的,人們關(guān)注的是如何最大限度地利用充電。然而,環(huán)境壓力意味著主電源供電設備需要盡可能降低功耗。從歷史上看,功耗一直被認為是硬件設計師的職責范圍,但情況已不再如此…
硬件設計對功耗有重要意義;它設置設備將消耗的最小功率。軟件的任務是將功耗盡可能降低到接近此最低水平。在選擇軟件IP組件(如操作系統(tǒng))時,開發(fā)人員還需要考慮電源。
在考慮操作系統(tǒng)選擇對功耗的影響時,有兩大因素:運行效率、電源管理設施。
1. 運行效率
從功耗的角度來看,操作系統(tǒng)的效率是兩個因素的函數(shù),有時是相反的因素。內(nèi)存占用越小,所需內(nèi)存越少;更少的內(nèi)存意味著更少的功率。操作系統(tǒng)的速度——即執(zhí)行操作所需的機器周期數(shù)——更為重要。根據(jù)第一近似值,可以認為每個機器循環(huán)使用一定量的能量,因此循環(huán)次數(shù)越少意味著功率越小。有研究表明,CPU在執(zhí)行特定任務時所消耗的電量會因操作系統(tǒng)而異。
2. 電源管理設施
正確設計的硬件為軟件提供了對許多因素的控制,特別是CPU頻率/電壓、打開/關(guān)閉外圍設備以及使用低功耗CPU模式。操作系統(tǒng)是應用程序代碼和硬件之間的一層,因此以電源管理框架的形式將控制軟件定位在那里是合乎邏輯的。在嵌入式開發(fā)中,軟件“知道”它需要什么資源[外圍設備、CPU性能等],并可以通過API將其與操作系統(tǒng)進行通信,從而優(yōu)化設備的功耗或“能量足跡”。