[发明专利]航空机载软件的源码和目标码对比分析方法及系统有效
申请号: | 201810697601.0 | 申请日: | 2018-06-29 |
公开(公告)号: | CN110659200B | 公开(公告)日: | 2023-05-02 |
发明(设计)人: | 王影;钱杰;刘卉;殷锴 | 申请(专利权)人: | 中国航发商用航空发动机有限责任公司 |
主分类号: | G06F11/36 | 分类号: | G06F11/36;G06F8/41;G06F8/53 |
代理公司: | 上海专利商标事务所有限公司 31100 | 代理人: | 骆希聪 |
地址: | 200241 上*** | 国省代码: | 上海;31 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 航空 机载 软件 源码 目标 对比 分析 方法 系统 | ||
本发明提供了一种航空机载软件的源码和目标码对比分析方法及系统,可以对编译器产生的不可追溯至源代码的额外代码进行识别。本发明所提供的一种航空机载软件的源码和目标码对比分析方法包括以下步骤:确定用于语法特征间的等价和包含关系的通用判断准则;基于所述通用判断准则选择源文件中源代码的典型语法结构及代码子集;编译所述代码子集以生成目标文件;以及对所述目标文件反汇编以生成源码、汇编代码交叉对照列表。
技术领域
本发明主要涉及航空机载软件的代码验证技术领域,尤其涉及航空机载软件的源码和目标码对比分析方法及系统。
背景技术
民用航空机载软件设计中,A级软件作为最高安全等级的软件,必须确保其安全、可靠。FAA(Federal Aviation Administration,美国联邦航空管理局)和CAAC(CivilAviation Administration of China,中国民航)均认可DO-178C即《机载系统和设备合格审定中的软件考虑》作为机载软件适航取证的标准。对于A级软件,可在源码上执行结构覆盖分析,同时“在目标码上执行额外的验证来确立编译器产生的代码序列的正确性”。该方法需要解决两个问题:1)识别由编译器产生、无法追溯到源码的目标码,称为追溯性问题;2)对于无法追溯的目标码执行额外验证,称为验证性问题。追溯性问题是在目标码中识别源码级别不可见的附加功能代码,是解决验证性问题的前提;验证性问题是证实附加目标码的正确性,是解决追溯性问题的目标。如果软件组织只需研制一个大规模的机载软件,则以上两种方法的综合分析效率都较低。
“追溯性问题”产生的根源在于目标码的结构和内容与源码略有不同,因此测试过程中基于目标码的结构覆盖与源码结构覆盖之间并不存在天然的等价关系,必须执行严格的对比分析才能确立目标码能否直接追溯到源码。
目前有两种方法支持目标码与源码的追溯性分析:①完整程序分析法——针对机载软件完整程序的所有源码和目标码,进行人工对比分析,检测编译器添加的、执行源码语句所需功能之外的任何目标码。②测试程序替代分析法——在机载软件严格遵循编码规则的约束下,编写一套足够复杂的专用测试程序,使其完整覆盖编码规则中所有语法结构和数据类型的合理组合,再以测试程序替代机载软件,执行目标码与源码的间接对比分析。
两种方法对比如下:
表1完整程序法和测试程序法分析方案对比表
现有的方法,在只需研制一个大规模的机载软件时,以上两种方法的综合分析效率都较低。
同时在现有公开技术方法中,如中国专利公开号CN104360949A公开了一种符合DO-178B/C A级软件目标码覆盖分析方法,但是其需要首先通过识别的源码目标码对应关系以及源码目标码的差异来创建编码规则表以及额外映射表,再进行目标码覆盖分析。中国专利公开号CN104461882A公开了一种符合DO-178B/C A级的模型验证方法,其是在模型验证领域中涉及从生成验证程序集选出验证程序子集的方法,此验证程序是与软件测试用例概念相对等的测试操作步骤,不是被验证的软件程序。中国专利公开号CN104731587A公开了一种单元测试数据生成方法,根据预设单元测试标准,解析被测试数据的源代码类型,并进行参数构造,在完成参数构造后,根据参数类型和参数构造的结果,生成单元测试数据。该方法可自动化生成测试单元用例输入数据,但其源码结构分析局限于对不同数据类型(仅此一类语法结构)取值范围划分等价类,基于不同数据类型的有效和无效等价类,生成相应的测试数据。
美国专利公开号US20170228309A1公开了一种通过等价关系分析,自动生成基于需求的测试例的系统,该系统包括了控制处理器、数据存储器、文本转换器、需求分类单元、等价关系分析器和边界关系分析器,其等价关系为根据需求条目的覆盖范围和数据集中变量来划分测试用例输入数据的等价类。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于中国航发商用航空发动机有限责任公司,未经中国航发商用航空发动机有限责任公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201810697601.0/2.html,转载请声明来源钻瓜专利网。