[发明专利]一种分布式构建支持多内核应用程序的方法及系统在审
申请号: | 201810764153.1 | 申请日: | 2018-07-12 |
公开(公告)号: | CN109117140A | 公开(公告)日: | 2019-01-01 |
发明(设计)人: | 王唯融 | 申请(专利权)人: | 郑州云海信息技术有限公司 |
主分类号: | G06F8/41 | 分类号: | G06F8/41 |
代理公司: | 济南诚智商标专利事务所有限公司 37105 | 代理人: | 黄晓燕 |
地址: | 450018 河南省郑州市*** | 国省代码: | 河南;41 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 构建 应用程序 应用层 源代码 编译 分布式构建 程序发布 内核版本 内核编译 内核态 内核 操作系统内核 应用程序发布 源代码获取 合并 兼容性 计算机 分析 | ||
本发明实施例公开了一种分布式构建支持多内核应用程序的方法及系统,所述方法包括获取应用程序的构建信息;获取应用程序的源代码,并根据源代码的获取路径分别进行应用层编译和内核编译;将应用层编译产物和内核编译产物合并,生成应用程序发布包。本发明在构建之前,分析需要构建的内核版本,在获取到源代码后,巧妙的利用源代码获取路径不同,将构建过程分为应用层和内核态,并根据获取到的内核版本,分别用不同的构建计算机对应用层和内核态代码进行编译,并将得到的编译产物合并,形成程序发布包。得到的程序发布包能够支持多种操作系统内核,兼容性高。
技术领域
本发明涉及计算机软件技术领域,具体地说是一种分布式构建支持多内核应用程序的方法及系统。
背景技术
在软件开发过程中,应用程序构建是获取程序发布包的关键步骤。良好的程序构建逻辑,可以有效提高软件发布包的易用性。
对于一些与操作系统底层较为贴近的软件(如macafee软件),其中的某些模块可能需要针对不同版本的操作系统内核,进行逻辑相同、结果不同的编译,即在不同的环境中编译,最终得到不同的编译产物。与此同时,软件中的其他模块,可能无需如此繁复的构建逻辑、仅一次构建即可运行于多个不同版本的操作系统。
现有技术中对代码的编译过程繁复,每增加一个需要支持的操作系统,都会大幅度修改编译过程,操作复杂,安装包的兼容性低。
发明内容
本发明实施例中提供了一种分布式构建支持多内核应用程序的方法及系统,以解决现有技术中针对不同的操作系统内核,应用程序的编译过程复杂,安装包兼容性低的问题。
为了解决上述技术问题,本发明实施例公开了如下技术方案:
本发明第一方面提供了一种分布式构建支持多内核应用程序的方法,包括以下步骤:
获取应用程序的构建信息;
获取应用程序的源代码,并根据源代码的获取路径分别进行应用层编译和内核编译;
将应用层编译产物和内核编译产物合并,生成应用程序发布包。
结合第一方面,在第一方面第一种可能的实现方式中,所述应用程序的构建信息包括参与构建的操作系统内核版本号。
结合第一方面,在第一方面第二种可能的实现方式中,通过应用层构建计算机进行应用层编译,通过内核构建计算机进行内核编译。
结合第一方面,在第一方面第二种可能的实现方式中,所述内核构建计算机包括若干个,每个内核构建计算机用于编译与自身操作系统内核版本相同的内核态源代码。
结合第一方面,在第一方面第三种可能的实现方式中,所述应用层编译产物包括应用层程序可执行文件,内核编译产物包括内核程序可执行文件。
本发明第二方面提供了一种分布式构建支持多内核应用程序的系统,包括
控制计算机,用于获取应用程序的构建信息和源代码,并根据源代码的获取路径,将应用层源代码和内核态源代码分别发送给应用层构建计算机和内核构建计算机;
内核构建计算机,用于对内核态源代码进行编译,得到内核编译产物;
应用层构建计算机,用于对应用层源代码进行编译,得到应用层编译产物,获取内核编译产物,并将内核编译产物和应用层编译产物合并,生成程序发布包。
结合第二方面,在第二方面第一种可能的实现方式中,所述内核构建计算机包括若干个,每个内核构建计算机用于编译与自身操作系统内核版本相同的内核态代码。
结合第二方面,在第二方面第一种可能的实现方式中,所述内核构建计算机和应用层构建计算机同步进行编译。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于郑州云海信息技术有限公司,未经郑州云海信息技术有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201810764153.1/2.html,转载请声明来源钻瓜专利网。