[发明专利]编译链接优化方法有效

专利信息
申请号: 201711294532.0 申请日: 2017-12-08
公开(公告)号: CN109918074B 公开(公告)日: 2022-09-27
发明(设计)人: 孟杰;薛皓琳;马瑶瑶;卢彦;杨建生;张蓓;方平;冯艳红;穆鹤林;程毅轩;杨晓璇;吴昆鹏;李洪彬;申利飞 申请(专利权)人: 中标软件有限公司
主分类号: G06F8/41 分类号: G06F8/41;G06F9/445;G06F16/901
代理公司: 北京汇智英财专利代理事务所(普通合伙) 11301 代理人: 郑玉洁
地址: 200030 上海市徐汇*** 国省代码: 上海;31
权利要求书: 查看更多 说明书: 查看更多
摘要:
搜索关键词: 编译 链接 优化 方法
【说明书】:

发明涉及一种编译链接优化方法,其利用GNU开源编译链接工具BINUTILS的链接器LD的地址空间分配功能、符号决议功能以及重定位功能,对链接器的链接功能进行优化,并且,优化的功能包括符号表建立功能、查找功能以及链接过程中的查询功能。本发明提供的编译链接优化方法,克服了编译链接速度慢的缺陷,可降低链接时内存占用率,从而达到提升编译链接速度、节省时间成本、提高生产效率的目的。

技术领域

本发明涉及计算机软件程序运行技术领域,具体涉及一种编译链接优化方法。

背景技术

GNU工具链在Linux系统中的作用重大,编译链接占有重要比例。近些年,Linux系统迅速发展,随着计算机技术的不断发展,越来越多的个人和企业开始大量使用Linux系统,各种应用程序的种类不断增加,程序功能不断发生变化,变的愈加多样和复杂,这样的现象导致了程序代码量的急剧增加和模块的增加,同时也给程序的编译链接带来了极大的负担。编译集成过程中,模块的增加导致了二进制目标文件的增加,直接导致需要链接的符号大量增加,这样的数量级将会占用大量系统资源,严重拖慢系统的运行速度,所以将引入一种大数据的查询处理方式,以解决链接带来的问题。

原有的链接器使用了hash算法。hash算法就是将任一给定长度的数据(字符或数值等)通过给定函数映射为较短的、固定长度的数值,这个数值被称为hash值,这个数值便作为索引。hash表是通过给定的hash函数H(key)和处理冲突方法将一组关键字映射到一个已申请好的内存空间上,H(key)作为给定关键字在内存空间中的存储位置,这部分内存空间被称为hash表或散列,所得存储位置称为hash地址或散列地址。作为线性数据结构与表格和队列等相比,hash表无疑是查找速度比较快的一种。

整个链接过程中,符号表的建立、查找部分最为耗时,主要在于对符号表的建立、查找定位方面的消耗,数量稍小一点的目标文件无法察觉到这方面的消耗,但是如果面临上百个目标文件的链接,而每个目标文件又包括上百个(不止)需要链接的符号时,这样的数量级将会暴露龙芯平台硬件方面的不足。如果在这样的数量级或更高的数量级下继续使用链接器现有的hash算法,将会暴露hash算法的重要缺陷,就是空间效率低下,也就是说当在更高数量级的情况下,将会产生hash冲突,为解决hash冲突,就要开拓更多的内存;链接器现在使用的hash算法将占用更大的内存,在此期间对系统速度影响非常大,极易导致系统卡顿,链接导致的系统资源被大量占用对系统的影响已经不容忽视。

发明内容

为解决现有技术存在的不足,本发明提供了一种编译链接优化方法,利用GNU开源编译链接工具BINUTILS的链接器LD的地址空间分配功能、符号决议功能以及重定位功能,对链接器的链接功能进行优化,并且,优化的功能包括符号表建立功能、查找功能以及链接过程中的查询功能。

其中,所述符号表建立功能的优化为创建GL_KV符号表。

其中,符号表建立功能的优化中,通过下述步骤创建GL_KV符号表:

步骤S1:分别收集GNU库符号和基本图形库符号;

步骤S2:将步骤S1中收集的符号的符号名输入布隆过滤器;

步骤S3:将布隆过滤器的输出作为索引算法的输入,确定符号在符号表中的位置;

步骤S4:将符号信息写入符号表。

其中,还包括:

步骤S5:如果经索引算法计算后发现有重复,则另填一张表存放数据,是否重复由GL_KV_sym-rep-sym_r确定;

所述步骤S3中,索引算法为Hash索引算法;

下载完整专利技术内容需要扣除积分,VIP会员可以免费下载。

该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于中标软件有限公司,未经中标软件有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服

本文链接:http://www.vipzhuanli.com/pat/books/201711294532.0/2.html,转载请声明来源钻瓜专利网。

×

专利文献下载

说明:

1、专利原文基于中国国家知识产权局专利说明书;

2、支持发明专利 、实用新型专利、外观设计专利(升级中);

3、专利数据每周两次同步更新,支持Adobe PDF格式;

4、内容包括专利技术的结构示意图流程工艺图技术构造图

5、已全新升级为极速版,下载速度显著提升!欢迎使用!

请您登陆后,进行下载,点击【登陆】 【注册】

关于我们 寻求报道 投稿须知 广告合作 版权声明 网站地图 友情链接 企业标识 联系我们

钻瓜专利网在线咨询

周一至周五 9:00-18:00

咨询在线客服咨询在线客服
tel code back_top