一种应用程序智能编译方法、系统、终端及存储介质技术方案

技术编号:25086641 阅读:38 留言:0更新日期:2020-07-31 23:30
本发明专利技术提供一种应用程序智能编译方法、系统、终端及存储介质,包括:创建编译数据库,所述编译数据库存储多种编译器、多种编译选项以及历史编译方案;根据目标应用程序的输入条件查找所述编译数据库中是否存在匹配的历史编译方案:若是,则按照所述匹配历史编译方案编译目标应用程序;若否,则利用多种编译器和多种编译选项进行正交编译得到多种编译方案,从多种编译方案中选取最符合输入条件的编译方案编译目标应用程序。本发明专利技术对应用程序的编译过程进行优化,可以大幅缩短应用程序的编译调优时间,为公司获得市场先机的同时也为公司节省了人力物力财力。

【技术实现步骤摘要】
一种应用程序智能编译方法、系统、终端及存储介质
本专利技术涉及程序编译
,具体涉及一种应用程序智能编译方法、系统、终端及存储介质。
技术介绍
当代的应用程序基本上都是由高级语言编写(如C语言),高级语言编写的应用程序称为源程序(或称为源代码),源程序由编译器编译为机器程序(或称为机器码)后才能在计算机上运行。编译是一个十分复杂的过程,对应用程序的运行性能影响极大,对编译过程的优化主要体现在编译器的选择以及相应编译器下编译参数的选择。然而,对于不同的硬件平台以及不同运行特征的应用程序,最优的编译器及编译参数都是不相同的。现有技术中,编译器种类繁多(如gcc、icc、tcc、watcom,等等),而且每一个编译器的编译参数都有很多。编译参数体现为编译器的运行选项,例如表1所示为gcc编译器在Linux下的部分运行选项。目前对编译的优化一般依赖于编程人员的经验,而对于缺乏经验的编程人员,或者陌生的硬件平台或陌生的应用程序,往往采用全面试验法,这就需要消耗大量的人员精力和物质资源。
技术实现思路
针对现有技术的上述不足,本专利技术提供一种应用程序智能编译方法、系统、终端及存储介质,以解决上述技术问题。第一方面,本专利技术提供一种应用程序智能编译方法,包括:创建编译数据库,所述编译数据库存储多种编译器、多种编译选项以及历史编译方案;根据目标应用程序的输入条件查找所述编译数据库中是否存在匹配的历史编译方案:若是,则按照所述匹配历史编译方案编译目标应用程序;若否,则利用多种编译器和多种编译选项进行正交编译得到多种编译方案,从多种编译方案中选取最符合输入条件的编译方案编译目标应用程序。进一步的,所述根据目标应用程序的输入条件查找所述编译数据库中是否存在匹配的历史编译方案,包括:设置历史编译方案与输入条件的映射关系;根据目标应用程序的输入条件查找编译数据库中与目标应用程序输入条件具有映射关系的历史编译方案,所述输入条件包括应用程序名称、应用程序运行硬件平台和应用程序运行特征。进一步的,所述根据目标应用程序的输入条件查找所述编译数据库中是否存在匹配的历史编译方案,包括:判断目标应用程序的输入条件是否存在运行特征:若否,则从历史编译方案中选取常用编译方案,选取运行结果符合的输入条件的常用编译方案编译目标应用程序。进一步的,所述利用多种编译器和多种编译选项进行正交编译得到多种编译方案,从多种编译方案中选取最符合输入条件的编译方案编译目标应用程序,包括对编译器和编译选项进行正交组合;根据多种正交组合进行编译得到多种编译方案;选取最符合输入条件的编译方案作为目标编译方案;将目标编译方案和输入条件存储至编译数据库。第二方面,本专利技术提供一种应用程序智能编译系统,包括:历史汇编单元,配置用于创建编译数据库,所述编译数据库存储多种编译器、多种编译选项以及历史编译方案;方案匹配单元,配置用于根据目标应用程序的输入条件查找所述编译数据库中是否存在匹配的历史编译方案;程序编译单元,配置用于若编译数据库中存在匹配的历史编译方案,则按照所述匹配历史编译方案编译目标应用程序;正交测试单元,配置用于若编译数据库中不存在匹配的历史编译方案,则利用多种编译器和多种编译选项进行正交编译得到多种编译方案,从多种编译方案中选取最符合输入条件的编译方案编译目标应用程序。进一步的,所述方案匹配单元包括:映射设置模块,配置用于设置历史编译方案与输入条件的映射关系;映射查找模块,配置用于根据目标应用程序的输入条件查找编译数据库中与目标应用程序输入条件具有映射关系的历史编译方案,所述输入条件包括应用程序名称、应用程序运行硬件平台和应用程序运行特征。进一步的,所述方案匹配单元包括:条件判断模块,配置用于判断目标应用程序的输入条件是否存在运行特征;常用选取模块,配置用于若目标应用程序的输入条件不存在运行特征,则从历史编译方案中选取常用编译方案,选取运行结果符合的输入条件的常用编译方案编译目标应用程序。进一步的,所述正交测试单元包括:正交组合模块,配置用于对编译器和编译选项进行正交组合;方案组合模块,配置用于根据多种正交组合进行编译得到多种编译方案;方案选择模块,配置用于选取最符合输入条件的编译方案作为目标编译方案;方案保存模块,配置用于将目标编译方案和输入条件存储至编译数据库。第三方面,提供一种终端,包括:处理器、存储器,其中,该存储器用于存储计算机程序,该处理器用于从存储器中调用并运行该计算机程序,使得终端执行上述的终端的方法。第四方面,提供了一种计算机存储介质,所述计算机可读存储介质中存储有指令,当其在计算机上运行时,使得计算机执行上述各方面所述的方法。本专利技术的有益效果在于,本专利技术提供的应用程序智能编译方法、系统、终端及存储介质,通过创建编译数据库,并在编译数据库存储多种编译器、多种编译选项以及历史编译方案,设计筛选规则,按照筛选规则从编译数据库筛选与目标应用程序输入条件匹配的编译方案,并在筛选不到后执行正交测试,实现对应用程序的源代码的快速编译。本专利技术对应用程序的编译过程进行优化,可以大幅缩短应用程序的编译调优时间,为公司获得市场先机的同时也为公司节省了人力物力财力。此外,本专利技术设计原理可靠,结构简单,具有非常广泛的应用前景。附图说明为了更清楚地说明本专利技术实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,对于本领域普通技术人员而言,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。图1是本专利技术一个实施例的方法的示意性流程图。图2是本专利技术一个实施例的系统的示意性框图。图3为本专利技术实施例提供的一种终端的结构示意图。具体实施方式为了使本
的人员更好地理解本专利技术中的技术方案,下面将结合本专利技术实施例中的附图,对本专利技术实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本专利技术一部分实施例,而不是全部的实施例。基于本专利技术中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都应当属于本专利技术保护的范围。图1是本专利技术一个实施例的方法的示意性流程图。其中,图1执行主体可以为一种应用程序智能编译系统。如图1所示,该方法100包括:步骤110,创建编译数据库,所述编译数据库存储多种编译器、多种编译选项以及历史编译方案;步骤120,根据目标应用程序的输入条件查找所述编译数据库中是否存在匹配的历史编译方案:步骤130,若是,则按照所述匹配历史编译方案编译目标应用程序;步骤140,若否,则利用多种编译器和多种编译选项进行正交编译得到多种编译方案,从多种编译方案中选取最符合输入本文档来自技高网
...

