一种大型机程序调用层级的检查方法及系统技术方案

技术编号:25834830 阅读:15 留言:0更新日期:2020-10-02 14:16
本发明专利技术公开了一种大型机程序调用层级的检查方法及系统,其中,该方法包括:获取程序调用关系;根据所述程序调用关系,对每一程序调用链条进行分析,得到每一程序链条的调用层级;统计所述每一程序链条的最大调用层级,将所述最大调用层级与控制层级进行比较;如果所述最大调用层级大于所述控制层级,生成告警信息。该方法及系统在进行大型机程序调用层级的检查时,相较于现有技术能够大大缩短检查耗时,且能有效提高检查结果的准确性。

【技术实现步骤摘要】
一种大型机程序调用层级的检查方法及系统
本专利技术涉及计算机程序
,尤指一种大型机程序调用层级的检查方法及系统。
技术介绍
大型机作为大型商业服务器,一般用于政府、银行保险公司和大型制造企业。在应用系统建设中,随着调用层级的增加,可维护性极大的降低,应用系统潜在风险增加,对此,控制程序调用层级成为广大开发者共识。但是,为控制程序调用层级,更多的解决办法是调整公司的规章制度或者开发者自行控制调用层级,并无有效的技术手段进行保证。在现有技术中,有提出利用应用程序遍历所有代码库,根据程序调用语句特征识别调用层级来进行大型机程序检查;这种方式一般需要扫描所有代码库,因此会存在以下不足:现有的检查方式可以发现不合规项依赖检查动作的执行,但是无法发现程序代码提交的过程,因此,对不合规层级的发现不及时;由于需要遍历所有代码库,故检查动作执行时间较长;使用调用语句特征进行识别时,具有调用特征的代码存在已经废弃的情况,存在发生误报的可能。综上来看,亟需一种可以克服上述问题的大型机程序调用层级的检查方案。
技术实现思路
为解决上述问题,本专利技术提出了一种大型机程序调用层级的检查方法及系统,该方法及系统采用内嵌到编译过程的方式,能够在调试阶段发现不合规的调用层级,且只针对大型机程序的调用,该过程检查耗时短,检查结果的准确性高。在本专利技术的第一方面,提出了一种大型机程序调用层级的检查方法,该方法包括:获取程序调用关系;根据所述程序调用关系,对每一程序调用链条进行分析,得到每一程序链条的调用层级;统计所述每一程序链条的最大调用层级,将所述最大调用层级与控制层级进行比较;如果所述最大调用层级大于所述控制层级,生成告警信息。进一步的,该方法还包括:根据要检查的大型机的系统,配置相应的控制层级。进一步的,该方法还包括:读取编译过程生成的CROSS-REFERENCETABLE日志。进一步的,获取程序调用关系,包括:统计所述CROSS-REFERENCETABLE日志里记录的程序调用关系。在本专利技术的第二方面,提出了一种大型机程序调用层级的检查系统,该系统包括:调用关系获取模块,用于获取程序调用关系;调用层级计算模块,用于根据所述程序调用关系,对每一程序调用链条进行分析,得到每一程序链条的调用层级;调用层级比较模块,用于统计所述每一程序链条的最大调用层级,将所述最大调用层级与控制层级进行比较;告警模块,用于在所述最大调用层级大于所述控制层级时,生成告警信息。进一步的,该系统还包括:控制层级配置模块,用于根据要检查的大型机的系统,配置相应的控制层级。进一步的,该系统还包括:日志读取模块,用于读取编译过程生成的CROSS-REFERENCETABLE日志。进一步的,调用关系获取模块具体用于:统计所述CROSS-REFERENCETABLE日志里记录的程序调用关系。在本专利技术的第三方面,提出了一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现大型机程序调用层级的检查方法。在本专利技术的第四方面,提出了一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,所述计算机程序被处理器执行时实现大型机程序调用层级的检查方法。本专利技术提出了一种大型机程序调用层级的检查方法及系统,相较于现有技术至少存在以下优点:1、效率高,只需读取日志就可分析完毕,分析效率高。2、及时性强,在程序的调试阶段就能够发现不符合项。3、可配置层级参数,能够符合不同子系统的应用标准。4、准确性高,分析结果准确。附图说明为了更清楚地说明本申请实施例技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其它的附图。图1是本专利技术一实施例的大型机程序调用层级的检查方法流程示意图。图2是本专利技术一具体实施例的大型机程序调用层级的检查方法流程示意图。图3是本专利技术一实施例的大型机程序调用层级的检查系统架构示意图。图4是本专利技术一具体实施例的大型机程序调用层级的检查系统架构示意图。图5是本专利技术一实施例的计算机设备结构示意图。具体实施方式下面将参考若干示例性实施方式来描述本专利技术的原理和精神。应当理解,给出这些实施方式仅仅是为了使本领域技术人员能够更好地理解进而实现本专利技术,而并非以任何方式限制本专利技术的范围。相反,提供这些实施方式是为了使本公开更加透彻和完整,并且能够将本公开的范围完整地传达给本领域的技术人员。本领域技术人员知道,本专利技术的实施方式可以实现为一种系统、装置、设备、方法或计算机程序产品。因此,本公开可以具体实现为以下形式,即:完全的硬件、完全的软件(包括固件、驻留软件、微代码等),或者硬件和软件结合的形式。根据本专利技术的实施方式,提出了一种大型机程序调用层级的检查方法及系统。该方法及系统相较于遍历代码库的技术方案,在分析的数据来源上存在较大不同,本专利技术采用内嵌到编译过程的方式,能够在调试阶段发现不合规的调用层级,且只针对大型机程序的调用,该过程与现有技术相比能够大大缩短检查耗时,且能有效提高检查结果的准确性。在本专利技术实施例中,需要说明的术语有:大型机程序:Mainframe是一种大型商业服务器,又称为大型机,运行在大型机上的应用程序通常称作大型机程序。调用:将程序的执行交给其他的代码段的过程。调用层级:将程序的执行交给其他的代码段的次数。下面参考本专利技术的若干代表性实施方式,详细阐释本专利技术的原理和精神。图1是本专利技术一实施例的大型机程序调用层级的检查方法流程示意图。如图1所示,该方法包括:步骤S101,获取程序调用关系。步骤S102,根据所述程序调用关系,对每一程序调用链条进行分析,得到每一程序链条的调用层级。步骤S103,统计所述每一程序链条的最大调用层级,将所述最大调用层级与控制层级进行比较。步骤S104,如果所述最大调用层级大于所述控制层级,生成告警信息。具体的,结合图2,为本专利技术一具体实施例的大型机程序调用层级的检查方法流程示意图。如图2所示,在进行大型机程序调用层级的检查时,本专利技术首先基于大型机上COBOL编程语言开发应用程序(COBOL程序只有编译后才可以运行),在编译过程中系统编译器会生成CROSS-REFERENCETABLE(交叉引用表),在该表中罗列了程序调用关系,比如:程序A调用了5只程序,名称分别为B1、B2、B3、B4、B5。程序B1调用了3只程序,程序名分别为C1、C2、C3。程序C2调用了4只程序,程序名分别为D1、D2、D3、D4。...

