[发明专利]一种用于Java卡字节码的优化方法和设备有效
申请号: | 202010683722.7 | 申请日: | 2020-07-16 |
公开(公告)号: | CN111562921B | 公开(公告)日: | 2020-10-13 |
发明(设计)人: | 陆舟;于华章 | 申请(专利权)人: | 飞天诚信科技股份有限公司 |
主分类号: | G06F8/41 | 分类号: | G06F8/41 |
代理公司: | 暂无信息 | 代理人: | 暂无信息 |
地址: | 100085 北京市*** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 用于 java 字节 优化 方法 设备 | ||
本发明公开一种用于Java卡字节码的优化方法和设备,属于通信领域。本发明包括:拆分所述待识别文件得到待识别文件包含的组件,根据预设待优化组件标识获取待优化的组件,从待优化的组件包含的待优化数据列表中获取一个待优化数据,根据待优化数据包含的预设指令判断所述待优化数据是否被引用,如被引用,保存待优化数据,否则,根据待优化数据的访问修饰符掩码判断待优化数据的访问属性,如为公共属性或静态属性,保存待优化数据,否则所述待优化数据;本发明通过对Java卡字节码中的函数字节码和静态域字节码进行优化,有效缓解了Java卡系统中空间受限的问题,同时提升了Java卡系统的运行效率。
技术领域
本发明涉及通信领域,尤其涉及一种用于Java卡字节码的优化方法和设备。
背景技术
Java卡是一种基于Java语言的智能卡,目前已被广泛用于银行、社会保障等安全性很高的领域中。随着Java卡技术的不断提升,Java卡的内存大小也在随之增大,但是,卡内空间受限和对卡功能需求的日益增加的矛盾依旧未得到缓解。由于Java卡空间和处理器速度的约束,一个应用程序在Java卡上的运行,面临的最大问题就是存储空间不足和对程序执行时间的限制。
现有技术中,针对一般Java系统的应用程序的优化方式并不完全适用于Java卡系统中应用程序的优化,尤其对Java字节码的压缩技术不能直接应用到资源受限的嵌入式系统中。因此,如何对下载到Java卡中字节码类型的应用程序的进行优化成为一个亟待解决的问题。
发明内容
为解决现有技术的不足,提供了一种用于Java卡字节码的优化方法和设备。
第一方面,本发明提供了一种用于Java卡字节码的优化方法,包括如下步骤:
步骤101:读取待识别文件,根据第一预设标识和组件结构拆分所述待识别文件,得到所述待识别文件包含的组件,根据预设待优化组件标识从所述待识别文件包含的组件中获取待优化组件;
步骤102:按照待优化数据的结构从所述待优化组件包含的待优化数据列表中获取一个待优化数据,为所述待优化数据分配标识;
步骤103:获取所述待优化数据包含的预设指令,根据所述预设指令判断所述待优化数据是否被引用,如果是,保存所述待优化数据,执行步骤105,否则,执行步骤104;
步骤104:根据所述待优化数据对应的标识在描述组件中获取所述待优化数据的访问修饰符掩码,根据所述待优化数据的访问修饰符掩码判断所述待优化数据的访问属性,如为公共属性或静态属性,保存所述待优化数据,执行步骤105,否则,移除所述待优化数据,执行步骤105;
步骤105:判断所述待优化数据列表中是否存在未获取过的待优化数据,如果是,返回步骤102,否则,将所述保存的待优化数据重新编码,结束。
第二方面,本发明提供了一种用于Java卡字节码的优化设备,所述设备包括:读取模块、第一拆分模块、第一获取模块、第二获取模块、第三获取模块、第一判断模块、第一保存模块、第四获取模块、第二判断模块、移除模块、第三判断模块和编码模块;
所述读取模块,用于读取待识别文件;
所述第一拆分模块,用于根据第一预设标识和组件结构拆分所述待识别文件,得到所述待识别文件包含的组件;
所述第一获取模块,用于根据预设待优化组件标识从所述待识别文件包含的组件中获取待优化组件;
所述第二获取模块,用于按照待优化数据的结构从所述待优化组件包含的待优化数据列表中获取一个待优化数据,为所述待优化数据分配标识;
所述第三获取模块,用于从所述第二获取模块获取的所述待优化数据中获取预设指令;
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于飞天诚信科技股份有限公司,未经飞天诚信科技股份有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202010683722.7/2.html,转载请声明来源钻瓜专利网。