基于路由交换范式的构件功能一致性验证方法及装置的制造方法

文档序号:8265586阅读:385来源:国知局
基于路由交换范式的构件功能一致性验证方法及装置的制造方法
【技术领域】
[0001]本领域涉及路由器构件功能的验证技术领域,尤其涉及一种基于路由交换范式的构件功能一致性验证方法及装置。
【背景技术】
[0002]目前,可重构路由器的发展使得路由器研发门槛进一步降低,研发周期进一步缩短,研发成本也降低了许多,产品更加适应多样化应用需求。可重构路由器体系结构可以分为三个等级,分别是平台、组件、构件。其中,平台是可重构完成多种任务的系统,组件是可重构实现特点功能的单元,构件是可重构实施给定处理的模块,即平台是任务系统,组件是功能单元,构件是处理模块。
[0003]路由器构件具备可扩展特性与可重构特性,是一种路由交换软件体系结构模型和实现框架的重要组成部分。可重构路由的构件有如下特点:第一,构件实现相对简单;第二,构件功能相对单一,只需完成组件功能的一个动作即可(比如转发组件的查表构);第三,构件开发模式具备开放性,通过制定构件统一的接口规范,使得第三方构件提供商在内的多类厂商都能参与其中,极大的提高可重构路由器的研发效率,明显降低研发成本。
[0004]然而,由于基于路由交换范式的路由器构件功能一致性静态验证是路由器构件研发过程中的重要结点,所以只有通过功能一致性静态验证,后续工作才能正常开展。构件在实现层面对应一个简单的程序处理模块,其源程序一般由顺序、选择、循环三种基本结构组成,这三种最基本的结构合理搭配使用就能得到一个可用的构件。目前有很多集成化开发工具可以快速发现源代码中语法错误,但是不能发现构件代码缺陷、构件功能一致性问题。
[0005]因此,如何快速发现构件代码缺陷、构件功能与设计一致性问题已经成为亟待解决的问题。

【发明内容】

