[发明专利]用于JAVA卡的字节码优化系统和方法无效
申请号: | 200810176086.8 | 申请日: | 2008-11-11 |
公开(公告)号: | CN101739280A | 公开(公告)日: | 2010-06-16 |
发明(设计)人: | 刘子瑛;李丞倍;金亨一;罗栋元;李相研 | 申请(专利权)人: | 爱思开电讯投资(中国)有限公司 |
主分类号: | G06F9/45 | 分类号: | G06F9/45;G06K19/07 |
代理公司: | 永新专利商标代理有限公司 72002 | 代理人: | 钟胜光 |
地址: | 100084 北京市海淀区中关村*** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 用于 java 字节 优化 系统 方法 | ||
技术领域
本发明涉及智能卡技术,尤其涉及用于JAVA卡的字节码优化系统和方法。
背景技术
JAVA卡是JAVA技术与传统智能卡技术相结合的产物,是一种能运行JAVA语言程序的智能卡。
传统的JAVA卡主要用于安全性目的,只有一个操作系统,JAVA虚拟机运行在该操作系统上。随着越来越多的复杂应用设置在JAVA卡上,传统JAVA卡已经满足不了处理更多业务的需要。在这种情况下,双核的JAVA卡应运而生,并且得到越来越广泛的应用。双核的JAVA卡主要包括两部分:一部分称为安全域,相当于传统的JAVA卡,也主要用于安全性的目的,实现传统JAVA卡所实现的功能;另一部分称为应用域,用于实现复杂应用。鉴于JAVA语言的优越性,应用域通常也支持JAVA语言程序,并且为了实现复杂应用,应用域所采用的软硬件都足够强大,甚至能与移动设备的软硬件资源相当。
一般而言,JAVA语言程序的执行过程如下。首先,开发人员编写的JAVA源代码(.java程序文件)经过编译器编译后生成由符合JAVA虚拟机规范的字节码组成的类文件(.class文件)。当运行该JAVA语言程序时,类装载器装入来自类文件的字节码,经过检验器安全验证后,由JAVA虚拟机通过解释字节码将其翻译成本地的机器代码,逐条读入,逐条解释翻译。显然,经过解释执行,JAVA程序的执行速度必然会比可执行的二进制字节码程序慢。因此,为了提高执行速度,当前常常采用即时编译(JIT)技术和Hotspot技术等字节码优化技术,对字节码序列进行优化,将部分字节码编译成本地的机器代码保存起来备用,这样JAVA虚拟机就没有必要每次都对这些字节码进行解释翻译,而是可以直接执行这些字节码对应的本地机器代码。
然而,在软硬件条件可以与移动设备或服务器相媲美的双核JAVA卡的应用域中,完全可以实现JIT或Hotspot等字节码优化技术,但是,由于自身软硬件条件的限制和安全性等原因,在JAVA技术中发挥很大作用的JIT和Hotspot等字节码优化技术无法在传统JAVA卡以及双核JAVA卡的安全域中实现,这极大地限制了智能卡特别是双核JAVA卡执行程序的速度。
发明内容
本发明的目的在于提供一种用于JAVA卡的字节码优化系统和方法,利用本发明可以在JAVA卡特别是双核JAVA卡的安全域中实现字节码的优化,提高JAVA卡执行程序的速度。
为了实现上述目的,本发明提供一种用于JAVA卡的字节码优化方法,其中,该JAVA卡包括应用域和安全域,该方法包括步骤:
检测在所述安全域中应用程序的字节码序列是否存在优化代码;
在检测结果为否定的情况下,将所述字节码序列传送给所述应用域;
在所述应用域中,将接收到的字节码序列编译成所述安全域的本地代码,作为优化代码;并且
将所述优化代码存储至所述安全域。
本发明还提供一种用于JAVA卡的字节码序列优化系统,其中,JAVA卡包括应用域和安全域,该字节码序列优化系统包括:
优化代码库,用于存储所述安全域中应用程序的字节码序列的优化代码;
检测单元,用于检测在所述优化代码库中所述安全域中的应用程序的字节码序列是否存在优化代码,并在所述字节码序列不存在优化代码的情况下,将所述可优化字节码序列传送给所述应用域;和
本地代码编译器,位于所述应用域中,用于将接收到的字节码序列编译成所述安全域的本地代码,作为优化代码,并将优化代码存储至所述优化代码库。
附图说明
本发明的其他特征、目的和益处通过以下结合附图的详细描述将变得更加显而易见。其中:
图1是根据本发明实施例一的字节码优化系统的方框图;
图2是根据本发明实施例二的字节码优化系统的方框图;
图3A和图3B是根据本发明实施例的校验单元的方框图;
图4是根据本发明实施例三的字节码优化系统的方框图;
图5是根据本发明实施例四的字节码优化系统的方框图;
图6是根据本发明一个实施例的字节码优化方法的流程图。
具体实施方式
下面,将结合附图详细描述本发明的各个实施例。
在双核JAVA卡的应用域中,为了加速JAVA程序的执行速度,采用JIT技术来优化JAVA程序的字节码序列,而安全域受到自身软硬件条件的限制,不能直接采用JIT技术,这阻碍了安全域应用程序的执行速度。特别是,安全域中应用程序的字节码序列中有很大一部分是常用的或者是重复的,对于这部分可优化的字节码序列,可以采用本发明所提供的字节码优化系统和方法进行优化。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于爱思开电讯投资(中国)有限公司,未经爱思开电讯投资(中国)有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/200810176086.8/2.html,转载请声明来源钻瓜专利网。
- 上一篇:一种推车脚踏板
- 下一篇:一种自动识别货物的智能搬运小车