安全关键系统编程标准与语言子集的发展
1. 规则文档与 JSF++ 的改进
在软件开发中,现有规则的文档需要扩展,以确保涵盖规则的所有原因。这一点很重要,因为所有编码标准都认识到项目可能会有偏离某些规则的情况。在这种情况下,项目需要能够证明在特定情况下安全偏离规则的合理性。为了构建这样的理由,必须理解规则存在的所有原因,以便能够论证所有相关方面都已被考虑。
当前版本的 JSF++ 已经纳入了这些更改。虽然 JSF++ 被认为适用于英国安全相关军事系统,但在 2005 年初,洛克希德·马丁公司认为它具有商业敏感性,因此将其保密。不过,后来大部分 JSF++ 已在公共网站上公开。
2. MISRA C++ 的诞生与发展
2.1 背景与需求
JSF 并非唯一在安全相关系统中使用 C++ 的项目,当时有许多非实时、SIL1/2 地面系统正在开发中。人们认为需要一个更公开可用且经过同行评审的编码标准。
2005 年 4 月的国防航空航天研究计划(DARP)会议上,作者举办了关于 C++ 在航空电子系统中安全相关/安全关键使用的研讨会。研讨会的一个重要结论是需要“MISRA C++”,它将是一个类似于 MISRA C 的编码标准,有相关的基本原理,并能在多个领域获得开发者和认证者的认可。
2.2 工作小组的组建
随后,有人向航空电子软件标准委员会(ASSC)提出组建一个工作组来开发 C++ 编码标准的建议。ASSC 是由英国国防部赞助的国防航空电子行业特殊兴趣小组(由 ERA 管理),其开放性质具有以下两个优势:
- 许多高完整性 C++ 工具供应商愿意提供他们的编码标准
超级会员免费看
订阅专栏 解锁全文
10万+

被折叠的 条评论
为什么被折叠?



