[发明专利]一种Linux系统上动态链接库可视化依赖树的生成方法有效

专利信息
申请号: 202211552765.7 申请日: 2022-12-06
公开(公告)号: CN115543294B 公开(公告)日: 2023-03-17
发明(设计)人: 李婷;魏炯超;张赛丹;吕沙 申请(专利权)人: 麒麟软件有限公司
主分类号: G06F8/34 分类号: G06F8/34;G06F8/41
代理公司: 北京汇智英财专利代理有限公司 11301 代理人: 陈雅静
地址: 300450 天津市滨海新区*** 国省代码: 天津;12
权利要求书: 查看更多 说明书: 查看更多
摘要:
搜索关键词: 一种 linux 系统 动态 链接 可视化 依赖 生成 方法
【说明书】:

本发明涉及一种Linux系统上动态链接库可视化依赖树的生成方法,步骤为:S1、执行脚本程序generate_input函数,生成C程序的输入文件result.output;S2、将result.output输入二进制执行程序elf_parser进行分析,生成C程序的输出文件library.dot;S3、执行脚本程序handle_output函数,解析library.dot,最终画出依赖树结构图。本发明通过程序解析elf文件,将依赖层次关系保存到dot格式文件中,并结合脚本的方式,将引用次数加到数据节点中,从而实现了可视化树形结构的生成。

技术领域

专利申请属于依赖树生成技术领域,更具体地说,是涉及一种Linux系统上动态链接库可视化依赖树的生成方法。

背景技术

应用兼容性是国内外操作系统厂商重点攻克的难题之一,是影响应用生态的关键因素。红帽、欧拉等服务器操作系统通过包的依赖关系划分,给出了系统上一些核心组件的重要性定义。麒麟桌面操作系统在统型工作中,为了能全面准确的定义系统中依赖库与应用程序的影响关系,除了借鉴红帽等发行版的核心组件定义思想外,还从依赖库的被依赖层次、被引用计数、ABI兼容率等多个维度去分析操作系统重要核心组件。

本发明开发的工具就是统型依赖库工作中的一个重要参考维度,我们考虑应用程序的依赖关系通常包括编译依赖和运行时依赖,应用程序的兼容主要从 API 和 ABI 的维度去进行分析。本发明开发了一套操作系统依赖库树形结构生成工具,可视化的标示出所有动态库的依赖层级关系与引用频次。

考虑到需要解析的库文件数量很大,使用 mmap 将磁盘文件映射到虚拟内存,程序可以采用指针的方式读写操作内存,完成对于依赖库文件的解析操作,避免频繁的 I/O操作。

与本专利申请最接近的现有技术是:一种软件包依赖关系检测方法,专利号:CN114327473A。

该技术指出,在软件安装过程中,常常会面临软件依赖的问题。通常情况下,安装时检测某版本软件依赖,会单独去检索这个版本的软件依赖包,如果还有依赖,就继续往下检索。当检索到没有依赖后,倒着把软件包进行安装,即可顺利完成所有软件和依赖的安装。这种做法存在一个无法解决的问题,即当往下检索时,可能会出现后面的软件包依赖前面的软件包的情况,从而形成死锁。

软件包依赖分析的现有方法包括基于集合分析的方法、基于分层图分析的方法等,其中效果较好的分层图分析方法的大致思路为:针对指定操作系统构建分层图,针对用户给定的某个软件,在图中查找依赖关系,最后将依赖关系进行导出。

该专利虽然也是分析操作系统中的依赖关系,但是它分析的维度是软件包,在生成的有向图中标示出包的依赖关系,无法计算动态库的被引用次数。这个专利接收输入是一组软件包,根据生成的有向关系依次安装各个软件包,与本发明的想要解决的问题场景不符。

为了能全面准确的定义系统中依赖库与应用程序的影响关系,在统型工作中提供新的维度去分析操作系统重要核心组件。本发明开发了一套操作系统依赖库树形结构生成工具,可视化的标示出所有动态库的依赖层级关系与引用频次。

发明内容

本发明需要解决的技术问题是提供一种Linux系统上动态链接库可视化依赖树的生成方法,可以可视化地标示出所有动态库的依赖层级关系与引用频次,直观性更好。

为了解决上述问题,本发明所采用的技术方案是:

一种Linux系统上动态链接库可视化依赖树的生成方法,包括如下步骤:

S1、编写脚本程序,执行脚本程序中的generate_input函数,生成C程序的输入文件result.output,输入文件result.output存储有应用程序的依赖库合集;

S2、将输入文件result.output输入二进制执行程序elf_parser进行分析,生成C程序的输出文件library.dot;

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

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

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

×

专利文献下载

说明:

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

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

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

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

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

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

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

钻瓜专利网在线咨询

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

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