本发明涉及系统功耗

技术领域:

,尤其涉及一种基于Android系统的功耗计算方法。

背景技术:

:为了细粒度实时分析系统各部件以及应用程序的功耗特性,并且进一步挖掘用户的日常行为,我们需要建立功耗模型。操作系统级的功耗建模,国内外已经有过很多的研究,现有技术中,对软件功耗建模方法可归纳为以下四种:(1)采用离线方式对指令的静态和动态功耗分别求和,形成指令级功耗模型;(2)选择影响功耗的关键因子作为宏建模的基本特征,而这些影响因素直接决定了模型的粒度;(3)基于性能计数器PMU的功耗建模;(4)利用体系结构功耗模拟器进行精密功耗建模。利用微体系结构的功耗模型量化了嵌入式操作系统功耗,并通过分析内核执行路径、例程以及内核服务的功耗,挖掘出内核中相对耗电的软件模块以指导功耗优化。上述的功耗模型粒度太细,往往需要硬件体系结构的支持,开销比较大,更重要的是忽略了上层应用程序的行为更乃至用户的行为。技术实现要素:为解决上述技术问题,本发明提供一种基于Android系统的功耗计算方法,包括基于Android系统的功耗系统,所述基于Android系统的功耗系统包括应用功耗单元和系统功耗单元;所述计算方法的计算公式为:Ptotal=Papp+Psystem;所述应用功耗单元的功耗计算公式为:Papp=∑Pprocess_CPU+Pwakelock+PDT+Papp_WIFI+Psensor;所述系统功耗单元的功耗计算公式为:Psystem=Pphone+Pradio+Pscreen+PWIFI+Pbluetooth+Pidle。更进一步的,所述应用功耗单元的功耗计算公式中:所述Pprocess_CPU为线程的CPU的耗电量,所述Pwakelock为应用程序的WakeLock的耗电量,所述PDT为应用程序的数据传输的耗电量,所述Papp_WiFi为应用程序使用WIFI的耗电量,所述Psensor为应用程序的传感器耗电量。更进一步的,所述Pprocess_CPU=∑((Tuser_mode+Tkernel_mode)×DCPU_ACTIVE×Sfreq),所述Pwake_lock=∑Twakelock×DCPU_AWAKE,所述Papp_WIFI=Tapp_WIFI×DWIFI_ON,所述Psensor=Pnormal+TGPS×DGPS_ON,所述PDT=(Bin+Bout)×PperByte。更进一步的,所述系统功耗单元的功耗计算公式中:所述Psystem为非应用程序造成的耗电量,所述Pphone为接打电话的耗电量,所述Pradio为不同强度基带待机+信号扫描的耗电量,所述Pscreen为开启+不同亮度持续的耗电量,所述PWiFi为开启+无数据传输运行的耗电量,所述Pbluetooth为开启+AT指令的耗电量,所述Pidle为空闲的耗电量。更进一步的,所述Pphone=Tphone×DRADIO_ACTIVE,所述Pradio=∑(Tradio_i×DRADIO_ON_i)+Tscanning×DRADIO_SCANNING,所述Pscreen=Ton×DSCREEN_ON+∑(DSCREEN_FULL×(bi+0.5f)×Tbi),所述PWIFI=TWIFI_on×0×DWIFI_ON+(Tall_WIFI-Tapp_WIFI)×DWIFI_ON,所述所述Pidle=DCPU_IDLE×(Ttotal-Tscreen)。本发明的基于Android系统的功耗计算方法,可以用于分析所述应用功耗单元和所述系统功耗单元对功耗的影响,并以此作为基础进行功耗优化,主要包括:(1)程序系统日志(创建部件/线程)分析,即基于Android系统日志,分析四大组件的生命周期和应用程序及其组件之间的跳转调用关系,四大组件包括Activity、Service、ContentProvider以及BroadcastReceiver;(2)用户使用应用程序的状况,包括时间、应用名、程序部件等。具体实施方式下面详细描述本发明的实施方式,下面描述的实施例是示例性的,旨在用于解释本发明,而不能理解为对本发明的限制。本发明提供一种基于Android系统的功耗计算方法,本计算方法使用Android系统自带的电量消耗统计算法进行耗电量计算,Android系统中的应用程序以UID区分,电量统计的单位是毫安秒(mA·s)。电量统计的数据来源分两部分:一部分来自Android系统中的PowerProfile.xml文件(由手机厂商提供),文件中记录了各设备不同状态对应的电流值/进行某操作需要消耗的电量值;另一部分来自系统采集模块,如某部件的执行时间或数据传输量;所述基于Android系统的功耗计算方法包括基于Android系统的功耗系统,所述基于Android系统的功耗系统包括应用功耗单元和系统功耗单元;所述计算方法的计算公式为:Ptotal=Papp+Psystem;所述应用功耗单元的功耗计算公式为:Papp=∑Pprocess_CPU+Pwakelock+PDT+Papp_WIFI+Psensor;所述系统功耗单元的功耗计算公式为:Psystem=Pphone+Pradio+Pscreen+PWIFI+Pbluetooth+Pidle。其中,所述应用功耗单元的功耗计算公式中:所述Pprocess_CPU为线程的CPU的耗电量,所述Pwakelock为应用程序的WakeLock的耗电量,所述PDT为应用程序的数据传输的耗电量,所述Papp_WiFi为应用程序使用WIFI的耗电量,所述Psensor为应用程序的传感器耗电量,具体如表1所示:表1更进一步的,所述Pprocess_CPU=∑((Tuser_mode+Tkernel_mode)×DCPU_ACTIVE×Sfreq),所述Pwake_lock=∑Twakelock×DCPU_AWAKE,所述Papp_WIFI=Tapp_WIFI×DWIFI_ON,所述Psensor=Pnormal+TGPS×DGPS_ON,所述PDT=(Bin+Bout)×PperByte。更进一步的,所述系统功耗单元的功耗计算公式中:所述Psystem为非应用程序造成的耗电量,所述Pphone为接打电话的耗电量,所述Pradio为不同强度基带待机+信号扫描的耗电量,所述Pscreen为开启+不同亮度持续的耗电量,所述PWiFi为开启+无数据传输运行的耗电量,所述Pbluetooth为开启+AT指令的耗电量,所述Pidle为空闲的耗电量;具体如表2所示:符号说明符号说明Tuser_mode用户态时间Tapp_WiFiapp使用WIFI的时间Tkernel_mode内核态时间DWIFI_ONPOWER_WIFI_ON基准DCPU_ACTIVEPOWER_CPU_AWAKE基准DGPS_ONPOWER_GPS_ON基准Sfreq该功率时间所占比例Pnormal普通传感器的耗电量Twakelockwakelock时间TGPSapp使用GPS的时间DCPU_AWAKEPOWER_CPU_AWAKE基准表2更进一步的,所述Pphone=Tphone×DRADIO_ACTIVE,所述Pradio=∑(Tradio_i×DRADIO_ON_i)+Tscanning×DRADIO_SCANNING,所述Pscreen=Ton×DSCREEN_ON+∑(DSCREEN_FULL×(bi+0.5f)×Tbi),所述PWIFI=TWIFI_on×0×DWIFI_ON+(Tall_WIFI-Tapp_WIFI)×DWIFI_ON,所述所述Pidle=DCPU_IDLE×(Ttotal-Tscreen)。各详细参数如表3所示:表3详细参数如表4所示:表4系统耗电量算法参数如表5所示:表5本发明的基于Android系统的功耗计算方法,可以用于分析所述应用功耗单元和所述系统功耗单元对功耗的影响,并以此作为基础进行功耗优化,主要包括:(1)程序系统日志(创建部件/线程)分析,即基于Android系统日志,分析四大组件的生命周期和应用程序及其组件之间的跳转调用关系,四大组件包括Activity、Service、ContentProvider以及BroadcastReceiver;(2)用户使用应用程序的状况,包括时间、应用名、程序部件等。以上所述,仅是本发明的最佳实施例而已,并非对本发明作任何形式上的限制,任何熟悉本领域的技术人员,在不脱离本发明技术方案范围情况下,利用上述揭示的方法内容对本发明技术方案做出许多可能的变动和修饰,均属于权利要求保护的范围。当前第1页1&nbsp2&nbsp3&nbsp

