软件适航加油站

 找回密码
 成为会员
搜索
查看: 6582|回复: 4

DO-178B标准的目标码验证

[复制链接]
amateur 发表于 2009-7-7 11:05:40 | 显示全部楼层 |阅读模式
本帖最后由 amateur 于 2009-7-8 08:39 编辑

概述
随着软件测试需求的增加,软件测试在不同的行业的之间交叉的趋势呈现出来;公司在寻找最实际的技术和标准时,也会关注除本行业外,相关行业的情况。例如在汽车和航空电子这两个行业,以前都基于DO-178B标准,随后也采用了MISRA的标准。

采用“行业外”的测试标准成为一种趋势并由此带来新的测试技术的引入。在这当中,以DO-178B标准的目标码验证要求为例。目标码验证是许多航空电子程序的一个关键测试要素,但是该技术并没有在行业以外得到应用。然而,许多现代嵌入式控制应用软件和安全苛刻要求的提高意味着随着厂商采用DO-178B,目标码验证也成为其中的关键要素,并且该要素已经被关注和应用。

目标码验证
什么是目标码验证呢?DO-178B标准(6.4.4.2结构化语言覆盖率分析)相应部分描述的需求如下:

“结构化语言的覆盖率分析可以在源代码级进行,但是如果A级软件并且编译器产生的目标代码不能直接追踪到源代码中的语句。那么,其他的验证要在目标代码中执行,这样来确定产生的代码序列的正确性。在目标码中检查编译器生成的数组的边界就是目标码不能直接追踪到源代码的一个例子。”

简而言之,目标码的验证关心的是编译器产生的目标码的控制流结构的多少与源代码不一致。这些不一致产生的原因有许多,如:编译器的解释、优化等。然而,传统的结构化语言的覆盖率技术使用的是源码级的,尽管在处理器上执行的是目标码。二者之间控制流结构的不同在测试过程中会产生重大的差距。

DO-178B的要求是:对于A级(安全苛刻性)应用软件的,按照标准的要求软件的开发者必须进行目标码的验证工作。虽然这只是整个应用系统中的一部分,但是它仍然需要进行大量的测试工作,因此需要相当可观的人力和财力投入。因此,自动化的,不依赖于编译器的验证过程可以节约大量的经费和时间。
qfwind2003 发表于 2009-7-7 22:20:03 | 显示全部楼层
感谢分享资料了
dc_nn 发表于 2009-7-7 22:59:45 | 显示全部楼层
支持楼主 多分享点资料吧
奎子来了 发表于 2013-7-3 17:55:17 | 显示全部楼层
新人一个,即使看到几年前的帖子,也觉得获益不少 谢谢
GC_George 发表于 2014-9-20 13:25:36 | 显示全部楼层
可是怎么验证呢?还是不明白。
有人说,编译器经过认证,就不需要目标码验证?
有人说,检查编译器的规则,就可以?
那具体怎么检查呢?
读二进制码?反编译?
求教!
您需要登录后才可以回帖 登录 | 成为会员

本版积分规则

小黑屋|Archiver|手机版|软件适航加油站 ( 沪ICP备13019901号-3 )

GMT+8, 2018-1-17 03:34 , Processed in 0.124800 second(s), 15 queries .

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表