版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、本次课程内容包括您的潜力,我们的动力您的潜力,我们的动力Microsotta 微软(中国)有限公司WinCE电源管理李小伟软件应用工程经理上海掌微电子技术有限公司电源管理概要电源管理驱动程序的实现Microsoft微软(中国)有限公司内核级电源管理msdn收听本次课程需具备的条件您的潜力,我们的动力Microsoft微软(中国)有限公司 了解WINCE设备驱动程序开发的一般知识 初步了解WINCE电源管理驱动msdnMSDNWebcasts内容您的潜力,我们的动力A电源管理概要电源管理驱动程序的实现Microsoft微软(中国)有限公司内核级电源管理msdn电源管理驱动的功能您的潜力,我们的动
2、力Microsoft微软(中国)有限公司建立一个对整个系统环境,电源状态和设备电源 状态的全局了解可以自定义适合你的电源管理 驱动来全局地管理你的平台.设备驱动的电源管理可以从整个系统电源状态 管理中脱离,自己管理自己的电源状态.控制系统电源状态切换的过程.msdn电源管理架构您的潜力,我们的动力Microsoft微软(中国)有限公司msdn在WINCE中电源管理驱动的位置您的潜力,我们的动力Microsoft微软(中国)有限公司ApplicationsOS ServicesGWESDevice DriversHALDevice.exeHardwareOEM Adaption Layer wi
3、thPM supportmsdn电源管理驱动框架您的潜力,我们的动力Microsoft微软(中国)有限公司电源管理驱动提供了给应用程序和设备驱动程序的API PM.DLL通过自定义接口和DEVICE.EXE联接用IOCTL来调用驱动程序msdnMSDN Webcasts电源管理API您的潜力,我们的动力Microsoft微软(中国)有限公司应用程序接口类APIA应用程序可以调用此类API改变系统电源状态,或设定对 设备电源状态的需求设备驱动程序接口类API设备驱动程序调用此类API来管理设备电源状态消息通知(Notification)接口类 APIA应用程序调用此类接口 API来接收到电源状态
4、变化的消 息通知.msdnMicrosoft微软(中国)有限公司取得/设置系统电源状态> GetSystem PowerState> SetSystem PowerState>POWER_STATE_XXX 标志A可自定义的标志A例子:>WINCE500PUBLICCOMMONOAKDRIVERSPM TESTSET>WINCE500PUBLICCOMMONOAKDRIVERSPM TESTGETmsdnMSDN Webcasts您的潜力,我们的动力Microsoft微软(中国)有限公司应用程序接口类API设置/取消对设备电源状态的要求>SetPowerRe
5、quireme nt> ReleasePowerRequireme nt例子:>WINCE500PUBLICCOMMONOAKDRIVERSPM TESTREQA媒体播放器运行时,对显示驱动和背光的需求.msdnMSDN WebcastsMicrosoft微软(中国)有限公司取得/设置设备电源状态>GetDevicePower>SetDevicePower例子:>WINCE500PUBLICCOMMONOAKDRIVERSPMTESTGETD>WINCE500PUBLICCOMMONOAKDRIVERSPMTESTSETD协调用此API会限制电源管理驱动程序
6、更新设备电源状态参考帮助文档.msdnMSDN Webcasts设备驱动程序接口类API您的潜力,我们的动力Microsoft微软(中国)有限公司设备驱动程序调用电源管理驱动> DevicePowerNotify> RegisterPowerRelationship> ReleasePowerRelationship电源管理驱动调用设备驱动程序> DeviceloControl> IOCTL_POWER_CAPABILITIES> IOCTL_POWER_SET> IOCTL_POWER_QUERY>IOCTL_POWER_GET>IOCT
7、L_REGISTER_POWER_RELATIONSHIPmsdnMSDN Webcasts消息通知接口类API您的潜力,我们的动力Microsoft微软(中国)有限公司 RequestPowerNotifications> PBT_RESUME>紊统从挂起状态恢复时产生此消息.> PBT_POWERSTATUSCHANGE>系统在接上和断开外部电源时产生此消息.AC power> PBT_TRANSITION>当电源管理驱动改变系统电源状态时产生此消息.> PBT_POWERINFOCHANGE >电池状态改变时产生此消息. StopPower
8、Notifications例子:> WINCE500PUBLICCOMMONOAKDRIVERSPMTESTMON A丿应用程厅*通过此API获知电源/电池状态,切换电池图标.msdn电源管理驱动管理的设备驱动程临爲笄力微软(中国)有限公司设备类型:注册表项ICIass - GUID>HKEY_LOCAL_MACHINESYSTEMCurrentContro ISetControlPowerlnterfaces> Gen eric power-manageable devices> Power-manageable block devices> Power-man
9、ageable NDIS miniports> Power-manageable displayA例子:>WINCE500PUBLICCOMMONOAKDRIVERSPMTEST DEVSAMPLE> AdverstiselnterfaceA显示驱动程序调用此函数注册为Power-manageable disDlav类型的驱动.msdnMSDN Webcasts内容您的潜力,我们的动力电源管理概要A电源管理驱动程序的实现Microsoft微软(中国)有限公司内核级电源管理msdnWINCE里的电源管理驱动程序您的潜力,我们的动力Microsoft微软(中国)有限公司最少功能电
10、源管理驱动程序(PMSTUBS)>SYSGEN_PMSTUBSA不支持电漏管理API完全功能电源管理驱动程序>SYSGEN_PM支持电源管理API> WINCE提供了 2个实例>WINCE500PUBLICCOMMONOAKDRIVERSPMPDDPDA >WINCE500PUBLICCOMMONOAKDRIVERSPMPDDDEFAULTmsdn您的潜力,我们的动力电源管理驱动分层架构Microsoft微软(中国)有限公司 MDDA包含各类设备驱动的句柄A管理设备的电源状态A提供电源管理API的实现 PDDA制定/维护系统电源状态机管理A改变硬件电源状态msdn
11、MSDN Webcasts您的潜力,我们的动力Microsoft微软(中国)有限公司电源管理驱动MDD层的功能实现电源管理API跟踪和设置设备电源状态跟踪应用程序的消息通知请求.处理活动监视计数器处理设备加载/卸载的通知,并维护设备驱动程序的句 柄处理父设备与子设备之间的电源关系管理设备电源状态需求实现与设备驱动程序的调用接口> gStreamlinterface RequestStreamDevice TDeviceloControlgDisplaylnterface. RequestDisplayDevice T ExtEscapemsdnMSDN WebcastsMicrosoft
12、微软(中国)有限公司自定义系统电源状态机检查系统电源管理的注册表内容的一致性.实现电源管理驱动的消息处理,实现状态机管理.设置系统电源状态和相应设备进入对应的电源状态.您的潜力,我们的动力Microsoft微软(中国)有限公司系统电源状态自定义状态A On , Userldle5Systemldle 5Deepldle5Suspend, On Battery 3 InCradle 等状态.A 对应的 POWER_STATE_XXX 标志系统电源状态到设备电源状态的映射注册表设置HKEY_LOCAL_MACHINESYSTEMCurrentControlSetControl PowerState
13、 Default=dword: ; DOFlags=dword:10000; POWER_STATE_ONCOM1:=dword1; D1msdnMSDN WebcastsFull on (On)DOLow on (Userldle)D1Stand By (SystemIdle)D2Sleep (Suspend)D3Off (Off)D4Microsoft微软(中国)有限公司您的潜力,我们的动力设备电源状态msdnMSDN Webcasts系统电源状态到设备电源状态的映射您的潜力,我们的动力Microsoft微软(中国)有限公司映射到所有默认的设备HKEY_LOCAL_MACHINESYSTE
14、MCurrentControlSetControlPow erStateSystemldle“Default”二dword:2; D2“Flags性dword:100000; POWER_STATE_IDLE映射到某一特定类型的设备H KE Y_LOC AL_M AC HIN ES YSTEMCurrentControlSetControlPow erStateSystem ldleEB91 C7C9-8BF6-4a2d-9AB8-69724EED97D1 nDefauir'=dword:4 ; D4> ”EB91 C7C9-8BF6-4a2d-9AB8-69724EED97D1
15、“="Power-manageable display"msdnMicrosoft微软(中国)有限公司 GWES监视用户操作,通过事件(Event)来通矢口 电源管理驱动程序电源管理驱动程序通过事件(Event)和超时机 制来实现状态机用户活动计时器您的潜力,我们的动力Microsott9微软(中国)有限公司为每个状态创建相应的事件(Event)A 3个事件> A timer reset event.A An active status manual-reset eve nt.> A manu al-reset eve nt>HKEY_LOCAL_MACH
16、INESYSTEMCurrentContro ISetControlPowerActivityTimers JserActivity> Active->lnactive->timeout然后切换到下一个电源状态msdn电源状态变迁依靠超时机制您的潜力,我们的动力Microsoft微软(中国)有限公司 HKEY_LOCA l_MACHINESYSTEMCurrentControlS etCon trolPowerTimeouts“ACUserldle 冬dword:1e"ACSystem ldle'=dword :3cHACDeepldleH=dword:5a
17、”BattUserldle”=dword:1 e"BattSystem ldlen=dword :3c nBattDeepldle'=dword:5aHBatteryPoir,=dword:1f4按秒计数 0表示功能禁止,系统不会自动切换到此状态这些设置可以在”控制面板”里的电源管理里改变.msdnOnactivitUserinactiveTimeoutUserldleSystemActiveInteractiveSysteminactive(Event)TimeoutSystemldleSystemldle(PM State)TimeoutSuspendSuspendmsd
18、nMSDN Webcasts(System State)系统电源状态变迁您的潜力,我们的动力Microsoft微软(中国)有限公司您的潜力,我们的动力Microsoft微软(中国)有限公司msdnMSDN WebcastsSetSystemPowerStatetimeout(内部调用)外部调用)PlatfoirnUpdateSystemPowerStatePmSetSystemPowerStatePmSetSystemPowerStateIf External call(Internal call)PlatformMapPowerStateHintPlatformSetSystemPowerS
19、tateUpdateAllDeviceState(MDD)If NewState(PDD)GenerateNotifications匸二二二f 电源管理状态切换您的潜力,我们的动力Microsoft微软(中国)有限公司电源管理概要电源管理驱动的实现A内核级电源管理msdnMSDN WebcastsOEMIdle您的潜力,我们的动力Microsoft微软(中国)有限公司>OEMIdle当系统里没有线程要运行时被调用>OEMPowerOffA当系统要进入睡眠或关闭状态时被调用A睡眠唤醒的流程Microsoft微软(中国)有限公司当线程调度器里,没有线程需要运行时,调用此 函数.(Blo
20、cked waiting for input or eve nt.)负责将CPU置于低功耗状态,并且能快速恢复 到正常运行状态.不能将内存(DRAM)置于自刷新状态msdnMSDN Webcasts睡眠唤醒的流程您的潜力,我们的动力Microsoft微软(中国)有限公司进入睡眠时,此函数负责将系统置于一个功耗 最低的状态:A保存系统设置心A将内存(DRAM)置于自刷新状态>CPU停止工作(掉电)A禁止中断处理(用于唤醒系统的中断除外)退出睡眠状态时,此函数负责恢复系统的设置Microsoft微软(中国)有限公司睡眠A调用SetSystem PowerState进入睡眠状态电源管理驱动里设
21、置设备的电源状态A调用PowerOffSystem ()进入内核处理A调用各设备驱动的XXX_PowerDow n()A 调用 0 EMPowerOff()A进入睡眠Zzzzz.msdnMSDN WebcastsMicrosoft微软(中国)有限公司唤醒A触发唤醒中断,CPU被唤醒A开始执行Bootloader代码,判断冷启动还是唤醒A判断为从睡眠中唤醒,用保存在内存上的地址跳回 OEMPowerOff()里的唤醒位置,恢复系统设置A调用各设备驱动的XXX_PowerUp()回到电源管理驱动中,更新各设备驱动的电源状态A电源管理驱动发出系统状态变迁的消息通知A整个系统恢复到正常运行状态msdn
22、您的潜力,我们的动力Microsoft微软(中国)有限公司PowerOffSyste m 的流程 SC_PowerOff System ()>WINCE500PRIVATEWINCEOSCOREOSNKKERNELkwin32.cmsdnMSDN Webcasts内容您的潜力,我们的动力Microsoft微软(中国)有限公司电源管理概要电源管理驱动程序的实现内核级电源管理msdnMSDN Webcasts移动与嵌入式开发者大会(MEDC)您的潜力,我们的动力Microsoft微软(中国)有限公司移动与嵌入式开发者大会(MEDC)您的潜力,我们的动力移动与嵌入式开发者大会(MEDC)您的潜
23、力,我们的动力汲取新知,加速未来移动与嵌入式开发者大会(MEDC)您想洞悉最前沿的微软移动与嵌入式技术吗?您想聆听最权威的技术 专家现场讲授吗?您想全方位体盛移动新产品所带來的芜穷魅力吗? 2006 微软移动与嵌入式开发者大会将带领您与科技同步、与市场同行。详情请登录:msdn您的潜力,我们的动力Microsoft微软(中国)有限公司封面待定嵌入式系统Windows CE开发入门嵌入式系统Windows CEFF发入门基于Intel Xscale平台人民邮电出版社,2006年6月随着信息技术的深入发展,在手机和掌上 电脑等嵌入式产品上进行内核开发及程序设计 口益普及,方兴未艾。本书总结了作者多
24、年来在Windows CE. NET 下定制操作系统镜像及进行应用程序、驱动程 序开发的的体会,全面介绍了Platform Builder. eVC实用技术,特别是对内核定制方 面的详细介绍可以使读者初步掌握对Windows CE内核定制的技术及应用开发技术。您的潜力,我们的动力Windows Mobile平台应用与开发Windows Mobile平台应用与开发人民邮电出版社,2006年6月“在这样一个技术高度发达、到处都充满 信息的的年代,身为一名开发人员,我们有理 由让自己掌握最先进的移动设备应用开发技札 Windows Mobile平台应用与开发无疑是带 领开发者步入移动开发领域的最佳向导。这本 书不但介绍
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2024年全球汽车分销与运输合同
- 2024年国际借款合同样本
- 2024年个人应急小额贷款合同
- 2024年个体工商户与兼职员工劳动合同
- 2024年企业合同财务合规指南
- 2024年出口商与买家支付协调准则
- 2024年家庭保洁合作协议
- 2024年学校临时工餐饮服务协议
- 积分礼品换购协议
- 2024年个人家政服务合同全新范本
- 药物分类目录
- 模板支架及脚手架安全使用培训课件
- 中石油-细节管理手册 03
- 柿子品种介绍PPT课件
- 全国重点文物保护单位保护项目安防消防防雷计划书
- 内镜清洁消毒登记表格模板
- 护士对预防患者跌倒的问卷调查表
- 道路开口施工方案
- 天然气脱硫(课堂运用)
- 幼儿园教师师德师风考核表(共2页)
- 城镇职工医疗保险运行中的问题分析及措施
评论
0/150
提交评论