我们提供安全,免费的手游软件下载!

安卓手机游戏下载_安卓手机软件下载_安卓手机应用免费下载-先锋下载

当前位置: 主页 > 软件教程 > 软件教程

Wakelocks 框架详解

来源:网络 更新时间:2024-06-22 18:31:55

Wakelocks 框架是基于Wakeup Source实现的 为Android系统上层提供投票机制,以阻止系统进入休眠

该模块的支持受宏 CONFIG_PM_WAKELOCKS 控制。在使能该宏的情况下,PM Core初始化过程中会在sysfs下创建两个属性节点:
/sys/power/wake_lock :用户程序可以向其写入一个字符串来创建一个wakelock,该字符创即为wakelock的名字,该wakelock可阻止系统进入低功耗模式
/sys/power/wake_unlock :用户程序向其写入相同的字符串,即可注销该wakelock

配置宏 CONFIG_PM_WAKELOCKS_LIMIT 可以限制系统所能创建的wakelock的数量。
使能宏 CONFIG_PM_WAKELOCKS_GC 能打开wakelock的回收机制,使得wakelock在积累一定的数量后再去清除(释放空间),从而不需要在每次释放wakelock时都去清除。

主要数据结构和接口

...

...

...

工作时序

...

...

...

关于wakelock的发展变化以及使用,强烈建议拜读: http://www.wowotech.net/pm_subsystem/wakelocks.html
注:此源码分析基于kernel-5.10。