Windows CE的电源管理.docVIP

  1. 1、本文档共14页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
Windows CE的电源管理之一 Windows CE的基本电源管理功能 ??? 在所有版本的Windows CE操作系统中,图形、视窗和事件子系统(GWES)在电源管理方面都发挥了关键作用。这是因为早期版本的电源管理功能是由用户的活动所驱动的,而GWES负责处理所有用户的输入,如键盘、鼠标和触摸屏。GWES设置定时器监控用户的活动,当一段时间内用户没有任何输入时,便使系统进入休眠状态。通过注册表可以设置这几个定时器的超时值,它们可以分别被用于电池供电或外部电源供电时。当然,通过注册表也可以禁用GWES的电源管理功能,它在Windows CE.NET以后的版本中是默认被禁用的,这有利于电源管理器的集中管理。 ?????????????????????????????????? 图1 Windows CE基本的电源转换流程 状态及其转换 描述 No Power 既没有电池也没有外部电源供电. On 所有设备上电的常规运行状态. Suspend 休眠状态,这时大部分设备关闭,仅RAM(自刷新)和外部时钟运行. Idle 空闲状态,这时可停止CPU的运行. Critical off 电池电压过低的状态. Power-on reset 系统清空RAM并初始化文件系统. Cold boot First application of power, for example, when a backup battery is installed. Warm boot 软启(热启动),清空RAM并返回运行(On)状态. On-to-Idle 从全速运行状态到空闲状态的转换. Idle-to-On 处理器从低功耗状态回到全速运行状态. On-to-Suspend 由于某些事件的触发,处理器转换到停止运行状态。并调用设备驱动函数 XXX_PowerDown. Suspend-to-On 由特定的唤醒事件触发,处理器从停止状态返回到全速运行态。并调用设备驱动函数XXX_PowerUp. On-to-Critical off 当电池电压过低时转换到Critical off状态. ??? 上图是Windows CE系统基本的电源状态转换策略,对应有5种系统电源状态(等级):No Power, On, Suspend, Idle, Critical off。相关描述和转换方式参见上表。? SUSPEND): ?????????????? 用户按下On/Off按钮; ?????????????? 监控用户活动的定时器超时; ?????????????? 应用程序调用API,如GwesPowerOffSystem或SetSystemPowerState。 当下面的一种事件发生时,系统将退出休眠状态: ?????????????? 用户再次按下On/Off按钮; ?????????????? 发生某个警告事件,如某个日期或时间定时器的到时提醒; ?????????????? 发生某个唤醒事件,由外设如串口设备或者网卡触发中断来唤醒系统。 虽然通过用户操作、应用程序或者外设都可以使系统进入或者退出休眠状态,但基本的电源管理功能所能控制的粒度过大,对应于CPU只有三种状态:On,Idle和Suspend,对应于所有外设只有两种状态:On和Suspend。而且,当系统进出休眠状态时,应用程序都得不到任何通知。 Windows CE的高级电源管理功能 加入了电源管理组件的Windows CE具有高级的电源管理功能,它允许每个外设具有自己的电源状态,有别于一般的系统电源状态(System Power State),被称作设备电源状态(Device Power State)。现在应用程序有能力设置个别外设的电源状态,比如一个文件传输程序,在保持串口或者蓝牙端口正常通讯时,可以关闭显示屏幕和背光。这就为实现更高级别的动态电源管理提供了可能。 我们可以通过注册表任意设定一组系统电源状态,使其对应于我们设计的状态模型。对于设备电源状态则没有这么大的灵活度,它具有5个设备状态: D0:Full on;D1:Low on;D2:Standby;D3:Sleep;D4:Off 当定义好系统电源状态,并为每个外设分配了设备电源状态后,通过注册表,我们可以将两者进行映射。在某个系统电源状态下,比如一个电池供电的系统,当电池电量已经少于50%时,显示屏幕和背光可能处于D1状态,而网络设备可以设置为D3状态。也就是说,在同一时刻,不同的外设可能处于不同的设备电源状态中。这样的灵活性意味着每个设备可以最小程度的消耗电池资源。 ?????? 图2 Windows CE高级电源管理框架 如图2所示,电源管理器实现为一个名为Pm.dll的动态链接库,电源管理

文档评论(0)

精华文档888 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档