目录
1. QNX电源管理框架
2. QNX客户端API库
3. QNX代码分析
4. Fuchsia中的电源管理
5. Minix中的电源管理
6. Harmony OS中的电源管理
之前介绍的电源管理机制基本都是在Linux中实现的,可以看到很复杂,各种框架,明明一个操作非要转来转去,而且在内核里面实现,跟内核的各种框架又纠缠不清,什么consumer、Framework、provider框架乱乱的。
就不能搞成最简单的CS构架,一个Client和一个Server就搞定了,不需要什么框架,也不需要跟各种程序混到一块去,就像上图的一个问题:去饭店吃饭是客户端还是服务端?
问题的解决方案直指微内核,关于微内核的介绍,之前有文章:
seL4微内核入门-微内核介绍
这里重点以QNX为例,介绍下微内核中的电源管理的特点:
-
电源管理作为一个Server在用户层,算一个APP
-
电源管理服务的对象Client:电源敏感APP、驱动APP、电源监控APP
-
Client和Server之间通过IPC通信,约定好通信的报文
1. QNX电源管理框架
参考:
http://myqnx.com/developers/docs/6.3.0SP3/power_mgmt_en/user_guide/pow_mgmt_arch.html
电源管理服务可以:
-
可以控制各个设备包括CPU