android开发 wifi功率,一种基于Android系统的功耗计算方法与流程相关推荐

  1. 基于android的智能照明,一种基于Android、IOS与ZigBee的智能LED照明控制系统的制作方法...

    本发明涉及LED照明领域,尤其涉及一种基于Android.IOS与ZigBee的智能LED照明控制系统. 背景技术: 目前普遍使用的Android智能手机和平板电脑为智能家居照明系统提供了一个直观快捷 ...

  2. android智能识别技术,一种基于Android的智能心音听诊与识别系统

    主权项: 1. 一种基于Android的智能心音听诊与识别系统,其特征在于:包含心音采集设备以及Android手机,心音采集硬件设备由驻极体话筒.30Hz到500Hz滤波器.主控制芯片.蓝牙芯片模组. ...

  3. android 获取hdmi数据格式,一种基于Android系统HDMI同显时节省带宽的方法与流程

    本发明涉及一种基于Android系统HDMI同显时节省带宽的方法,属于计算机领域. 背景技术: 通常很多移动设备都配备了小尺寸的LCD屏幕,有些使用场景为了能提供更好的交互控制操作,需要移动设备在大尺 ...

  4. android多个摄像头,一种基于Android多应用共享摄像头的系统及方法与流程

    本发明涉及一种基于Android多应用共享摄像头的系统及方法,属于计算机领域. 背景技术: 在一些特殊的应用场景.例如后台一直在录像,这时摄像头会被录像应用一直占有,其他的应用无法再打开摄像头.如果其 ...

  5. 心电图计算心率公式_一种基于心电信号的心率计算方法与流程

    本发明涉及医学电子信息领域,具体涉及一种基于心电信号的心率计算方法. 背景技术: 心电图是临床最常用的检查之一,应用广泛,包括帮助诊断心律失常.心肌缺血.心肌梗死等.心电图记录的是随心动周期变化的体表 ...

  6. android同服务器端互动,一种基于Android平台的多屏互动系统设计

    多屏互动是指各种不同智能设备可以互相将多媒体资源推送到屏幕中并且播放的技术.局域网智能设备可以实现资源的互通互联和共享,同时也可以扩大局域网的智能设备到广域网中,实现三网融合方案,并能实现互通互联在网 ...

  7. android 银行卡绑定银行卡,一种基于Android、iOS系统的移动端银行卡识别方法,让银行卡绑定这一行为变得更轻松...

    迅猛发展的移动互联网产业,类似手机支付宝的移动商业应用琳琅满目,网络购物.理财.商旅应用.打车软件等的兴起,让用户的习惯开始慢慢倾斜,移动支付的场景也愈加丰富起来,给人们带来了丰富多彩且方便快捷的数字 ...

  8. 在android添加数据采集,一种基于Android系统的地理信息数据采集方法与流程

    本方法属于采集地理信息数据的发明,是一种基于android操作系统和gis地理信息系统进行户外地理信息数据采集的方法. 背景技术: 众所周知地理信息数据采集在很多行业中都有应用,比如说农业中的土地普查 ...

  9. android 消息推送方法,一种基于Android系统的消息推送方法技术方案

    [技术实现步骤摘要] 本专利技术涉及一种基于Android系统的消息推送方法,属于计算机 技术介绍 推送功能在手机应用开发中越来越重要,已经成为手机开发的必选项.消息推送,就是在互联网上通过定期传送用 ...

