基于Android的可执行程序分析器研究及应用

被引量 : 5次 | 上传用户:roadog212
下载到本地 , 更方便阅读
声明 : 本文档内容版权归属内容提供方 , 如果您对本文有版权争议 , 可与客服联系进行内容授权或下架
论文部分内容阅读
由于开源性、良好的可移植性和应用程序硬件平台无关性等优秀特征,Android迅速的成为主流的移动设备操作系统。但受制于硬件的限制,手机的计算能力和存储能力都很有限,如果将Android应用程序手机上运行比较耗时的函数迁移到高性能和大存储的与服务器端执行,加快应用程序的执行速度,提供更好的用户体验。Android应用程序的耗时函数迁移中存在两个关键问题:一是获得Android应用程序中可以迁移的函数,二是在可迁移函数中筛选出比较耗时的函数。针对第一个关键问题:本文通过建立dex文件分析模型,进行Andriod可执行程序的静态分析,得到程序中函数之间的调用关系,且过滤掉那些涉及云端无法提供的本地资源的、不适合迁移的函数(比如:与UI、硬件、网络相关的函数和本地(NATIVE)函数)以及直接和间接调用这些涉及本地资源的函数。该方法基于编译后的可执行程序文件,与现有分析工具Traceview和dmtracedump相比,无需修改或获取程序源码即能实现其中函数调用关系分析,因此在现实应用中具有更广泛的实用价值。针对第二个关键问题:本文通过修改Dalvik虚拟机的源码实现,即在Dalvik虚拟机解释器解释执行函数的入口和出口处添加获得函数执行的起始和结束时间功能,与现有的针对Android应该程序获得函数执行的方法相比,无需源码或修改源码操作,只需要提前将需要计算执行时间的函数信息的文本放入移动设备中。为说明方法的有效性,文中针对多个Andriod实例应用程序进行了实验分析,实验结果表明本方法分析结果正确,且具有较高的分析效率。本文提供了一种可迁移函数执行时间的获得方法及系统,以克服现有技术必须获得应用程序源代码或修改dex文件才可以获得函数调用关系和执行时间的缺陷,故具有更强的适用性,而且通过对比同一个函数在移动设备上运行和在x86平台上运行,证明将那些在移动设备上执行时间长或耗内存或占CPU的函数迁移到x86上运行可以提高15-20倍的效率。
其他文献
近几年,随着我国点源排污的增加及大规模海水养殖,极大地加剧了近海海域的高度富营养化。赤潮正沿着高频率、大面积、损失重的恶性趋势发展。大面积栽培大型海藻是吸收营养盐
<正> 三级跳远技术复杂、强度大,少年时期的训练应以全面发展身体素质为主,打好身体素质基础,可安排短跑、跳高、跳远、跨栏等田径项目的练习,以发展必要的身体素质,为以后学
在实践过程中,“和平共处五项原则”受到诸多因素的制约:(1)有关各方是否存在利益的共同点;(2)有关各方的力量对比是否处于一种相对的均衡状态;(3)有关各方是否存在求同存异
目的脓毒症相关性血小板减少在危重病急救医学领域有较高的发病率和死亡率,威胁人类健康,目前,临床治疗上仍未取得突破性进展。血小板生成素(thrombopoietin, TPO)作为巨核细
本文研究的是公司对外担保领域中担保行为法律效力的相关问题。在当今社会商事交易活动中,公司提供对外担保已是一种较为普遍的商业手段,其具有促进资金融通、降低交易成本等优
[目的]在外环境贫碘的云南省双江拉祜族佤族布朗族傣族自治县开展佤族寄宿制学龄儿童甲状腺肿大率的检查和尿碘水平的检测,结合对当地水碘、盐碘含量的测定,进行当地环境碘分
螺纹联接是利用螺纹零件构成的一种可拆卸联接。它具有预紧、联接、紧固、密封等功能,在各种机械和结构中被广泛采用。螺纹联接一般都具有自锁性,拧紧后一般不会自动松脱。但
试论中国古陶瓷研究李正中一、建国以来中国的古陶瓷研究陶瓷是科学技术与文化艺术的综合成果,既是物质产品,又是精神财富。社会经济的发展、科学技术的进步、文化艺术的演变、
国务院《关于进一步促进内蒙古经济社会又好又快发展的若干意见》指出要培育壮大县域经济,内蒙古自治区2012年、2013年政府工作报告均提出发展县域经济相关内容。县域经济已
<正> 在西欧封建制度解体过程中,城市起过巨大的促进作用,而这种作用是同西欧中世纪城市本身的特点分不开的。一西欧中世纪的城市是在十世纪前后产生和发展起来的。初期的城