電源管理(Power Management)在 Linux Kernel 中,是一個比較龐大的子系統(tǒng),涉及到供電(PowerSupply)、充電(Charger)、時鐘(Clock)、頻率(Frequency)、電壓(Voltage)、睡眠/喚醒(Suspend/Resume)等方方面面。
Generic PM 軟件架構(gòu)
Generic PM 主要處理關(guān)機、重啟、冬眠(Hibernate)、睡眠(Sleep,在 Kernel 中稱作Suspend)。在內(nèi)核中,大致可以分為三個軟件層次:
API Layer,用于向用戶空間提供接口,其中關(guān)機和重啟的接口形式是系統(tǒng)調(diào)用,Hibernate 和 Suspend 的接口形式是sysfs。
PM Core,位于 /kernel/power/ 目錄下,主要處理和硬件無關(guān)的核心邏輯。
PM Driver,分為兩個部分,一是體系結(jié)構(gòu)無關(guān)的 Driver,提供 Driver 框架(Framework)。另一部分是體系結(jié)構(gòu)相關(guān)的Driver,這也是電源管理驅(qū)動開發(fā)需要涉及到的內(nèi)容(圖中紅色邊框的模塊)。
-
電源
+關(guān)注
關(guān)注
184文章
17850瀏覽量
251982 -
嵌入式
+關(guān)注
關(guān)注
5095文章
19189瀏覽量
307987 -
電源管理
+關(guān)注
關(guān)注
115文章
6193瀏覽量
144987 -
Linux
+關(guān)注
關(guān)注
87文章
11351瀏覽量
210505 -
軟件
+關(guān)注
關(guān)注
69文章
5028瀏覽量
88139
發(fā)布評論請先 登錄
相關(guān)推薦
Linux進程的睡眠和喚醒
一文搞懂Linux進程的睡眠和喚醒
睡眠時的BOR/LPBOR無法喚醒
GD32進入深度睡眠后通過外部中斷喚醒發(fā)現(xiàn)系統(tǒng)時鐘變慢的原因
Linux進程的睡眠和喚醒
你知道Linux進程的睡眠和喚醒操作?
![你知道<b class='flag-5'>Linux</b>進程的<b class='flag-5'>睡眠</b>和<b class='flag-5'>喚醒</b>操作?](https://file.elecfans.com/web1/M00/8F/2C/o4YBAFy-ttiAbLquAAEFOOxGpbg175.png)
LINUX電源管理
![<b class='flag-5'>LINUX</b><b class='flag-5'>電源</b><b class='flag-5'>管理</b>](https://file.elecfans.com/web1/M00/D9/4E/pIYBAF_1ac2Ac0EEAABDkS1IP1s689.png)
GD32低功耗:深度睡眠喚醒系統(tǒng)時鐘變慢問題
![GD32低功耗:深度<b class='flag-5'>睡眠</b><b class='flag-5'>喚醒</b>系統(tǒng)時鐘變慢問題](https://file.elecfans.com/web1/M00/D9/4E/pIYBAF_1ac2Ac0EEAABDkS1IP1s689.png)
STM32 低功耗睡眠模式(SLEEP)事件(EVENT)喚醒實現(xiàn)及優(yōu)化
![STM32 低功耗<b class='flag-5'>睡眠</b>模式(SLEEP)事件(EVENT)<b class='flag-5'>喚醒</b>實現(xiàn)及優(yōu)化](https://file.elecfans.com/web1/M00/D9/4E/pIYBAF_1ac2Ac0EEAABDkS1IP1s689.png)
評論