MISRA和AUTOSAR将统一C++编码规范——这意味着什么

创提信息
2022/06/06

分享到

C++的使用正越来越多,从联网的自动驾驶汽车到人工智能(AI)等关键的新兴行业都在采用C++这种语言。

 
确保C++代码的安全性仍然至关重要,特别是当C++语言用于安全相关系统的开发时。
 
编写安全、现代的C++将变得更加容易。这是因为两个最流行的C++编码准则——MISRA C++和AUTOSAR准则——即将合并。


MISRA C++和AUTOSAR将合并
 
2019年1月,MISRA®宣布将AUTOSAR C++编码准则与MISRA C++合并。
 
将这两套编码准则合并,将为C++编程的最佳实践提供唯一基准。
 
新的准则将提供一套通用的规则,以支持安全关键行业的软件开发人员,这些安全关键行业包括:
 
   • 汽车
 
   • 航空航天和国防
 
   • 医疗设备


这对我们意味着什么?


如果您正在使用MISRA C++……
 
这仅仅意味着您可以使用最新版本的C++语言。
 
MISRA C++发布于2008年,基于C++ 03。从那时起,就发生了很多变化。例如,ISO 26262汽车功能安全标准得以发布,C++语言也已经完全被改造了。
 
因此,AUTOSAR编码规范是使用MISRA C++作为起点开发的。然后,AUTOSAR扩展了这些规则,包括现代C++——C++ 11和C++ 14。这使得它们能够用于安全关键系统的开发。
 
合并后的新MISRA编码规范将包含C++ 17,而且新MISRA规则按计划也会随着未来语言的变化而与时俱进。


如果您正在使用AUTOSAR编码规范……
 
这意味着您将能够访问由更大的专家组审查过的规则。
 
MISRA专家被公认为是安全关键行业的专家。(MISRA C是一个约定俗成的标准,特别是在汽车软件开发方面。)因此,将这些专家的知识汇集到一起将对每个人都有益处。
 
目前的AUTOSAR编码规范中可能有一些规则没有被纳入MISRA。可以改写AUTOSAR编码规范以匹配MISRA风格,而且新的规则也可能被加入。
 
如果有任何您仍然想要应用的规则,您可以将它们包含在您的自定义编码规则中。静态代码分析工具,如Helix QAC,使继续应用这些规则变得容易。


合并的C++编码规范何时将可用?
 
我们还不知道合并的新C++编码规范何时将可用,但我们会尽快更新给您。


为什么Helix QAC是最佳的静态代码分析工具
 
Helix QAC是适用于MISRA C++和AUTOSAR的最佳静态代码分析工具。
 
我们的专家服务于MISRA C++和AUTOSAR委员会。我们以独特的方式参与了AUTOSAR编码规范的开发。(此外,使用Helix QAC测试了AUTOSAR编码规范。)
 
随着MISRA C++和AUTOSAR编码规范的合并,使用Helix QAC将使这种过渡更容易。我们的专家将确保更新Helix QAC以使其比其他工具更准确地覆盖新规则。您将能够使用任何您需要的规则集,无论是来自最初的MISRA C++、AUTOSAR编码规范,还是合并后的新准则。
 
若您想亲自体验Helix QAC如何使遵守编码标准变得容易,立刻注册申请免费试用吧。