电源管理
电源管理
移动计算设备的供电系统均采用电池供电,电池电量和供电能力对移动计算系统性能和运行时间都有决定性作用。电池供电量与体积大小的发展在一段时间内是相对固定的。因此,如何提高系统部件的电源利用率,降低不必要的电能消耗,就成了移动计算研究和应用领域的亟待解决的问题。
在嵌入式系统中,电源管理问题正在研究和发展,国内外尚无这方面的标准和规范。
本小组研究嵌入式操作系统中进行电源管理的解决方案。研究嵌入式系统软硬件和应用的特点、嵌入式操作系统的特点、以及电源管理的目标和需求,在嵌入式操作系统中,以保证整个系统性能为前提,实现电源管理机制和策略,达到降低系统能耗的目标。同时研究和实现该方案的易复用性、移植性、易裁减性。
结合嵌入式操作系统面向应用的特点和对电源管理的需求,对电源管理从功能、能耗管理的范围、实现策略及方式等方面进行划分,制定系统级和设备级的两级管理的方案。其中设备级电源管理是分为任务管理相关的处理器电源管理、以及外部设备电源管理。
系统级别的电源管理基于对CPU和系统的利用率统计,进行四个系统级可控电源状态(全功率运行full_power_runing,低功率运行low_power_runing,浅睡眠shallow_sleeping,深度睡眠deep_sleeping)的管理,实现粗粒度的系统能耗管理。
任务相关的处理器电源管理,针对实时任务特点,保证不降低系统运行性能前提下,对两种实时任务调度策略(单调速率调度和最短截止时间调度),在系统级电源状态为低功率运行的可控状态下,对CPU进行动态时钟频率调整,进行细粒度电源状态调整,降低能耗。
对外部设备建立灵活的管理机制,把管理策略放到设备驱动程序层,以适应不同设备类型的电源特性,使得设备的电源状态管理具有一定独立性。对于可由操作系统电源管理子系统控制的外部设备,采用基于设备使用历史统计方法控制电源状态的策略,实现了系统级电源状态为低功率运行的可控状态下,达到细粒度电源能耗降低的要求。
本课题采用构件化设计思想,提供良好的接口,主要包括操作系统内核接口隔离对操作系统内核其他部分的直接依赖;应用程序接口,通过用户在一定程度上的干预,以及操作系统提供的信息,来获得尽可能多的电源管理信息,实现在一定约束条件下系统整体能耗的最低。
电源管理方案具有如下特点:
l 该方案采用机制策略分离的思想,易于实现针对不同嵌入式应用和硬件变化的策略
l 对嵌入式系统中的任务和设备分类,使得系统及设备的电源管理更有针对性
l 支持动态的策略替换,给出了详细的接口,体现构件化的思想
l 基于预测的动态频率调整策略,利用CPU的能耗冗余降低能耗
l 基于历史统计的设备电源管理策略,降低设备的能源消耗
按照该电源管理方案实现了嵌入式操作系统构件,在arm7 44b0x平台,delta操作系统上进行了试验和测试。测试结果表明,针对周期实时应用,CPU动态频率调整电源管理,能耗比不进行电源管理时平均降低20%。LCD设备上分别进行了屏幕显示及LCD时钟两种方法控制电源状态,能耗比不进行设备电源管理时降低10%。该构件符合实现与接口分离的构件原则,具有良好的可复用性、可移植性、高效性。

