对现有Android手机节省能耗策略的思考和总结

自从今年上半年开始,组里把研究工作转移到移动平台上,研究的主要对象也就是开源的Android平台,组里的研究方向曾覆盖过安全策略、代码云端迁移、手机应用的服务化,能量优化这几个方面。导师让我跟着移动平台能量这个方向,也希望我顺着从这个方向做下去,他说只有坚持一个点的人才能成为专家,这和我最初的想法一样,扎实的做一个方向,总能找到可做的问题有好的解决方案。

Android手机电池不耐用这个特点是广大用户有目共睹的,造成这个现象的原因是电池在控制体积的条件下可提供的能量有限,而且有关报道指出电池技术在这几年很难有突破性的技术出现,这就是说支撑用户越来越丰富的手机体验的电量是不会有很大的变化。另一个造成耗电过快现象的原因是软件的不恰当的行为,在我认为这是最主要的原因,也是可以在近期内提高电量支撑手机更长活动时间的关键问题,也是我们研究的主要范围。

软件层面的问题包括操作系统机制,第三方应用的energy-unaware开发。目前看的文献大多是关于后者的优化,我认为前者在能量优化方面肯定也有问题可以做,可能以为操作系统门槛高,前期大家愿意选择以应用程序的角度入手。

这个领域现有的工作(我现在看到的部分)主要分为两类:一是建立能量模型找出应用的耗电行为或者细粒度化到应用内部方法或线程的耗电行为,二是对手机应用代码迁移至远程服务器达到节省手机端能量的目的。

关于第一类工作,最新的工作是普渡大学的博士生Abhinav Pathak(现已毕业应该到微软研究院工作)在Mobisys'12上发的一篇文章,可以监测到应用内部每个方法和每个线程的耗电情况,开发人员可以根据信息反馈来审视自己的应用,消耗很大电量的方法是不是做了等值的工作,如果不是如何对能耗进行优化。

第二类工作最新的成果是北京大学Zhang Ying在OOPSLA‘12发表的论文,它通过程序分析可以做到自动对手机端的应用代码切分,迁移至远程服务器,并自动把手机端切分后的代码打包成APK文件正常执行,一切都是自动实现的,这也是在这类工作中最自动化的成果。

我们组现在做的工作确切的说不属于这两类,我们的目标是希望通过程序分析的方法来对代码进行优化,虽然方法和第二类最新工作类似,但是我们的目的跟代码迁移无关。

这些工作大都以Android和Windows Phone系统为研究案例,没有涉及到IOS,一个是因为IOS不开源,另一个原因也许是IOS的能量消耗已经做到了较优的程度,没有了很大的提升空间。

打算下一篇文章弄清楚IOS和Android耗电模式的区别,敬请期待~(不是偶故意卖关子,因为马上要去开会木有时间准备了O(∩_∩)O~)


  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值