基于虚拟机的软件动态保护系统解释器的优化

来源 :西安电子科技大学 | 被引量 : 0次 | 上传用户:ericwu8756
下载到本地 , 更方便阅读
声明 : 本文档内容版权归属内容提供方 , 如果您对本文有版权争议 , 可与客服联系进行内容授权或下架
论文部分内容阅读
在当代社会,计算机软件已经渗透到社会的方方面面,各行各业的高效运转都需要软件的支持。软件的研发和维护需要耗费大量的人力物力,而出于商业等利益的诱惑,软件破解和软件盗版情况时有发生。因此如何有效的保护软件版权和软件的核心技术日益成为软件开发者所关注的问题。目前主要有基于硬件和基于软件的两种软件保护方式。基于硬件的保护方式,保护强度较大,但成本较高且不便于用户使用;基于软件的保护方式,如序列号保护、加壳保护等,易于实施但保护强度不高。虚拟机软件保护是新近发展起来的软件保护技术,通过把关键代码转化为只有虚拟机才可以识别并解释的字节码,可以有效提高软件的安全性。综合考虑保护强度和性能损耗,一般仅将关键代码使用虚拟化代码实现。虚拟机软件保护技术不可避免的会降低程序的性能,因此对于虚拟机的优化也是很有必要的。与PC相比,手机的运算性能比较差,而且出于用户使用习惯的考虑,针对虚拟机的优化在Android手机平台上显得更为重要。本文以软件保护技术和虚拟化技术为基础,展开对虚拟机软件保护技术的研究。在本文的虚拟机软件保护框架中,虚拟机解释器作为一个动态链接库,应用程序通过调用动态链接库执行虚拟化代码。本文研究的重点是解释器的优化。通过测试解释器中各个模块的耗时找到优化的切入点。在指令和其解释函数的快速匹配时,充分利用数组的数据结构特性,利用其快速查找的特性代替HashMap;在指令的执行过程中,由于指令的跳转等原因会出现同一内存地址上的指令重复执行。利用缓存的概念,对于已经执行过的指令,将其解码结果记录下来;将部分解释函数定义为内联函数以及选择判断架构的合理使用都可以提升解释器的性能。由于本虚拟机软件保护系统可以运行在Android手机平台上,因此针对Android平台也进行了相关的优化,如处理器架构的选择和ARM内嵌汇编等方面。本文对虚拟机解释器经过优化处理后,针对测试程序,程序的运行时间从34555毫秒下降到4321毫秒,运行时间减少了8倍,增强了实用性,提升了用户体验,具有实用价值和应用前景。
其他文献
随着人类在海洋的活动范围和活动频度的迅速增加,以及对海洋开发需求的不断增长,水下目标的定位技术越来越受到国内外众多学者的重视。通常所说的水声定位系统测得的目标位置
本论文是在参与上海市重点科技项目“智能交通系统”工作的基础上完成的。ITS (Intelligent Transportation System)智能交通系统,主要利用信息技术将行人、车辆、道路相互紧
光纤传感技术是一种新型传感技术,具有诸多优点,被广泛应用于工业、农业、军事、医疗等领域。本文选择光纤光栅传感测量课题中的波长解调检测问题进行研究,具有实际意义和学
认知无线电技术是指认知用户通过对频谱的动态感知,在保证对授权用户不会造成干扰的前提下接入处于空闲状态的频谱并进行通信的技术。频谱感知是认知无线电技术的基础,对于提
实时性是当今视频编码标准应用的一个关键性问题,H.264/AVC作为新一代视频编码压缩标准,能够在不同速率、不同传输场合传输高质量的图像数据,已经越来越受到人们的重视和广泛
无线自组织网络作为一种新兴的网络技术,凭借其灵活、便捷的组网方式突破了传统网络的局限性,获得了人们的广泛关注。传统网络的MAC协议并不适用于拥有鲜明特点的无线自组织
伴随着多媒体技术的发展以及无线通信服务需求的不断增加,在移动环境下为用户提供多媒体通信业务正在成为发展的趋势。视频通信是多媒体业务的核心,由于视频信号的数据量大、无
随着卫星遥感技术的发展,高分辨率遥感影像在各个领域的需求日趋增加。大场景遥感仿真由于其数据量大,因此提高仿真速度逐渐成为了研究热点。大气辐射传输仿真作为成像仿真中的重要环节,其仿真的速度直接影响了全链路遥感成像仿真的效率。本文的主要目的是对遥感成像场景的大气辐射传输过程进行仿真,分别针对陆表-大气和海洋-大气两个方面,研究大气辐射传输基础理论,面向遥感成像场景区域大的特点,提出了分别适用于陆表和海
随着信息化技术和数字化产品的普及,嵌入式系统及嵌入式操作系统成为当前IT行业研究和开发的热点。Linux凭借其源代码开放、可裁剪性、开发资源丰富等优势迅速确立了嵌入式操