【技术保护点】
1.一种大型机程序调用层级的检查方法,其特征在于,该方法包括:/n获取程序调用关系;/n根据所述程序调用关系,对每一程序调用链条进行分析,得到每一程序链条的调用层级;/n统计所述每一程序链条的最大调用层级,将所述最大调用层级与控制层级进行比较;/n如果所述最大调用层级大于所述控制层级,生成告警信息。/n

【技术特征摘要】
1.一种大型机程序调用层级的检查方法,其特征在于,该方法包括:
获取程序调用关系;
根据所述程序调用关系,对每一程序调用链条进行分析,得到每一程序链条的调用层级;
统计所述每一程序链条的最大调用层级,将所述最大调用层级与控制层级进行比较;
如果所述最大调用层级大于所述控制层级,生成告警信息。


2.根据权利要求1所述的大型机程序调用层级的检查方法,其特征在于,该方法还包括:
根据要检查的大型机的系统,配置相应的控制层级。


3.根据权利要求1所述的大型机程序调用层级的检查方法,其特征在于,该方法还包括:
读取编译过程生成的CROSS-REFERENCETABLE日志。


4.根据权利要求3所述的大型机程序调用层级的检查方法,其特征在于,获取程序调用关系,包括:
统计所述CROSS-REFERENCETABLE日志里记录的程序调用关系。


5.一种大型机程序调用层级的检查系统,其特征在于,该系统包括:
调用关系获取模块,用于获取程序调用关系;
调用层级计算模块,用于根据所述程序调用关系,对每一程序调用链条进行分析,得到每一程序链条的调用层级;

【专利技术属性】
技术研发人员:李永存王和燕宗涛张康洁
申请(专利权)人:中国银行股份有限公司
类型:发明
国别省市:北京;11

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

1