[发明专利]基于文件结构设计的链接方法及可读存储介质有效
申请号: | 202110982013.3 | 申请日: | 2021-08-25 |
公开(公告)号: | CN113672984B | 公开(公告)日: | 2022-02-01 |
发明(设计)人: | 何杰;董逢华;何涛;周杰;肖灵;胡瑞璟 | 申请(专利权)人: | 武汉天喻信息产业股份有限公司 |
主分类号: | G06F21/62 | 分类号: | G06F21/62;G06F9/448;G06F8/41 |
代理公司: | 武汉智权专利代理事务所(特殊普通合伙) 42225 | 代理人: | 张凯 |
地址: | 430223 湖北省武汉*** | 国省代码: | 湖北;42 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 基于 文件 结构设计 链接 方法 可读 存储 介质 | ||
本发明提供一种基于文件结构设计的链接方法及可读存储介质,基于文件结构设计的链接方法包括:将编译器中生成的字节码按文件结构,生成不同模块的目标文件;将所述目标文件通过转换工具,生成安全模块可识别的下载脚本;当收到下载指令时,将所述下载脚本下载安装到所述安全模块中,其中,在所述下载安装过程中,根据下载脚本中不同模块的文件结构完成不同模块间的方法的链接;当存在方法调用请求时,根据请求调用的方法的链接跳转到所述请求调用的方法的物理地址处执行该方法。通过本发明可以在减少文件体积、提高运行效率的同时,实现与传统的Java语言虚拟机的文件结构设计的安全模块同等的安全特性。
技术领域
本发明涉及资源有限设备的存储设计领域,尤其涉及一种基于文件结构设计的链接方法及可读存储介质。
背景技术
在资源有限但是对安全性能要求较高的设备上,如智能卡,物联网安全设备,安全模块,现有技术中都是在嵌入式系统上集成Java语言的虚拟机,从而实现本地native方法,对外提供Java语言的API接口,以Java语言对外提供二次开发。传统的Java语言的虚拟机对外以Java语言对外提供二次开发时,同样的功能,按Java语言的虚拟机的文件结构设计生成的目标二进制文件比用C语言编程所占的内存空间上要多很多。并且在功能运行上,由于传统的Java语言的虚拟机按生成的二进制文件结构进行方法调用时需要动态查找等步骤,所以运行效率比在表达式和逻辑运算上利用编译器事先做了部分字节码优化的C语言虚拟机要慢,并且传统的Java语言的虚拟机的使用成本较高。而C语言虚拟机相对于传统的Java语言的虚拟机,不同的功能也可以采用不同的模块进行并行开发,用户在使用设计上,也可以根据自己产品的安全特性设置不同模块之间的防火墙机制,使模块之间的访问遵循一定的安全访问策略,实现与传统的Java语言的虚拟机的安全模块同等的安全特性。
发明内容
本发明的主要目的在于提供一种基于文件结构设计的链接方法及可读存储介质,旨在解决现有技术中同等安全特性下Java虚拟机运行效率与内存空间优化的技术问题。
第一方面,本发明提供一种基于文件结构设计的链接方法,所述基于文件结构设计的链接方法包括以下步骤:
将编译器中生成的字节码按文件结构,生成不同模块的目标文件,其中,所述文件结构包括:模块头组件、模块应用组件、模块常量组件、模块文件组件、模块方法组件和模块索引组件;
将所述目标文件通过转换工具,生成安全模块可识别的下载脚本;
当收到下载指令时,将所述下载脚本下载安装到所述安全模块中,其中,在所述下载安装过程中,根据下载脚本中不同模块的文件结构完成不同模块间的方法的链接;
当存在方法调用请求时,根据请求调用的方法的链接跳转到所述请求调用的方法的物理地址处执行该方法。
可选的,所述模块头组件的结构包括本模块的标识号、版本号信息与本模块文件结构中其他组件的长度描述。
可选的,若所述模块为非应用模块,则所述非应用模块的模块应用组件的长度为0;若所述模块为应用模块,则所述应用模块的模块应用组件的长度不为0,其中,所述应用模块的模块应用组件的结构包括应用的标识号以及应用的入口函数的物理地址索引。
可选的,所述模块常量组件的结构包括外部被引模块的个数,外部被引模块标识号与版本号信息,以及外部被引模块的常量结构体,其中所述外部被引模块的常量结构体包括系统方法与非系统方法的区分标识,所有被调用的方法所在被引模块在所述外部被引模块结构体中的索引号,以及所有被调用的方法的地址偏移。
可选的,若所述模块为非系统模块,则所述非系统模块的模块文件组件的长度为0;若所述模块为系统模块,则所述系统模块的模块应用组件的长度不为0,其中,所述系统模块的模块文件组件结构包括系统模块中文件的总个数、系统文件中每个文件的方法总个数的数组形式以及系统文件中每个文件的方法地址索引号。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于武汉天喻信息产业股份有限公司,未经武汉天喻信息产业股份有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202110982013.3/2.html,转载请声明来源钻瓜专利网。