快捷搜索:  as  2018  FtCWSyGV  С˵  test  xxx  Ψһ  w3viyKQx

澳门新葡亰平台游戏app: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

Fir澳门新葡亰平台游戏appst 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种系统电源状澳门新葡亰平台游戏app态(等级):No Power, On, Suspend, Idle, Critical off。相关描述和转换要领拜见上表。

基础的电源治理功能所采纳的节能措施是使系统合时的进入休眠状态,当下面的一种事故发生时,系统将进入休眠状态(SUSPEND):

l用户按下On/Off按钮;

l监控用户活动的准时器超时;

l利用法度榜样调用API,如GwesPowerOffSystem或SetSystemPowerState。

当下面的一种事故发生时,系统将退出休眠状态:

l用户再次按下On/Off按钮;

l发生某个警告事故,如某个日期或光阴准时器的到时提醒;

l发生某个唤醒事故,由外设如串口设备或者网卡触发中断来唤醒系统。

虽然经由过程用户操作、利用法度榜样或者外设都可以使系统进入或者退出休眠状态,但基础的电源治理功能所能节制的粒度过大年夜,对应于CPU只有三种状态:On,Idle和Suspend,对应于所有外设只有两种状态:On和Suspend。而且,当系统收支休眠状态时,利用法度榜样都得不到任何看护。

Windows CE的高档电源治理功能

加入了电源治理组件的Windows CE具有高档澳门新葡亰平台游戏app的电源治理功能,它容许每个外设具有自己的电源状态,有别于一样平常的系统电源状态(System Power State),被称作设备电源状态(Device Power State)。现在利用法度榜样有能力设置个别外设的电源状态,比如一个文件传输法度榜样,在维持串口或者蓝牙端口正常通讯时,可以关闭显示屏幕和背光。这就为实现更高档其余动态电源治理供给了可能。

我们可以经由过程注册表随意率性设定一组系统电源状态,使其对应于我们设计的状态模型。对付设备电源状态则没有这么大年夜的机动度,它具有5个设备状态:

D0:Full on;D1:Low on;D2:Standby;D3:Sleep;D4:Off

当定义好系统电源状态,并为每个外设分配了设备电澳门新葡亰平台游戏app源状态后,经由过程注册表,我们可以将两者进行映射。在某个系统电源状态下,比如一个电池供电的系统,当电池电量已经少于50%时,显示屏幕和背光可能处于D1状态,而收集设备可以设置为D3状态。也便是说,在同一时候,不合的外设可能处于不合的设备电源状态中。这样的机动性意味着澳门新葡亰平台游戏app每个设备可以最小程度的耗损电池资本。

图2 Windows CE高档电源治理框架

如图2所示,电源治理器实现为一个名为Pm.dll的动态链接库,电源治理接口分为利用法度榜样和驱动法度榜样两部分。驱动法度榜样经由过程DeviceIoControl办事例程来处置惩罚电源治理器发来的设备电源状态改变哀求,别的电源治理器经由过程消息行列步队看护利用法度榜样电源相关的事故。

为了得到高档电源节制的功能,必须经由过程Platform Builder将电源治理组件编译到内核镜像中。实现的源代码拜见{WINCEROOT}\Private\Winceos\Coreos\Device \PMIF\pmif.c,这段代码只是一个封装,它会调用{WINCEROOT}\Public\Common\Oak\Drivers\PM中的组件。参考这个实现OEM可以根据必要设计自己的电源治理策略。

下一篇将分三个部分来解读WinCE的电源治理,首先从系统平台开拓的角度,这部分一样平常由OEM厂商认真实现,然后先容电源治理的接口,分手从设备驱动和利用法度榜样的角度先容若何利用电源治理。

您可能还会对下面的文章感兴趣: