Wakeup events framework同步问题

wakeup events framework
系统处于 suspend 状态,可通过 wakeup events 唤醒。具体的 wakeup events 可以是按键按下,可以是充电器插入等。但是,如果在 suspend 的过程中,产生了 wakeup events,怎么办?答案很肯定,“wakeup”系统。由于此时系统没有真正 suspend,所以这的“wakeup”是个假动作,实际上只是终止 suspend。
但由于系统在 suspend 的过程中,会进行 process freeze、 device suspend 等操作,而这些操作可能导致内核或用户空间程序不能及时获取 wakeup events,从而使系统不能正确 wakeup,这就是 wakeup events framework 要解决的问题:system suspend 和 system wakeup events 之间的同步问题。
同步问题包括两种情况:
情况1:内核空间的同步
wakeup events 产生后,通常是以中断的形式通知 device driver。driver 会处理events,处理的过程中,系统不能 suspend。
情况2:用户空间的同步
一般情况下,driver 对 wakeup events 处理后,会交给用户空间程序继续处理,处理的过程,也不允许 suspend。这又可以分为两种情况:
1)进行后续处理的用户进程,根本没有机会被调度,即该 wakeup events 无法上报到用户空间。
2)进行后续处理的用户进程被调度,处理的过程中(以及处理结束后,决定终止 suspend 操作),系统不能 suspend。

FETT507-C核心板方案 全志T507添加MCP2515驱动实现SPI转CAN
华为意图通过鸿蒙系统挽回手机业务的损失
钛灵市场与寒武纪达成战略合作,拓展AI生态布局
无极灯工作原理
华为“截胡”金苹果,三星之后iPhone也跌下神坛?
Wakeup events framework同步问题
货币的本相是什么
荣耀10发布2599元起 打脸让自家华为P20怎么办?
四部委联合发文力挺国产芯片
努比亚Z17什么时候上市最新消息:努比亚Z17真机曝光,无边框+IP67防水防尘+骁龙835,配置颜值不输小米6!
自适应滤波技术在高噪音环境下的应用研究
物联网关键技术挑战和痛点
FMCW激光雷达的性能优势有哪些 以及其中的量产难点有哪些
360N5开箱测评:强悍性能 全球首款6GB千元机
如何动态地给一个类增加功能
三星半导体欲扭亏为盈,营业利润预计达11.5万亿韩元
马达的正反转和停转设计
WiFi分享软件安全吗_WiFi分享软件乱象调查_密码被侵犯
微商“传销虚拟币”不断,我们应如何防范?
评测对比!小米max2、360N5s和坚果pro谁更适合做备用手机?