CN107391368A - 一种航空机载软件中源代码与目标代码一致性的分析方法 - Google Patents

一种航空机载软件中源代码与目标代码一致性的分析方法 Download PDF

Info

Publication number
CN107391368A
CN107391368A CN201710570985.5A CN201710570985A CN107391368A CN 107391368 A CN107391368 A CN 107391368A CN 201710570985 A CN201710570985 A CN 201710570985A CN 107391368 A CN107391368 A CN 107391368A
Authority
CN
China
Prior art keywords
code
source code
function
dis
assembling
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
CN201710570985.5A
Other languages
English (en)
Other versions
CN107391368B (zh
Inventor
左振雷
熊波
张文娴
蒋平国
闻伟
张春
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Chinese Hangfa Control System Research Institute
Original Assignee
Chinese Hangfa Control System Research Institute
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Chinese Hangfa Control System Research Institute filed Critical Chinese Hangfa Control System Research Institute
Priority to CN201710570985.5A priority Critical patent/CN107391368B/zh
Publication of CN107391368A publication Critical patent/CN107391368A/zh
Application granted granted Critical
Publication of CN107391368B publication Critical patent/CN107391368B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/36Preventing errors by testing or debugging software
    • G06F11/362Software debugging
    • G06F11/3624Software debugging by performing operations on the source code, e.g. via a compiler

Abstract

本发明公开了一种航空机载软件中源代码与目标代码一致性的分析方法,其中,包括:分析源代码,获得源代码的语言特征信息;根据语言特征信息获取源代码的典型代码特征,并选择包括典型代码特征的源代码函数;对目标代码进行反汇编得到反汇编代码,并对反汇编代码进行分段识别标注成为函数,得到目标代码的函数清单;将源代码函数与目标代码的函数清单中的函数建立映射关系;比较源代码函数与目标代码的函数清单中的函数是否对应;将没有映射到目标代码的函数清单中的源代码函数及在源代码函数中不存在的目标代码的函数清单中的函数均标注为目标代码与源代码不一致。本发明提供的航空机载软件中源代码与目标代码一致性的分析方法提高了分析效率。

Description

一种航空机载软件中源代码与目标代码一致性的分析方法
技术领域
本发明涉及航空机载软件的代码验证技术领域,尤其涉及一种航空机载软件中源代码与目标代码一致性的分析方法。
背景技术
在航空机载软件开发过程中,软件开发人员使用高级语言,编制项目软件源代码文件,然后使用编译器软件、链接器软件将软件源代码文件编译、链接为可加载到机载设备中运行的目标代码,也就是最终交付的软件产品。
由于编译器、链接器软件中可能存在缺陷,或者是对编译器、链接器软件的使用方法不当,可能使得目标代码和源代码存在不一致,例如生成的目标代码错误、部分源代码没有生成目标代码或者生成了没有源代码对应的目标代码。这些不一致的代码可能会造成软件功能的异常,从而引起航空器处于不安全的状态。因此,根据RTCA/DO-178C的要求,对于设计保证等级为A级的机载软件,需要分析目标代码和源代码是否一致。
现有技术中分析航空机载软件目标代码和源代码是否一致,一般采用如下的方法进行:
步骤S1、根据高级语言支持的特性、以及项目对软件编码的规范要求,编写一套包含所有允许使用的语言特性的样例代码;
步骤S2、使用和项目相同的编译器软件、链接器软件,使用和项目相同的配置参数,对样例代码进行编译,形成目标代码文件;
步骤S3、对形成的目标代码文件进行反汇编,形成汇编代码;
步骤S4、对样例代码和上一步形成的汇编代码进行对比分析,检查两者是否一致,不一致时分析对功能的影响;
步骤S5、分析项目软件源代码的特征符合样例代码的特征。
但是现有的方法存在很多不足之处:一是因为高级语言支持的特性很多,即使项目最终没有使用的语言特性也要编写样例代码,需要建立的样例代码规模较大,对比分析的工作量也较大;二是需要分析项目源代码的代码特征是否符合样例代码的特征,不符合时需要进行调整,并需要重新进行分析,导致分析时间长效率低。
因此,如何减少对航空机载软件中的源代码与目标代码的一致性分析的工作量并提高分析的效率成为本领域技术人员亟待解决的技术问题。
发明内容
本发明旨在至少解决现有技术中存在的技术问题之一,提供一种航空机载软件中源代码与目标代码一致性的分析方法,以解决现有技术中的问题。
作为本发明的一个方面,提供一种航空机载软件中源代码与目标代码一致性的分析方法,其中,所述航空机载软件中源代码与目标代码一致性的分析方法包括:
分析源代码,获得所述源代码的语言特征信息;
根据所述语言特征信息获取所述源代码中的典型代码特征,并选择多个包括所述典型代码特征的源代码函数;
对目标代码进行反汇编得到反汇编代码,并对所述反汇编代码进行分段识别标注成为函数,得到目标代码的函数清单;
将所述源代码函数与所述目标代码的函数清单中的函数之间建立映射关系;
比较所述源代码函数与所述目标代码的函数清单中的函数是否一一对应;
将没有映射到目标代码的函数清单中的源代码函数以及在源代码函数中不存在的目标代码的函数清单中的函数均标注为所述目标代码与所述源代码不一致。
优选地,所述分析源代码,获得所述源代码的语言特征信息包括:
根据编写所述源代码所使用的语言的语法规则,对所述源代码进行词法分析、语法分析、数据流分析和控制流分析;
通过分析列出所述源代码中的全部函数;
根据所述函数统计所述源代码中使用的语言特征信息,其中,所述语言特征信息包括变量类型特征、数据流特征和控制流特征;
存储所述语言特征信息。
优选地,所述根据所述语言特征信息获取所述源代码中的典型代码特征,并选择多个包括所述典型代码特征的源代码函数包括:
根据软件编译原理,从所述语言特征信息中识别出所述源代码在软件编译和链接过程中编译器和链接器所能用到的源代码语言特征;
将所述源代码语言特征标记为典型代码特征;
从所述源代码中选择出多个包括所述典型代码特征的源代码函数。
优选地,所述从所述源代码中选择出多个包括所述典型代码特征的源代码函数包括采用贪吃法从所述源代码中优先选择出包括多个所述典型代码特征的源代码函数。
优选地,所述对目标代码进行反汇编得到反汇编代码,并对所述反汇编代码进行分段识别标注成为函数,得到目标代码的函数清单包括:
根据所述源代码使用的CPU的信息对逆向分析工具进行配置;
通过配置后的逆向分析工具对所述目标代码进行反汇编,得到所述反汇编代码;
根据所述源代码编译链接过程中生成的内存分配文件,对所述目标代码进行分段识别,并标注成为函数,得到目标代码的函数清单;
根据所述源代码编译链接过程中生成的内存分配文件,对所述目标代码中嵌入式的数据进行识别,得到目标代码的数据清单。
优选地,所述对目标代码进行反汇编得到反汇编代码,并对所述反汇编代码进行分段识别标注成为函数,得到目标代码的函数清单还包括在所述根据所述源代码编译链接过程中生成的内存分配文件,对所述目标代码中嵌入式的数据进行识别,得到目标代码的数据清单后进行的:
在所述反汇编代码中检索CPU指令集中的每条指令,并确定出所述反汇编代码中所使用到的所有指令;
将所述反汇编代码中使用到的所有指令分类,列出所述反汇编代码中所使用到的所有指令的种类;
从所有指令的种类中,每种指令选取一个按照所述CPU指令集的格式进行二进制和反汇编代码的对比;
分析所述逆向分析工具形成的所述反汇编代码是否正确;
若所述逆向分析工具形成的所述反汇编代码不正确,则根据所述源代码使用的CPU的信息对所述逆向分析工具重新配置,并根据重新配置的所述逆向分析工具重新进行反汇编。
优选地,所述航空机载软件中源代码与目标代码一致性的分析方法还包括:
比较所述源代码函数中的数据值与所述目标代码的数据清单中的数据是否一致;
若所述源代码函数中的数据值与所述目标代码的数据清单中的数据不一致,则标注为所述目标代码与所述源代码不一致。
优选地,所述航空机载软件中源代码与目标代码一致性的分析方法还包括在所述对目标代码进行反汇编得到反汇编代码,并对所述反汇编代码进行分段识别标注成为函数,得到目标代码的函数清单后进行的:
比较所述源代码函数中的每一行与所述反汇编代码中内的每一行所实现的功能是否一致;
若所述源代码函数中的每一行与所述反汇编代码中内的每一行所实现的功能不一致,则列出不一致的内容,并标注为所述目标代码与所述源代码不一致。
本发明提供的航空机载软件中源代码与目标代码一致性的分析方法,通过根据源代码使用的语言特征提取需要对比分析的源代码函数,对比分析的源代码函数由于规模小,因而不需要额外形成样例代码,从而免除了编制样例代码的工作量;另外,由于不需要样例代码,因而不需要分析源代码是否符合样例代码的特征,进一步减少了工作量;最后由于进行对比分析的是真实的源代码和目标代码,包括可执行代码和数据,因此分析结果的可靠性更高。
附图说明
附图是用来提供对本发明的进一步理解,并且构成说明书的一部分,与下面的具体实施方式一起用于解释本发明,但并不构成对本发明的限制。在附图中:
图1为本发明提供的航空机载软件中源代码与目标代码一致性的分析方法的流程图。
图2为本发明提供的图1中的步骤S110的具体实施方式的流程图。
图3为本发明提供的图1中的步骤S120的具体实施方式的流程图。
图4为本发明提供的图1中的步骤S130的具体实施方式的流程图。
具体实施方式
以下结合附图对本发明的具体实施方式进行详细说明。应当理解的是,此处所描述的具体实施方式仅用于说明和解释本发明,并不用于限制本发明。
作为本发明的一个方面,提供一种航空机载软件中源代码与目标代码一致性的分析方法,其中,如图1所示,所述航空机载软件中源代码与目标代码一致性的分析方法包括:
S110、分析源代码,获得所述源代码的语言特征信息;
S120、根据所述语言特征信息获取所述源代码中的典型代码特征,并选择多个包括所述典型代码特征的源代码函数;
S130、对目标代码进行反汇编得到反汇编代码,并对所述反汇编代码进行分段识别标注成为函数,得到目标代码的函数清单;
S140、将所述源代码函数与所述目标代码的函数清单中的函数之间建立映射关系;
S150、比较所述源代码函数与所述目标代码的函数清单中的函数是否一一对应;
S160、将没有映射到目标代码的函数清单中的源代码函数以及在源代码函数中不存在的目标代码的函数清单中的函数均标注为所述目标代码与所述源代码不一致。
本发明提供的航空机载软件中源代码与目标代码一致性的分析方法,通过根据源代码使用的语言特征提取需要对比分析的源代码函数,对比分析的源代码函数由于规模小,因而不需要额外形成样例代码,从而免除了编制样例代码的工作量;另外,由于不需要样例代码,因而不需要分析源代码是否符合样例代码的特征,进一步减少了工作量;最后由于进行对比分析的是真实的源代码和目标代码,包括可执行代码和数据,因此分析结果的可靠性更高。
作为一种具体地实施方式,如图2所示,所述步骤S110分析源代码,获得所述源代码的语言特征信息具体可以包括:
S111、根据编写所述源代码所使用的语言的语法规则,对所述源代码进行词法分析、语法分析、数据流分析和控制流分析;
S112、通过分析列出所述源代码中的全部函数;
S113、根据所述函数统计所述源代码中使用的语言特征信息,其中,所述语言特征信息包括变量类型特征、数据流特征和控制流特征;
S114、存储所述语言特征信息。
可以理解的是,通过对所述源代码所使用的语言的语法规则进行分析,最终获得所述源代码的语言特征信息。
具体地,以所述源代码所使用的语言为C语言为例,根据C语言语法规则,对源代码进行词法分析、语法分析、数据流分析和控制流分析,列出源代码中的全部函数,并按照函数模块统计源代码使用的语言特征信息,包括变量类型特征、数据流特征、控制流特征,并存储为项目软件源代码语言特征信息。
作为另一种具体地实施方式,如图3所示,所述步骤S120根据所述语言特征信息获取所述源代码中的典型代码特征,并选择多个包括所述典型代码特征的源代码函数具体可以包括:
S121、根据软件编译原理,从所述语言特征信息中识别出所述源代码在软件编译和链接过程中编译器和链接器所能用到的源代码语言特征;
S122、将所述源代码语言特征标记为典型代码特征;
S123、从所述源代码中选择出多个包括所述典型代码特征的源代码函数。
具体地,分析源代码中的语言特征信息,根据软件编译原理,识别出在进行软件编译、链接过程中,编译器、链接器可能采用不同处理模式进行处理的源代码的语言特征,将这些语言特征信息记为需要覆盖的典型代码特征,统计成为数据表格。
进一步地,所述从所述源代码中选择出多个包括所述典型代码特征的源代码函数包括采用贪吃法从所述源代码中优先选择出包括多个所述典型代码特征的源代码函数。
具体地,以源代码函数为最小单位,选择包含典型代码特征的函数。在选择过程中,采用贪吃法进行选择,即优先选择包含尽可能多还没有被覆盖的典型代码特征的函数。这样的选择方法将减少选择出的软件代码函数数量,减少后续步骤中的工作量,以达到提高工作效率的目的,最后将选择出的源代码函数统计在表格中。
作为再一种具体地实施方式,如图4所示,所述步骤S130对目标代码进行反汇编得到反汇编代码,并对所述反汇编代码进行分段识别标注成为函数,得到目标代码的函数清单具体可以包括:
S131、根据所述源代码使用的CPU的信息对逆向分析工具进行配置;
S132、通过配置后的逆向分析工具对所述目标代码进行反汇编,得到所述反汇编代码;
S133、根据所述源代码编译链接过程中生成的内存分配文件,对所述目标代码进行分段识别,并标注成为函数,得到目标代码的函数清单;
S134、根据所述源代码编译链接过程中生成的内存分配文件,对所述目标代码中嵌入式的数据进行识别,得到目标代码的数据清单。
具体地,使用逆向分析工具,根据使用的CPU的信息,对所述逆向分析工具进行配置后,对最终交付使用的目标代码进行反汇编,形成反汇编代码,并参考项目编译链接过程中生成的内存分配文件,对所述目标代码进行分段识别,标注函数,形成目标代码中的函数清单,对所述目标代码中嵌入式的数据进行识别,并形成目标代码中的数据清单。
进一步地,所述对目标代码进行反汇编得到反汇编代码,并对所述反汇编代码进行分段识别标注成为函数,得到目标代码的函数清单还包括在所述根据所述源代码编译链接过程中生成的内存分配文件,对所述目标代码中嵌入式的数据进行识别,得到目标代码的数据清单后进行的:
在所述反汇编代码中检索CPU指令集中的每条指令,并确定出所述反汇编代码中所使用到的所有指令;
将所述反汇编代码中使用到的所有指令分类,列出所述反汇编代码中所使用到的所有指令的种类;
从所有指令的种类中,每种指令选取一个按照所述CPU指令集的格式进行二进制和反汇编代码的对比;
分析所述逆向分析工具形成的所述反汇编代码是否正确;
若所述逆向分析工具形成的所述反汇编代码不正确,则根据所述源代码使用的CPU的信息对所述逆向分析工具重新配置,并根据重新配置的所述逆向分析工具重新进行反汇编。
具体地,按照CPU指令集,逐条指令在反汇编代码中检索是否使用了该指令,并列出全部使用了的指令。根据CPU指令集的格式,对于使用了的指令,每种指令选取一个,进行二进制和反汇编代码的对比,检查逆向分析工具形成的反汇编代码是否正确。对于出现不正确的情况,需要返回到步骤S131重新选择逆向分析工具、重新配置进行反汇编,或者使用手动的方式进行纠正。
作为第四种具体地实施方式,所述航空机载软件中源代码与目标代码一致性的分析方法还包括:
比较所述源代码函数中的数据值与所述目标代码的数据清单中的数据是否一致;
若所述源代码函数中的数据值与所述目标代码的数据清单中的数据不一致,则标注为所述目标代码与所述源代码不一致。
具体地,将步骤S120得到的源代码函数与步骤S130得到的函数清单进行对比,检查是否一致。对没有映射到目标代码中的源代码函数,以及在源代码中不存在的目标代码中的函数,标注为目标代码和源代码的不一致。将上述第四种实施方式中形成的数据内容与软件源代码中的数据值进行对比,检查是否一致,对于不一致的标注为目标码和源代码的不一致。
作为第五种具体地实施方式,所述航空机载软件中源代码与目标代码一致性的分析方法还包括在所述对目标代码进行反汇编得到反汇编代码,并对所述反汇编代码进行分段识别标注成为函数,得到目标代码的函数清单后进行的:
比较所述源代码函数中的每一行与所述反汇编代码中内的每一行所实现的功能是否一致;
若所述源代码函数中的每一行与所述反汇编代码中内的每一行所实现的功能不一致,则列出不一致的内容,并标注为所述目标代码与所述源代码不一致。
具体地,将选择的源代码函数与形成的反汇编代码,逐个函数逐行代码进行对比、对实现的功能是否一致进行分析,检查两者是否一致,并列出发现的不一致的内容,标注为目标码和源代码的不一致。
将上述第四种实施方式和第五种实施方式中列出的全部不一致的内容形成报告,并对发现的不一致的内容进行软件代码功能的分析,识别对项目功能的影响。对于功能有影响的不一致,还应该报告为软件问题,并反馈到开发方进行调整。
因此,本发明提供的航空机载软件中源代码与目标代码一致性的分析方法,只需要根据源代码使用的语言特征提取样例代码,样例代码规模小,不需要分析源代码是否符合样例代码的特征,减少了工作量,因而能够有效提高源代码目标代码对比分析的效率,对比分析的内容更加全面,适应范围广且可靠性高。
可以理解的是,以上实施方式仅仅是为了说明本发明的原理而采用的示例性实施方式,然而本发明并不局限于此。对于本领域内的普通技术人员而言,在不脱离本发明的精神和实质的情况下,可以做出各种变型和改进,这些变型和改进也视为本发明的保护范围。

Claims (8)

1.一种航空机载软件中源代码与目标代码一致性的分析方法,其特征在于,所述航空机载软件中源代码与目标代码一致性的分析方法包括:
分析源代码,获得所述源代码的语言特征信息;
根据所述语言特征信息获取所述源代码中的典型代码特征,并选择多个包括所述典型代码特征的源代码函数;
对目标代码进行反汇编得到反汇编代码,并对所述反汇编代码进行分段识别标注成为函数,得到目标代码的函数清单;
将所述源代码函数与所述目标代码的函数清单中的函数之间建立映射关系;
比较所述源代码函数与所述目标代码的函数清单中的函数是否一一对应;
将没有映射到目标代码的函数清单中的源代码函数以及在源代码函数中不存在的目标代码的函数清单中的函数均标注为所述目标代码与所述源代码不一致。
2.根据权利要求1所述的航空机载软件中源代码与目标代码一致性的分析方法,其特征在于,所述分析源代码,获得所述源代码的语言特征信息包括:
根据编写所述源代码所使用的语言的语法规则,对所述源代码进行词法分析、语法分析、数据流分析和控制流分析;
通过分析列出所述源代码中的全部函数;
根据所述函数统计所述源代码中使用的语言特征信息,其中,所述语言特征信息包括变量类型特征、数据流特征和控制流特征;
存储所述语言特征信息。
3.根据权利要求1所述的航空机载软件中源代码与目标代码一致性的分析方法,其特征在于,所述根据所述语言特征信息获取所述源代码中的典型代码特征,并选择多个包括所述典型代码特征的源代码函数包括:
根据软件编译原理,从所述语言特征信息中识别出所述源代码在软件编译和链接过程中编译器和链接器所能用到的源代码语言特征;
将所述源代码语言特征标记为典型代码特征;
从所述源代码中选择出多个包括所述典型代码特征的源代码函数。
4.根据权利要求3所述的航空机载软件中源代码与目标代码一致性的分析方法,其特征在于,所述从所述源代码中选择出多个包括所述典型代码特征的源代码函数包括采用贪吃法从所述源代码中优先选择出包括多个所述典型代码特征的源代码函数。
5.根据权利要求1所述的航空机载软件中源代码与目标代码一致性的分析方法,其特征在于,所述对目标代码进行反汇编得到反汇编代码,并对所述反汇编代码进行分段识别标注成为函数,得到目标代码的函数清单包括:
根据所述源代码使用的CPU的信息对逆向分析工具进行配置;
通过配置后的逆向分析工具对所述目标代码进行反汇编,得到所述反汇编代码;
根据所述源代码编译链接过程中生成的内存分配文件,对所述目标代码进行分段识别,并标注成为函数,得到目标代码的函数清单;
根据所述源代码编译链接过程中生成的内存分配文件,对所述目标代码中嵌入式的数据进行识别,得到目标代码的数据清单。
6.根据权利要求5所述的航空机载软件中源代码与目标代码一致性的分析方法,其特征在于,所述对目标代码进行反汇编得到反汇编代码,并对所述反汇编代码进行分段识别标注成为函数,得到目标代码的函数清单还包括在所述根据所述源代码编译链接过程中生成的内存分配文件,对所述目标代码中嵌入式的数据进行识别,得到目标代码的数据清单后进行的:
在所述反汇编代码中检索CPU指令集中的每条指令,并确定出所述反汇编代码中所使用到的所有指令;
将所述反汇编代码中使用到的所有指令分类,列出所述反汇编代码中所使用到的所有指令的种类;
从所有指令的种类中,每种指令选取一个按照所述CPU指令集的格式进行二进制和反汇编代码的对比;
分析所述逆向分析工具形成的所述反汇编代码是否正确;
若所述逆向分析工具形成的所述反汇编代码不正确,则根据所述源代码使用的CPU的信息对所述逆向分析工具重新配置,并根据重新配置的所述逆向分析工具重新进行反汇编。
7.根据权利要求5所述的航空机载软件中源代码与目标代码一致性的分析方法,其特征在于,所述航空机载软件中源代码与目标代码一致性的分析方法还包括:
比较所述源代码函数中的数据值与所述目标代码的数据清单中的数据是否一致;
若所述源代码函数中的数据值与所述目标代码的数据清单中的数据不一致,则标注为所述目标代码与所述源代码不一致。
8.根据权利要求1至7中任意一项所述的航空机载软件中源代码与目标代码一致性的分析方法,其特征在于,所述航空机载软件中源代码与目标代码一致性的分析方法还包括在所述对目标代码进行反汇编得到反汇编代码,并对所述反汇编代码进行分段识别标注成为函数,得到目标代码的函数清单后进行的:
比较所述源代码函数中的每一行与所述反汇编代码中内的每一行所实现的功能是否一致;
若所述源代码函数中的每一行与所述反汇编代码中内的每一行所实现的功能不一致,则列出不一致的内容,并标注为所述目标代码与所述源代码不一致。
CN201710570985.5A 2017-07-13 2017-07-13 一种航空机载软件中源代码与目标代码一致性的分析方法 Active CN107391368B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201710570985.5A CN107391368B (zh) 2017-07-13 2017-07-13 一种航空机载软件中源代码与目标代码一致性的分析方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201710570985.5A CN107391368B (zh) 2017-07-13 2017-07-13 一种航空机载软件中源代码与目标代码一致性的分析方法

Publications (2)

Publication Number Publication Date
CN107391368A true CN107391368A (zh) 2017-11-24
CN107391368B CN107391368B (zh) 2021-02-09

Family

ID=60339476

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201710570985.5A Active CN107391368B (zh) 2017-07-13 2017-07-13 一种航空机载软件中源代码与目标代码一致性的分析方法

Country Status (1)

Country Link
CN (1) CN107391368B (zh)

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108897534A (zh) * 2018-06-05 2018-11-27 上海小蚁科技有限公司 一种代码开发的辅助方法及装置、存储介质、终端
CN109032100A (zh) * 2018-09-21 2018-12-18 北京广利核系统工程有限公司 一种鉴定核电厂安全级仪控系统设备适用性的方法
CN110659200A (zh) * 2018-06-29 2020-01-07 中国航发商用航空发动机有限责任公司 航空机载软件的源码和目标码对比分析方法及系统
CN111552465A (zh) * 2020-05-12 2020-08-18 中国民航大学 一种p2020机器码程序到c语言源程序的溯源方法
CN111858322A (zh) * 2020-07-10 2020-10-30 中国科学技术大学 一种Python语言特征自动识别系统和方法
CN112015658A (zh) * 2020-09-02 2020-12-01 卡斯柯信号(北京)有限公司 一种用于软件集成测试用例的生成方法及装置
CN114090114A (zh) * 2021-10-28 2022-02-25 中国航发控制系统研究所 机载设备的软件加载控制方法及系统

Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102073490A (zh) * 2009-11-25 2011-05-25 阿里巴巴集团控股有限公司 转译数据库语言的方法及装置
CN103559125A (zh) * 2013-10-25 2014-02-05 北京广利核系统工程有限公司 一种利用图同构验证编译器的方法
US20140229910A1 (en) * 2012-05-10 2014-08-14 International Business Machines Corporation System and method for transplanting source code
US20150363198A1 (en) * 2014-06-16 2015-12-17 Symantec Corporation Dynamic call tracking method based on cpu interrupt instructions to improve disassembly quality of indirect calls
CN106294156A (zh) * 2016-08-11 2017-01-04 北京邮电大学 一种静态代码缺陷检测分析方法及装置
CN106611125A (zh) * 2016-12-12 2017-05-03 中国航空工业集团公司洛阳电光设备研究所 一种验证编译器安全性的方法
CN106649095A (zh) * 2016-10-31 2017-05-10 华东师范大学 一种面向目标代码的程序静态分析系统
CN106886446A (zh) * 2017-01-18 2017-06-23 北京航空航天大学 软件源代码的验证方法及装置

Patent Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102073490A (zh) * 2009-11-25 2011-05-25 阿里巴巴集团控股有限公司 转译数据库语言的方法及装置
US20140229910A1 (en) * 2012-05-10 2014-08-14 International Business Machines Corporation System and method for transplanting source code
CN103559125A (zh) * 2013-10-25 2014-02-05 北京广利核系统工程有限公司 一种利用图同构验证编译器的方法
US20150363198A1 (en) * 2014-06-16 2015-12-17 Symantec Corporation Dynamic call tracking method based on cpu interrupt instructions to improve disassembly quality of indirect calls
CN106294156A (zh) * 2016-08-11 2017-01-04 北京邮电大学 一种静态代码缺陷检测分析方法及装置
CN106649095A (zh) * 2016-10-31 2017-05-10 华东师范大学 一种面向目标代码的程序静态分析系统
CN106611125A (zh) * 2016-12-12 2017-05-03 中国航空工业集团公司洛阳电光设备研究所 一种验证编译器安全性的方法
CN106886446A (zh) * 2017-01-18 2017-06-23 北京航空航天大学 软件源代码的验证方法及装置

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
俞甲子: "GCC编译器安全验证方法研究", 《中国优秀硕士学位论文全文数据库信息科技辑》 *
熊浩 等: "代码相似性检测技术:研究综述", 《计算机科学》 *

Cited By (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108897534A (zh) * 2018-06-05 2018-11-27 上海小蚁科技有限公司 一种代码开发的辅助方法及装置、存储介质、终端
CN110659200A (zh) * 2018-06-29 2020-01-07 中国航发商用航空发动机有限责任公司 航空机载软件的源码和目标码对比分析方法及系统
CN109032100A (zh) * 2018-09-21 2018-12-18 北京广利核系统工程有限公司 一种鉴定核电厂安全级仪控系统设备适用性的方法
CN109032100B (zh) * 2018-09-21 2019-11-29 北京广利核系统工程有限公司 一种鉴定核电厂安全级仪控系统设备适用性的方法
CN111552465A (zh) * 2020-05-12 2020-08-18 中国民航大学 一种p2020机器码程序到c语言源程序的溯源方法
CN111552465B (zh) * 2020-05-12 2022-07-05 中国民航大学 一种p2020机器码程序到c语言源程序的溯源方法
CN111858322A (zh) * 2020-07-10 2020-10-30 中国科学技术大学 一种Python语言特征自动识别系统和方法
CN112015658A (zh) * 2020-09-02 2020-12-01 卡斯柯信号(北京)有限公司 一种用于软件集成测试用例的生成方法及装置
CN114090114A (zh) * 2021-10-28 2022-02-25 中国航发控制系统研究所 机载设备的软件加载控制方法及系统
CN114090114B (zh) * 2021-10-28 2023-05-23 中国航发控制系统研究所 机载设备的软件加载控制方法及系统

Also Published As

Publication number Publication date
CN107391368B (zh) 2021-02-09

Similar Documents

Publication Publication Date Title
CN107391368A (zh) 一种航空机载软件中源代码与目标代码一致性的分析方法
Kreimer Adaptive detection of design flaws
CN100470480C (zh) 分析程序加速器装置以及更新其的方法
US6321376B1 (en) Apparatus and method for semi-automated generation and application of language conformity tests
CN103677793B (zh) 用于计算机辅助生成可执行控制程序的至少一部分的方法
Higo et al. Refactoring support based on code clone analysis
CN109446218A (zh) Sql语句生成方法、装置及计算机可读存储介质
CN106843840B (zh) 一种基于相似度分析的源代码版本演化注释复用方法
US20180314519A1 (en) Method and apparatus for analyzing impact of software change
US20080276221A1 (en) Method and apparatus for relations planning and validation
CN101071378A (zh) 源代码生成方法、设备和程序
US10216501B2 (en) Generating code in statically typed programming languages for dynamically typed array-based language
US8331694B2 (en) Program pattern analyzing apparatus, pattern appearance status information production method, pattern information generating apparatus, and program
US20160188299A1 (en) System And Method For Automatic Extraction Of Software Design From Requirements
CN104820676B (zh) 一种判断版本号大小的方法及装置
CN109753426A (zh) 一种应用程序的质量控制方法和装置
CN111045670B (zh) 一种二进制代码与源代码间复用关系的识别方法与装置
CN108647146A (zh) 基于修正条件判定组合覆盖的测试用例生成方法
US10346144B2 (en) Methods and apparatus to map single static assignment instructions onto a data flow graph in a data flow architecture
CN107656755A (zh) 规则引擎的编辑方法及装置
CN104536880A (zh) 基于符号执行的gui程序测试用例扩增方法
CN113535798A (zh) 基于大数据挖掘的网络训练方法及数字内容中心
US9563540B2 (en) Automated defect positioning based on historical data
US20180032510A1 (en) Automated translation of source code
WO2018066073A1 (ja) 情報処理装置、情報処理方法及び情報処理プログラム

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant