Linux内核电源管理的整体架构解析,你了解吗?
Linux可以说是越来越火了 , 它在消费电子领域的应用相当普遍 , 而对于消费电子产品 , 省电是一个重要的议题 。
Linux电源管理非常复杂 , 牵扯到系统级的待机、频率电压变换、系统空闲时的处理以及每个设备驱动对于系统待机的支持和每个设备的运行时电源管理 , 可以说和系统中的每个设备驱动都息息相关 。
对于消费电子产品来说 , 电源管理相当重要 。因此 , 这部分工作往往在开发周期中占据相当大的比重 , 图1呈现了Linux内核电源管理的整体架构 。大体可以归纳为如下几类:
1.CPU在运行时根据系统负载进行动态电压和频率变换的CPUFreq 。
2.CPU在系统空闲时根据空闲的情况进行低功耗模式的CPUIdle 。
3.多核系统下CPU的热插拔支持 。
4.系统和设备对于延迟的特别需求而提出申请的PMQoS , 它会作用于CPUIdle的具体策略 。
5.设备驱动针对系统SuspendtoRAM/Disk的一系列入口函数 。
6.SoC进入suspend状态、SDRAM自刷新的入口 。
7.设备的runtime(运行时)动态电源管理 , 根据使用情况动态开关设备 。
8.底层的时钟、稳压器、频率/电压表(OPP模块完成)支撑 , 各驱动子系统都可能用到 。
【Linux内核电源管理的整体架构解析,你了解吗?】 这样 , 你对linux的电源管理知道多少了?
推荐阅读
- 如何在Linux终端虚拟机中进行幻灯片展示,来看干货!
- 小心! APT组织对Linux设备的攻击越来越多
- Linux安装软件文件时遇到的常见报错和解决方法
- 八个最主流的基于Debian的Linux发行版,你知道吗?
- 浅谈Linux在移动嵌入式领域的发展趋势和前景
- 可从macOS和Linux上构建环境 从Subversion迁移Git,试试吗?
- V4L2的管道驱动程序是如何被Xilinx Linux 理解的
- Linux技术中Cgroup的原理和实践,你知道吗?
- 鸿蒙系统为什么要基于linux来开发研发
- 你了解开关电源的绝缘强度极限测试吗?