CN101893932A - 基于linux系统下的电源管理装置及其管理方法 - Google Patents
基于linux系统下的电源管理装置及其管理方法 Download PDFInfo
- Publication number
- CN101893932A CN101893932A CN 201010205725 CN201010205725A CN101893932A CN 101893932 A CN101893932 A CN 101893932A CN 201010205725 CN201010205725 CN 201010205725 CN 201010205725 A CN201010205725 A CN 201010205725A CN 101893932 A CN101893932 A CN 101893932A
- Authority
- CN
- China
- Prior art keywords
- module
- mode
- management
- hardware
- power management
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Images
Abstract
本发明涉及一种基于linux系统下的电源管理装置及其管理方法。其主要贡献在于,由本发明实现了对移动手持设备平台的节能控制,在基于静态的电源控制模式设定下可以自动切换到节能模式,并可以在当前运行状态闲置一段时间后及时地直接切换到待机或者休眠模式,而不影响当前的用户操作同时又起到节能的作用。并延长了设备的续航时间。
Description
技术领域
本发明涉及一种计算机技术领域的电源管理系统及该系统运行的方法,具体地说是一种基于linux系统下的电源管理装置及其管理方法。
背景技术
信息时代,智能手机和移动手持电脑逐渐普及,网络与多媒体技术被应用到各种移动设备之上,丰富了用户体验,同时也为设备的电源管理提出了新的挑战。当前主流的移动设备电源管理方案主要表现为为用户提供几种静态的运行模式,当设备在当前的运行模式空闲一段时间以后,就自动切换到待机模式等。然而,现有的电源管理方案,由于基于静态的电源控制模式设定,不能自动切换到节能模式,或者仅仅是在当前运行态闲置一段时间以后就直接切换到待机或者休眠模式,没有考虑当前的用户操作,影响用户体验的同时也不能很好的发挥动态节电的效果。
发明内容
本发明旨在提供一种基于Linux系统下的电源管理装置及其管理方法。通过本发明可以实现将Linux系统中的应用程序针对自己使用到的资源进行方便的电源管理,同时其应用程序又不用关心硬件细节;并且可以对被管理的各个硬件模块合理建模、抽象,同时又对应用程序提供简单的编程接口,屏蔽了操作复杂性,可以根据用户当前的操作切换到各种节点模式,动态地控制了设备能耗。
为此,本发明解决所述问题的技术方案是:一种基于linux系统下的电源管理装置,其特征在于,所述装置包括:应用程序模块,其用于调度设置在所述模块内的各种管理程序;电源管理模块,其用于管理各种运行模式的数据库文件、定时自动节能保护、电池管理;硬件控制模块,用于对底层硬件进行控制;所述应用程序模块、所述电源管理模块和所述硬件控制模块之间通过Dbus总线进行进程间通信;
其中,所述电源管理模块包括电源管理触发接口模块、模式切换模块、模式管理模块和硬件插件接口模块;所述电源管理触发接口模块在Dbus协议上建立,用于向所述模式切换模块发送指令消息,管理、调度、运行设置在模块内的各种函数;所述模式切换模块接收所述电源管理触发接口模块发送的消息,用来切换各种模式,并将指令发送至所述模式管理模块;所述模式管理模块用于管理管理系统预定义和用户自定义的各种运行模式;所述硬件插件接口模块用来建立相应的数据库,供所述模式切换模块和模式管理模块进行查询。
并且,所述的模式切换模块包括模式切换函数单元、控制点调整函数单元、切换当前休眠状态函数单元。
并且,所述的模式管理模块包括至少三个运行模式单元、三个休眠模式单元。
另外,本发明还包括一种基于linux系统下的电源管理方法,所述方法是由所述的电源管理模块根据当前系统生成或运行状态创建其电池管理线程的步骤,包括:(1)建立主程序入口;(2)初始化模式数据库;(3)初始化dbus;(4)设定计时器;(5)判断计时器到时:(6)若否则转入处理dbus消息,若是则转到步骤(7):(7)进入相应节电模式;(8)收到中断退出节电模式;转到步骤(5)。
并且,所述步骤(5)至(8)中至少还包括运行、多媒体、待机、休眠的调度模式步骤,且所述模式的指针指向具有调控显示器背光亮度、扬声器音量强度、蓝牙模块开、键盘背光亮度的策略模式。
并且,所述步骤(5)至(8)中至少还包括正常模式、多媒体模式、待机模式、休眠模式、音乐模式、飞行模式的节电模式转换步骤。
相比现有技术,本发明具有的积极效果是:实现了对移动手持设备平台的节能控制,在基于静态的电源控制模式设定下可以自动切换到节能模式,并可以在当前运行状态闲置一段时间后及时地直接切换到待机或者休眠模式,而不影响当前的用户操作同时又起到节能的作用。并延长了设备的续航时间。
附图说明
图1是本发明的基于linux系统下的电源管理装置结构示意图;
图2是本发明的电源管理流程示意图;
图3是关于图2步骤(5)至(8)中的运行模式与策略流程示意图;
图4是关于图2步骤(5)至(8)中的节电模式转换流程示意图。
具体实施方式
通过以下实施例将更好的理解本发明涉及的基于linux系统下的电源管理装置以及电源的管理方法。当然,无论是本发明的装置还是方法,实施例所描述的技术方案仅仅是出于对本发明理解的方便,并不限于本发明主张的范围,可以认为,凡是涉及基于linux系统下的电源管理装置以及电源的管理方法的技术方案都应属于本发明技术手段的若干。
参见图1,本例中描述的是一种基于linux系统下的电源管理装置,其所述装置包括:电源管理模块,其用于管理各种运行模式的数据库文件、定时自动节能保护、电池管理;所述电源管理模块是由包括电源管理触发接口模块、模式切换模块、模式管理模块、硬件插件模块等模块在内的功能性模块组成;其中的电源接口触发模块电源管理触发接口在dbus协议的基础上构建,其他应用程序可以通过向电源接口触发模块注册的DBUS总线发送消息,来申请电源管理模块的相应服务。模式切换模块又包括了模式切换函数单元、控制点调整函数单元、切换当前休眠状态函数单元,它们的功能体现在用于管理、调度、运行设置在模式管理模块内的各种函数。模式管理模块用来管理系统预定义以及用户自定义的各种运行模式,当应用程序申请切换到某一模式时,该模块将查询模式数据库,保存当前模式,并完成相应的切换操作,当应用程序退出时,该模块将还原到应用程序运行前的电源模式。所述硬件插件接口模块主要负责对电源管理服务程序所要管理的硬件对象进行合理的分类,操作方式进行细分,并建立相应的数据库,由另外两个子模块来查询使用。该数据库由模式,策略,控制点,指令,参数等字段组成。硬件控制模块是电源管理模块与底层硬件打交道的接口。针对与linux对不同硬件的访问机制,该接口对模式切换模块和模式管理封装了统一的操作接口,屏蔽了不同的硬件访问方式,只需要根据数据库中的分类,指定相应的分类名,命令名,和参数名就可以完成对硬件的操作,该模块封装的接口主要包括libhal、sysfs等。
针对每种硬件,硬件控制模块都封装相应的硬件控制函数,针对不同的硬件控制平台,函数的实现各不相同。也就是说,基于libhal的硬件控制函数,主要是通过libhal编程接口向libhal层注册属性查询和修改函数来完成;而基于sysfs的函数主要是通过读写/sys目录下的文件节点来完成对硬件的控制。本案中所述的模块封装的接口主要包括libhal(linux平台上基于dbus和udev框架的硬件管理框架)、sysfs(linux平台用于设备管理和驱动管理的内核文件系统)、udev(linux平台基于sysfs的用户空间设备管理框架)等。
本发明装置中的另一组成部分是电源管理触发接口模块,它是建立在dbus(linux平台应用层上一种进程间通信框架)协议的基础上的,它可以通过向电源管理模块注册的DBUS总线发送消息,来申请电源管理模块的相应服务。例如,当该模块首先创建一个dbus总线对象时,应用程序接口模块可以向该dbus对象发送消息来请求进行模式切换。该dbus总线服务之后被关联到了一个消息处理函数,该函数对接收到的消息进行处理,该函数主要处理三类消息,分别是模式切换函数消息,控制点调整函数消息以及切换当前休眠状态函数消息。其中模式切换消息要求电源模式管理模块切换到某一个预定的模式,收到该消息后,电源管理模块将首先调用该模块的模式保护函数用以停止计时器、保存当前模式,并完成到指定模块的切换,再重启计时器。如果收到的是控制点调整函数更改消息,电源管理模块将把消息转移给模式管理模块,该消息主要包括控制点的名称和要更改的控制点参数,此时模式管理模块将首先停止计时器,并在数据库中查找到当前模式下该控制点以及相应的参数,然后根据应用程序请求的相应参数,由模式切换模块改变该控制点的相应参数并切换到相应的节电模式,再重启计时器。如果收到的是控制点信息查询消息,则模式切换模块在数据库中查找当前控制点的相应信息,并由dbus返回给应用程序接口模块;本电源装置中的应用程序模块,其内部嵌入了休眠管理程序单元、电源管理程序单元、电池管理程序单元、音量管理程序单元、开关机管理程序单元,这些单元是被用于调度嵌入在其应用程序接口模块内的各种管理程序,它们与电源管理触发接口之间形成一个物理界面,而电源管理触发接口则通过至少三条路径与所述的电源模式管理模块相连接。
参见附图2,它描述了本发明的电源管理流程。这个流程是由电源模式管理模块根据当前系统生成或运行状态创建其电池管理线程的步骤,包括:(1)建立主程序入口;(2)初始化模式数据库;(3)初始化dbus;(4)设定时器;(5)判断计时器到时:(6)若否则转入处理dbus消息,若是则转入步骤(7):(7)进入相应节电模式;(8)收到中断退出节电模式;转到步骤(5)。具体描述如下:当装置的程序启动以后,主程序首先通过硬件控制层接口,对数据库中的硬件接口依次进行查询,更新数据库中的硬件状态信息和电源管理模式与策略信息,之后,由电源模式管理模块切换到默认的电源管理模式运行,并创建了dbus总线服务,来响应应用程序发送的模式切换请求。主程序之后创建一个定时器,并交由模式管理模块来管理,每次定时器超时后,就会调用智能模式管理模块的函数来进行模式切换。如果在定时器计时过程中发生了用户操作,则定时器被复位。模式切换模块则可根据当前的操作模式和供电方式决定定时器超时时进入那种节电模式。
参见附图3、4,从系统的运行模式与策略及节电模式转换流程来看,模式切换模块担当了定时自动节能保护、电池管理这三种功能的角色。例如,本案中的运行模式数据库由以下数据结构组成:首先是多种运行模式,分别是正常模式,多媒体模式,待机模式,休眠模式,音乐模式和飞行模式。每种运行模式包含多条策略,每条策略真对一个硬件模块指标,如屏幕亮度,扬声器音量,CPU运行状态,射频模块开关等等,每条策略包含了硬件指标的当前状态。同时,运行模式数据库还针对每个硬件模块建立了命令列表,主要包含了每个硬件模块可能采取的操作指令。运行模式数据库对电源模式管理模块所控制的每种硬件进行建模,主要分为三类,包括开关型硬件,连续型硬件和可降频型硬件。在进入节电模式时,模式切换模块将根据硬件的不同类型,进行不同的节电操作。例如开关型硬件将被直接关闭,连续型硬件被置于最小值,降频型硬件被降到允许的最低频率。每种硬件模型都有对应的硬件操作保存在硬件命令函数表中。模式切换模块将在命令表中查询相应的硬件操作,传递给硬件控制模块,最终实施相应的硬件操作。
更主要的是,模式切换模块能维持一个供电状态变量,当有充电器插入时,状态为正。当使用电池供电时,状态为负。当状态为负时,由模式切换模块维持一个状态图和一个计时器,每当计时器处于超时状态时,其切换模式是根据状态图,将当前的运行模式切换到状态图中下一个模式,对于之前提到的几种模式,多媒体模式将切换到音乐模式,其余的模式将切换到休眠模式。用户可以通过电源管理配置接口,将正常模式的节能状态设定为待机模式,这样,除多媒体模式切换到音乐模式外,其余模式在节电计时器到时时均切换到待机模式。
Claims (7)
1.一种基于linux系统下的电源管理装置,其特征在于,所述装置包括:应用程序模块,其用于调度设置在所述模块内的各种管理程序;
电源管理模块,其用于管理各种运行模式的数据库文件、定时自动节能保护、电池管理;
硬件控制模块,用于对底层硬件进行控制;
所述应用程序模块、所述电源管理模块和所述硬件控制模块之间通过Dbus总线进行进程间通信;
其中,所述电源管理模块包括电源管理触发接口模块、模式切换模块、模式管理模块和硬件插件接口模块;
所述电源管理触发接口模块在Dbus协议上建立,用于向所述模式切换模块发送指令消息,管理、调度、运行设置在模块内的各种函数;所述模式切换模块接收所述电源管理触发接口模块发送的消息,用来切换各种模式,并将指令发送至所述模式管理模块;所述模式管理模块用于管理管理系统预定义和用户自定义的各种运行模式;所述硬件插件接口模块用来建立相应的数据库,供所述模式切换模块和模式管理模块进行查询。
2.根据权利要求1所述的基于linux系统下的电源管理装置,其特征在于,所述应用程序接口模块通过所述电源管理触发接口的至少三条路径与所述电源模式管理模块相连接。
3.根据权利要求2所述的基于linux系统下的电源管理装置,其特征在于,所述的模式切换模块包括模式切换函数单元、控制点调整函数单元、切换当前休眠状态函数单元。
4.根据权利要求2所述的基于linux系统下的电源管理装置,其特征在于,所述的模式管理模块包括至少三个运行模式单元、三个休眠模式单元。
5.一种基于linux系统下的电源管理方法,其特征在于,由所述的电源模式管理模块根据当前系统生成或运行状态创建其电池管理线程的步骤,包括:(1)建立主程序入口;(2)初始化模式数据库;(3)初始化dbus;(4)设定时器;(5)判断计时器到时:(6)若否则转入处理dbus消息,若是则:(7)进入相应节电模式;(8)收到中断退出节电模式;转到步骤(5)。
6.根据权利要求6所述的基于linux系统下的电源管理方法,其特征在于,所述步骤(5)至(8)中至少还包括运行、多媒体、待机、休眠的调度模式,且所述模式的指针指向具有调控显示器背光亮度、扬声器音量强度、蓝牙模块开、键盘背光亮度的策略模块。
7.并根据权利要求6所述的基于linux系统下的电源管理装置,其特征在于,所述所述步骤(5)至(8)中至少还包括正常模式、多媒体模式、待机模式、休眠模式、音乐模式、飞行模式的节电模式转换步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN 201010205725 CN101893932A (zh) | 2010-06-22 | 2010-06-22 | 基于linux系统下的电源管理装置及其管理方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN 201010205725 CN101893932A (zh) | 2010-06-22 | 2010-06-22 | 基于linux系统下的电源管理装置及其管理方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN101893932A true CN101893932A (zh) | 2010-11-24 |
Family
ID=43103143
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN 201010205725 Pending CN101893932A (zh) | 2010-06-22 | 2010-06-22 | 基于linux系统下的电源管理装置及其管理方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN101893932A (zh) |
Cited By (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102156535A (zh) * | 2011-04-01 | 2011-08-17 | 奇智软件(北京)有限公司 | 一种硬件节能的处理方法及装置 |
CN103024548A (zh) * | 2012-12-29 | 2013-04-03 | 四川九洲电器集团有限责任公司 | 一种机顶盒定时自动休眠方法 |
CN104077156A (zh) * | 2013-03-28 | 2014-10-01 | 深圳芯力电子技术有限公司 | 可程序化中央处理单元的重新启动系统及其方法 |
CN104853418A (zh) * | 2015-02-11 | 2015-08-19 | 数据通信科学技术研究所 | 低功耗终端和低功耗控制方法 |
CN107393484A (zh) * | 2014-07-04 | 2017-11-24 | 联想(北京)有限公司 | 一种系统控制方法及电子设备 |
CN112433590A (zh) * | 2020-11-20 | 2021-03-02 | 深圳麦格米特电气股份有限公司 | 一种电源管理系统及方法 |
CN113961261A (zh) * | 2021-12-22 | 2022-01-21 | 北京鲸鲮信息系统技术有限公司 | 休眠管理方法、装置、电子设备及存储介质 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20050120256A1 (en) * | 2003-11-20 | 2005-06-02 | De-Jen Lu | Windows-driven power management for peripheral devices in a computer system |
CN1716144A (zh) * | 2004-07-02 | 2006-01-04 | 上海迪比特实业有限公司 | 一种降低电子设备功耗的方法 |
CN1752896A (zh) * | 2005-11-08 | 2006-03-29 | 北京大学 | 操作系统协作下的嵌入式设备电源管理方法及系统 |
CN101145036A (zh) * | 2006-03-03 | 2008-03-19 | 智邦科技股份有限公司 | 电源管理结构及管理机制 |
CN101697095A (zh) * | 2009-10-30 | 2010-04-21 | 华南理工大学 | 一种基于Linux嵌入式系统的动态电源管理的方法 |
-
2010
- 2010-06-22 CN CN 201010205725 patent/CN101893932A/zh active Pending
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20050120256A1 (en) * | 2003-11-20 | 2005-06-02 | De-Jen Lu | Windows-driven power management for peripheral devices in a computer system |
CN1716144A (zh) * | 2004-07-02 | 2006-01-04 | 上海迪比特实业有限公司 | 一种降低电子设备功耗的方法 |
CN1752896A (zh) * | 2005-11-08 | 2006-03-29 | 北京大学 | 操作系统协作下的嵌入式设备电源管理方法及系统 |
CN101145036A (zh) * | 2006-03-03 | 2008-03-19 | 智邦科技股份有限公司 | 电源管理结构及管理机制 |
CN101697095A (zh) * | 2009-10-30 | 2010-04-21 | 华南理工大学 | 一种基于Linux嵌入式系统的动态电源管理的方法 |
Cited By (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102156535A (zh) * | 2011-04-01 | 2011-08-17 | 奇智软件(北京)有限公司 | 一种硬件节能的处理方法及装置 |
CN103024548A (zh) * | 2012-12-29 | 2013-04-03 | 四川九洲电器集团有限责任公司 | 一种机顶盒定时自动休眠方法 |
CN104077156A (zh) * | 2013-03-28 | 2014-10-01 | 深圳芯力电子技术有限公司 | 可程序化中央处理单元的重新启动系统及其方法 |
CN104077156B (zh) * | 2013-03-28 | 2017-08-25 | 深圳芯力电子技术有限公司 | 可程序化中央处理单元的重新启动系统及其方法 |
CN107393484A (zh) * | 2014-07-04 | 2017-11-24 | 联想(北京)有限公司 | 一种系统控制方法及电子设备 |
CN104853418A (zh) * | 2015-02-11 | 2015-08-19 | 数据通信科学技术研究所 | 低功耗终端和低功耗控制方法 |
CN104853418B (zh) * | 2015-02-11 | 2019-02-15 | 数据通信科学技术研究所 | 低功耗终端和低功耗控制方法 |
CN112433590A (zh) * | 2020-11-20 | 2021-03-02 | 深圳麦格米特电气股份有限公司 | 一种电源管理系统及方法 |
CN113961261A (zh) * | 2021-12-22 | 2022-01-21 | 北京鲸鲮信息系统技术有限公司 | 休眠管理方法、装置、电子设备及存储介质 |
CN113961261B (zh) * | 2021-12-22 | 2022-04-19 | 北京鲸鲮信息系统技术有限公司 | 休眠管理方法、装置、电子设备及存储介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN101893932A (zh) | 基于linux系统下的电源管理装置及其管理方法 | |
CN103188277B (zh) | 负载能耗管理系统、方法和服务器 | |
CN100541393C (zh) | 管理计算机系统中电源的装置和方法 | |
US8386826B2 (en) | System and method for managing power of a portable device | |
CN102810908B (zh) | 通信基站电源并联监控方法及通信基站电源系统 | |
CN102298532A (zh) | 一种基于启动项的管理方法及装置 | |
CN104184884B (zh) | 一种移动终端功耗的管控装置及方法、移动终端 | |
CN106059835B (zh) | 一种低能耗计算机集群节点的高可靠性控制方法 | |
CN103701889A (zh) | 一种基于云计算的数据中心节能方法 | |
CN101541068A (zh) | 一种wlan网络的控制方法和设备 | |
CN102014021A (zh) | 一种控制数据链路通断的方法及装置 | |
CN103167185A (zh) | 电池节能方法和系统 | |
CN105867591A (zh) | 一种终端控制方法及装置 | |
CN103345415A (zh) | 管理定时器的终端节能方法和装置 | |
CN105992317B (zh) | 无线通讯模块管理方法和无线通讯模块管理装置 | |
CN106790611A (zh) | 物联网设备的监控方法、监控装置及监控系统 | |
CN109791426A (zh) | 设备浪涌电流的经排定优先级的定序 | |
CN108023958A (zh) | 一种基于云平台资源监视的资源调度系统 | |
CN106662908A (zh) | 用于基于协作硬件和软件场景的功率管理的技术 | |
KR102060431B1 (ko) | 멀티 코어 시스템의 전력 관리 장치 및 방법 | |
CN102681649A (zh) | 一种多智能设备延长电池续航能力的装置及方法 | |
CN107493595A (zh) | 一种低功耗安全认证装置及控制方法 | |
CN110933739A (zh) | 一种电子设备唤醒方法、电子设备 | |
CN101360290A (zh) | 实现终端定时开机的方法及终端 | |
CN103905652A (zh) | 电源管理方法及电子设备 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C12 | Rejection of a patent application after its publication | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20101124 |