MISRA(汽车工业软件可靠性协会)提供了相关指南,以帮助开发安全可靠的电子系统。这些指南适用于嵌入式控制系统、软件密集型应用以及独立软件。
MISRA 是汽车制造商、零部件供应商和工程咨询公司之间的一项合作项目。该项目由一个指导委员会负责管理,成员包括福特汽车公司、宾利汽车、捷豹路虎、HORIBA MIRA、ZF TRW 以及利兹大学。
尽管MISRA起源于汽车行业,但如今已在航空航天、生物医学和金融等其他市场获得广泛认可。它在嵌入式系统、IoT 以及工业控制系统 领域同样被广泛采用。虽然MISRA符合性 无法保证软件完全没有质量或安全 问题,但它确实能生成更健壮、更易于维护且更具可移植性的代码。
MISRA 专注于制定安全 编码标准。ISO 26262侧重于功能安全措施,并确立了称为 ASIL 的风险等级。
MISRA 指南中最突出的部分是针对使用 C 和 C++ 编程语言开发的项目。其中包括 MISRA C 2004、MISRA C++ 2008 和 MISRA C 2012 标准。
MISRA 指南分为“强制性”、“要求性”和“建议性”三类。符合性 要求不得违反任何“强制性”指南。然而,对于“要求性”指南,如果存在有据可依的理由,则允许一定程度的违规。只有在安全性和安全 不受影响,且没有可接受的变通方案的情况下,才允许此类偏差。例如,无法修改的第三方自定义代码。
如今,从防抱死制动系统和动力转向系统,到导航和车载娱乐系统,一切都由软件控制。这些系统均来自不同的供应商。而且软件供应链正变得越来越长——每个最终产品中的代码都由多家供应商共同开发。
MISRA C/C++ 已成为汽车系统的事实上的编码标准 。然而,它既未涵盖 C++ 语言的最新改进,也未能反映最新安全 漏洞和安全隐患的相关知识。
2019年1月,MISRA宣布将把AUTOSAR指南与其自身确立的最佳实践相结合,以制定一套适用于安全相关C++的统一“标准”语言子集开发 。由MISRA主导的指南将纳入该语言的最新版本(AUTOSAR的C++17),并在其后续版本(AUTOSAR的C++20)发布后予以纳入。
有机结合的 MISRA-AUTOSAR C++ 采用一套通用规则确立统一的行业标准,是面向整个供应链中所有开发人员的单一参考点。
如今的汽车包含超过1亿行代码。在未来十年内,一辆普通汽车可能包含3亿行代码。MISRA编码准则有助于开发 符合以下要求的代码:
MISRA《符合性 》不仅定义了编码规范,还规定了软件从供应商流向采购方时应满足的质量标准。符合性 流程不仅结构严谨(基于C/C++编码标准),而且切实可行,详细说明了在必要时如何处理规则的例外情况。
在软件定义车辆的时代, 新思科技是助您加速汽车创新的关键。