最新文章

  1. Android怎么设置主活动,如何从另一个活动启动Android AppWidget的配置活动?
  2. CUDA编程快速入门教程
  3. python 编程一日一练-2018-12-01:python每日一练(1)
  4. 使用MVCPager做AJAX分页所需要注意的地方
  5. swift5导航栏标题文字属性设置
  6. php where 不包含,php – 除非它们包含“where”或“like”子句,否则不允许删除
  7. 作业-python常用库类 numpy+pandas
  8. 为 Confluence 6 配置发送邮件消息
  9. 马化腾去年年薪同比下降 25%,腾讯的下一步怎么走?
  10. 2017年10月9日 冒泡去重复习
  11. 通过企业微信SCRM营销系统,完成百万私域用户引流
  12. HTML问答页面模板,问答社区简单静态页面模板
  13. 悬赏任务发布平台系统源码|威客任务网站源码PHP开源版
  14. IOS开源项目Telegram初试
  15. Java HotSpot(TM) 64-Bit Server VM warning: CodeCache is full. Compiler has been disabled
  16. winhex万能恢复磁盘数据
  17. 【有利可图网】PS实战教程26:1分钟搞定抠头发丝,超简单!
  18. 微博营销,究竟该怎么做?(实战系列一:粉丝篇)
  19. 躲开混脸熟的车型,一文带你去看2019上海车展里的新面孔...
  20. 【服务器数据恢复】华为OceanStor服务器热备盘同步数据失败的数据恢复案例

热门文章

  1. php超市管理系统代码,php开发的超市管理系统
  2. ADI Blackfin DSP处理器-BF533的开发详解21:RTC实时时钟的原理及应用(含源码)
  3. 互联网远程办公 关于公司执行线上办公管理办法
  4. 2020第十三届全国大学生信息安全创新实践大赛(线上初赛)re-z3wp
  5. 夏普MX-M2658N复印机显示请放入载体组件
  6. Linux C获取本机IP
  7. 百科园c语言,百科园C语言题库教程.doc
  8. 【模拟电子技术】常用半导体器件——本征半导体
  9. 2d雷达的原始数据生成点云地图pcd
  10. matlab xlsread读取excel文件