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

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

1.一种编译链接优化方法,其特征在于:利用GNU开源编译链接工具BINUTILS的链接器LD的地址空间分配功能、符号决议功能以及重定位功能,对链接器的链接功能进行优化,并且,优化的功能包括符号表建立功能、查找功能以及链接过程中的查询功能;

GNU组件维护一个GNU工具链和基本图形库所能提供的基础的符号表,所述符号表包括符号名、符号值或地址、类型、所在文件、同名符号数,符号作为key,地址作为value,所述符号表的符号名为GL_KV,其中:G:GNU,L:链接器,K:key,V:value,表项为GL_KV_sym,所述符号表建立功能的优化为创建GL_KV符号表,所述创建GL_KV符号表包括以下步骤:

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

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

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

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

所述查找功能的优化,通过下述步骤完成:

步骤SA:建立一个针对GL_KV符号的查询表;

步骤SB:输入sym_key,通过布隆过滤器定位相应的sym_key是否存在于查询表中;

步骤SC:若不存在,则反馈查找失败;若存在,则执行步骤SD;

步骤SD:判断所查找的sym_key是否为flase positive的,若是,则反馈查找失败,若不是,则反馈查找成功;

所述链接过程中的查询功能优化,通过下述步骤完成:

步骤Sa:分别建立一个针对OL_KV符号及GL_KV符号的查询表,其中O:目标文件;

步骤Sb:输入sym_key;

步骤Sc:确定针对OL_KV符号的查询表中是否存在符合要求的经标记的sym_key,若存在,则标记其存在;

步骤Sd:确定针对GL_KV符号的查询表中是否存在符合要求的经标记的sym_key,若存在,也标记其存在;

步骤Se:若经过步骤Sc及步骤Sd,两个查询表中均不存在符合要求的经标记的sym_key,则报错;

若两个查询表中有一个存在标记的sym_key,则使用该sym_key对应的sym_value;

若两个查询表中均存在标记的sym_key,则比较强弱,若两个查询表中的标记的sym_key均为强符号,则报错,若两个查询表中的标记的sym_key有一个为强符号,则选择强符号对应的sym_value。

2.如权利要求1所述的编译链接优化方法,其特征在于:所述步骤Sc包括:

步骤Sc1:通过布隆过滤器定位相应的sym_key是否存在于针对OL_KV符号的查询表中;若不存在,则执行步骤Sd,若存在,则执行步骤Sc2;

步骤Sc2:判断相应的sym_key是否为flase positive的sym_key,若不是,则标记此sym_key,得到标记的sym_key并执行步骤Sd;若是,则执行步骤Sc3;

步骤Sc3:查询重复数据中是否有此sym_key,若有,则标记此sym_key,得到标记的sym_key并执行步骤Sd;若无,则直接执行步骤Sd。

3.如权利要求1所述的编译链接优化方法,其特征在于:所述步骤Sd包括:

步骤Sd1:通过布隆过滤器定位相应的sym_key是否存在于针对GL_KV符号的查询表中;若不存在,则执行步骤Se,若存在,则执行步骤Sd2;

步骤Sd2:判断相应的sym_key是否为flase positive的sym_key,若不是,则标记此sym_key,得到标记的sym_key并执行步骤Se;若是,则执行步骤Sd3;

步骤Sd3:查询重复数据中是否有此sym_key,若有,则标记此sym_key,得到标记的sym_key并执行步骤Se;若无,则直接执行步骤Se。

4.如权利要求1所述的编译链接优化方法,其特征在于:所述步骤Sa中,针对OL_KV符号及GL_KV符号的查询表由多个hash函数及一个位数组组成的布隆过滤器和一个hash索引算法计算得出。

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

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

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

×

专利文献下载

说明:

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

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

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

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

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

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

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

钻瓜专利网在线咨询

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

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