【技术保护点】
1.一种应用程序智能编译方法,其特征在于,包括:/n创建编译数据库,所述编译数据库存储多种编译器、多种编译选项以及历史编译方案;/n根据目标应用程序的输入条件查找所述编译数据库中是否存在匹配的历史编译方案:/n若是,则按照所述匹配历史编译方案编译目标应用程序;/n若否,则利用多种编译器和多种编译选项进行正交编译得到多种编译方案,从多种编译方案中选取最符合输入条件的编译方案编译目标应用程序。/n

【技术特征摘要】
1.一种应用程序智能编译方法,其特征在于,包括:
创建编译数据库,所述编译数据库存储多种编译器、多种编译选项以及历史编译方案;
根据目标应用程序的输入条件查找所述编译数据库中是否存在匹配的历史编译方案:
若是,则按照所述匹配历史编译方案编译目标应用程序;
若否,则利用多种编译器和多种编译选项进行正交编译得到多种编译方案,从多种编译方案中选取最符合输入条件的编译方案编译目标应用程序。


2.根据权利要求1所述的方法,其特征在于,所述根据目标应用程序的输入条件查找所述编译数据库中是否存在匹配的历史编译方案,包括:
设置历史编译方案与输入条件的映射关系;
根据目标应用程序的输入条件查找编译数据库中与目标应用程序输入条件具有映射关系的历史编译方案,所述输入条件包括应用程序名称、应用程序运行硬件平台和应用程序运行特征。


3.根据权利要求2所述的方法,其特征在于,所述根据目标应用程序的输入条件查找所述编译数据库中是否存在匹配的历史编译方案,包括:
判断目标应用程序的输入条件是否存在运行特征:
若否,则从历史编译方案中选取常用编译方案,选取运行结果符合的输入条件的常用编译方案编译目标应用程序。


4.根据权利要求1所述的方法,其特征在于,所述利用多种编译器和多种编译选项进行正交编译得到多种编译方案,从多种编译方案中选取最符合输入条件的编译方案编译目标应用程序,包括
对编译器和编译选项进行正交组合;
根据多种正交组合进行编译得到多种编译方案;
选取最符合输入条件的编译方案作为目标编译方案;
将目标编译方案和输入条件存储至编译数据库。


5.一种应用程序智能编译系统,其特征在于,包括:
历史汇编单元,配置用于创建编译数据库,所述编译数据库存储多种编译器、多种编译选项以及历史编译方案;
方案匹配单元,配置用于根据目标应用程序的输入条件查找所述...

【专利技术属性】
技术研发人员:杨振宇刘羽崔坤磊张敏
申请(专利权)人:苏州浪潮智能科技有限公司
类型:发明
国别省市:江苏;32

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1