Linux 電源管理的組成
電源管理(Power Management)在 Linux Kernel 中,是一個(gè)比較龐大的子系統(tǒng),涉及到供電(PowerSupply)、充電(Charger)、時(shí)鐘(Clock)、頻率(Frequency)、電壓(Voltage)、睡眠/喚醒(Suspend/Resume)等方方面面。
Generic PM 軟件架構(gòu)
Generic PM 主要處理關(guān)機(jī)、重啟、冬眠(Hibernate)、睡眠(Sleep,在 Kernel 中稱作Suspend)。在內(nèi)核中,大致可以分為三個(gè)軟件層次:
API Layer,用于向用戶空間提供接口,其中關(guān)機(jī)和重啟的接口形式是系統(tǒng)調(diào)用,Hibernate 和 Suspend 的接口形式是sysfs。
PM Core,位于 /kernel/power/ 目錄下,主要處理和硬件無(wú)關(guān)的核心邏輯。
PM Driver,分為兩個(gè)部分,一是體系結(jié)構(gòu)無(wú)關(guān)的 Driver,提供 Driver 框架(Framework)。另一部分是體系結(jié)構(gòu)相關(guān)的Driver,這也是電源管理驅(qū)動(dòng)開發(fā)需要涉及到的內(nèi)容(圖中紅色邊框的模塊)。
聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場(chǎng)。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問(wèn)題,請(qǐng)聯(lián)系本站處理。
舉報(bào)投訴
相關(guān)推薦
在Linux中,僅等待CPU時(shí)間的進(jìn)程稱為就緒進(jìn)程,它們被放置在一個(gè)運(yùn)行隊(duì)列中,一個(gè)就緒進(jìn)程的狀 態(tài)標(biāo)志位為 TASK_RUNNING。一旦一個(gè)運(yùn)行中的進(jìn)程時(shí)間片用完, Linux 內(nèi)核的調(diào)度器會(huì)剝奪這個(gè)進(jìn)程對(duì)CPU的控制權(quán),并且從運(yùn)行隊(duì)列中選擇一個(gè)合適的進(jìn)程投入運(yùn)行。
發(fā)表于 06-07 12:26
?391次閱讀
請(qǐng)教一下ucos進(jìn)入睡眠模式,是不是應(yīng)該先掛起所有任務(wù)然后進(jìn)入睡眠,還是直接進(jìn)入睡眠等待喚醒(等待喚醒任務(wù)是否還在執(zhí)行調(diào)度)?
發(fā)表于 07-29 00:42
。但我的意思是,如果棕色的持續(xù)時(shí)間很長(zhǎng),那么PIC通常會(huì)醒來(lái)嗎?棕色是否會(huì)導(dǎo)致PIC無(wú)法正常喚醒或根本無(wú)法喚醒的情況?如果可能的話,那么我會(huì)在睡眠時(shí)也啟用BOR。我可以在沒(méi)有睡眠時(shí)啟用
發(fā)表于 10-12 14:46
Linux電源管理的組成部分
發(fā)表于 03-11 06:59
AVR單片機(jī)電源管理是如何進(jìn)入睡眠模式的?又是如何被喚醒的呢?
發(fā)表于 11-02 09:03
一、問(wèn)題1、進(jìn)入深度睡眠后,通過(guò)外部中斷喚醒,發(fā)現(xiàn)系統(tǒng)時(shí)鐘變慢。2、進(jìn)入休眠模式,通過(guò)任何中斷喚醒,系統(tǒng)時(shí)鐘正常。二、原因1、從電源管理章節(jié)
發(fā)表于 01-26 07:43
漸響式睡眠喚醒器電路圖
發(fā)表于 05-25 13:43
?1463次閱讀
設(shè)想有兩個(gè)進(jìn)程 A 和 B,A 進(jìn)程正在處理一個(gè)鏈表,它需要檢查這個(gè)鏈表是否為空,如果不空就對(duì)鏈表里面的數(shù)據(jù)進(jìn)行一些操作,同時(shí) B 進(jìn)程也在往這個(gè)鏈表添加節(jié)點(diǎn)。當(dāng)這個(gè)鏈表是空的時(shí)候,由于無(wú)數(shù)據(jù)可操作,這時(shí) A 進(jìn)程就進(jìn)入睡眠,當(dāng) B 進(jìn)程向鏈表里面添加了節(jié)點(diǎn)之后它就喚醒
發(fā)表于 03-20 14:34
?4282次閱讀
Linux 中的進(jìn)程睡眠狀態(tài)有兩種:一種是可中斷的睡眠狀態(tài),其狀態(tài)標(biāo)志位TASK_INTERRUPTIBLE;
發(fā)表于 04-23 14:56
?910次閱讀
Linux的系統(tǒng)suspend和resumeLinux內(nèi)核 runtime_PM 框架Linux內(nèi)核電源管理綜述
發(fā)表于 11-07 19:36
?8次下載
一、問(wèn)題1、進(jìn)入深度睡眠后,通過(guò)外部中斷喚醒,發(fā)現(xiàn)系統(tǒng)時(shí)鐘變慢。2、進(jìn)入休眠模式,通過(guò)任何中斷喚醒,系統(tǒng)時(shí)鐘正常。二、原因1、從電源管理章節(jié)
發(fā)表于 12-02 15:06
?21次下載
STM32 低功耗睡眠模式(SLEEP)事件(EVENT)喚醒實(shí)現(xiàn)及優(yōu)化1. 介紹STM32具有多種低功耗模式,當(dāng)前以STM32L4系列的低功耗模式最為豐富,此處基于STM32L476
發(fā)表于 12-31 19:08
?34次下載
Linux電源管理研究筆記—?jiǎng)討B(tài)電源管理 DPM
發(fā)表于 01-07 11:56
?6次下載
AN010 從深度睡眠模式2喚醒并恢復(fù)
發(fā)表于 02-27 18:18
?1次下載
Linux 電源管理的組成 電源管理(Power Management)在
發(fā)表于 07-20 11:11
?672次閱讀
評(píng)論