首页|嵌入式系统|显示技术|模拟IC/电源|元件与制造|其他IC/制程|消费类电子|无线/通信|汽车电子|工业控制|医疗电子|测试测量
首页 > 分享下载 > 消费类电子 > Android内核驱动——电源管理

Android内核驱动——电源管理

资料介绍
Android内核驱动—电源管理_1345772066671第十三章 Android 内核驱动――电源管理
13.1 基本原理
Android 中定义了几种低功耗状态:earlysuspend,suspend,hibernation。 earlysuspend 是一种低功耗的状态 , 某些设备可以选择进入某种功耗较低的状态 , 比如 LCD 可以降低亮度或灭掉; suspend 是指除电源管理以外的其他外围模块以及 cpu 均不工作,只有内存保持自刷新的 状态; hibernation 是指所有内存镜像都被写入磁盘中 ,然后系统关机,恢复后系统将能恢复到 “关机”之前的状态。

13.2 电源管理机制的实现
电源管理机制的源代码主要在 kernel/power/文件夹下面。 main.c 文件是整个框架的入口。 用户可以通过读写 sys 文件/sys/power/state 实现控制系统进 入低功耗状态。用户对于/sys/power/state 的读写会调用到 main.c 中的 state_store(),用户可 以写入 const char * const pm_states[] 中定义的字符串, 比如“on” , “mem” , “standby” , “disk” 。 state_store()首先判断用户写入的是否是“disk”字符串,如果是则调用 hibernate()函数命令 系统进入 hibernation 状态。如果是其他字符串则调用 request_suspend_state()(如果未定义 CONFIG_EARLYSUSPEND)或者调用 enter_state()(如果未定义 CONFIG_EARLYSUSPEND) 。 request_suspend_state()函数是 android 相对标准 linux 改动的地方,它实现在 earlysuspend.c 中。 在标准 linux 内核中, 用户
Android内核驱动——电源管理
本地下载

评论