[0006]本发明的目的旨在至少在一定程度上解决上述的技术问题之一。
[0007]为此,本发明的一个目的在于提出一种基于路由交换范式的构件功能一致性验证方法。该方法可以通过根据构件功能定义对简单的单支树进行构件功能一致性验证,加快验证过程,提高验证效率,并且,通过对于路由构件源程序代码进行分块和流程图分解,能够较为方便地发现代码结构缺陷,为缺陷改进打下良好的基础。
[0008]本发明的另一个目的在于提出一种基于路由交换范式的构件功能一致性验证装置。
[0009]为了达到上述目的,本发明第一方面实施例的基于路由交换范式的构件功能一致性验证方法,包括:读取待验证构件源程序代码;对所述待验证构件源程序代码进行预处理,并根据预处理后的待验证构件源程序代码生成对应的分块流程图;将所述分块流程图按照所述待验证构件源程序代码中的控制流程及约束条件生成至少一个单支树;以及根据构件功能定义对所述至少一个单支树进行构件功能一致性验证。
[0010]根据本发明实施例的基于路由交换范式的构件功能一致性验证方法,可先读取待验证构件源程序代码,之后可对待验证构件源程序代码进行预处理,并根据预处理后的待验证构件源程序代码生成对应的分块流程图,并将分块流程图按照待验证构件源程序代码中的控制流程及约束条件生成至少一个单支树,以及根据构件功能定义对至少一个单支树进行构件功能一致性验证,加快了验证过程,提高了验证效率,并且,通过对于路由构件源程序代码进行分块和流程图分解,能够较为方便地发现代码结构缺陷,为缺陷改进打下良好的基础。
[0011]为了达到上述目的,本发明第二方面实施例的基于路由交换范式的构件功能一致性验证装置,包括:读取模块,用于读取待验证构件源程序代码;预处理模块,用于对所述待验证构件源程序代码进行预处理;第一生成模块,用于根据所述预处理模块预处理后的待验证构件源程序代码生成对应的分块流程图;第二生成模块,用于将所述分块流程图按照所述待验证构件源程序代码中的控制流程及约束条件生成至少一个单支树;以及验证模块,用于根据构件功能定义对所述至少一个单支树进行构件功能一致性验证。
[0012]根据本发明实施例的基于路由交换范式的构件功能一致性验证装置,通过根据构件功能定义对简单的单支树进行构件功能一致性验证,加快了验证过程,提高了验证效率,并且,通过对于路由构件源程序代码进行分块和流程图分解,能够较为方便地发现代码结构缺陷,为缺陷改进打下良好的基础。
[0013]本发明附加的方面和优点将在下面的描述中部分给出,部分将从下面的描述中变得明显,或通过本发明的实践了解到。
【附图说明】
[0014]本发明上述的和/或附加的方面和优点从下面结合附图对实施例的描述中将变得明显和容易理解,其中,
[0015]图1是根据本发明一个实施例的基于路由交换范式的构件功能一致性验证方法的流程图;
[0016]图2是根据本发明另一个实施例的基于路由交换范式的构件功能一致性验证方法的流程图;
[0017]图3 (a)、图 3 (b)、图 3 (C)、图 3 (d)、图 3 (e)、图 3 (f)、图 3 (g)和图 3 (h)是分别根据图2中的方法对待验证构件源程序代码进行处理的过程中产生的相应结果的示例图;
[0018]图4是根据本发明一个实施例的基于路由交换范式的构件功能一致性验证装置的结构不意图;
[0019]图5是根据本发明一个实施例的第一生成模块的结构示意图;以及
[0020]图6是根据本发明一个实施例的第二生成模块的结构示意图。
【具体实施方式】
[0021]下面详细描述本发明的实施例,所述实施例的示例在附图中示出,其中自始至终相同或类似的标号表示相同或类似的元件或具有相同或类似功能的元件。下面通过参考附图描述的实施例是示例性的,旨在用于解释本发明,而不能理解为对本发明的限制。
[0022]需要说明的是,本发明提出的基于路由交换范式的构件功能一致性验证方法及装置的适用条件:使用C/C++结构化编程方法编写的基于路由交换范式的路由器构件,构件源程序代码函数无嵌套调用(如有嵌套调用的函数,则将其视为构件)。
[0023]下面参考附图描述根据本发明实施例的基于路由交换范式的构件功能一致性验证方法及装置。
[0024]图1是根据本发明一个实施例的基于路由交换范式的构件功能一致性验证方法的流程图。如图1所示,该基于路由交换范式的构件功能一致性验证方法可以包括:
[0025]S101,读取待验证构件源程序代码。
[0026]具体地,可从可重构路由器对应的源程序中读取出路由器构件对应的源程序代码作为待验证源程序代码。其中,可以理解,构件是可重构路由器体系中可重构实施给定处理的模块,即构件在可重构路由器中在实现层面上对应一个简单的程序处理模块,其源程序一般由顺序结构、选择结构和循环结构三种基本结构组成。
[0027]S102,对待验证构件源程序代码进行预处理,并根据预处理后的待验证构件源程序代码生成对应的分块流程图。
[0028]具体而言,在本发明的实施例中,可先对待验证构件源程序代码进行预处理,之后,可按照执行顺序对预处理后的待验证构件源程序代码进行分块,得到至少一个分块代码,然后,将至少一个分块代码按照结构化流程图的方式表示成分块流程图。其中,在本发明的实施例中,执行顺序可包括但不限于入口参数、变量定义与赋值、选择结构、循环结构、函数调用和函数返回等中的一种或多种。
[0029]具体而言,对待验证构件源程序代码进行预处理的具体实现过程可为:将待验证构件源程序代码按照结构化编程方式进行调整处理,并删除调整处理后的待验证构件源程序代码中的注释部分、预包含部分和预定义部分。更具体地,可将待验证构件源程序代码按照结构化编程方式进行调整处理,形成结构清
当前第1页1 2 3 4 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1