草榴社区

什么是 MISRA标准?

定义

(汽车工业软件可靠性联合会)为开发安全和安全保障相关的电子系统、嵌入式控制系统、软件密集型应用程序和独立软件提供指南。

MISRA 由汽车制造商、零部件供应商和工程咨询公司进行协作。其接受指导委员会的管理,该委员会成员包括福特汽车公司、宾利汽车公司、捷豹路虎公司、HORIBA MIRA 公司、ZF TRW 公司和利兹大学 (University of Leeds)。 

该标准虽然发源于汽车工业,但已在航空航天、生物医学和金融等其他市场获得认可。同样也被嵌入式、物联网和工业控制系统所接受。虽然其合规性并不能保证软件不会出现任何质量或安全问题,但确实能够生成更强大、更易于维护和更容易移植的代码。

MISRA 与 ISO 26262 和 ASIL 相比有何区别?

MISRA 侧重于编码安全标准。ISO 26262 侧重于功能安全衡量并确立 ASIL 风险等级。

如何使用指南进行规范?

该指南中最突出的内容,旨在针对使用 C 和 C ++ 编程语言开发的项目。其中包括 MISRA C 2004、MISRA C ++ 2008 和 MISRA C 2012 标准。

MISRA 指南分为强制性、必要性和建议性类别。必须不违反“强制性”指导原则才能合规。但是,如果有书面情况解释,则允许存在某些违反“必需性”指南的情况。当且只有在不影响安全和安全保障且没有合理的解决方法时,才允许出现这些偏差。例如,不能更改的第三方自定义代码。

MISRA 编码标准的管辖支持 

下载数据手册

MISRA 合规性面临哪些挑战?

软件现在可以控制从防抱死制动器和动力转向、到导航和信息娱乐系统的所有功能。这些系统全都由不同的供应商提供。而且软件供应链越来越长,每一个最终产物的代码都包含了多家供应商贡献的力量。

MISRA C/C++ 已经在事实上成为汽车系统的编码标准。但是并未涵盖最近的 C++ 语言改进内容,也未反映最新安全违规和漏洞的知识。

MISRA 如何发展而来?

2019 年 1 月,MISRA 宣布将 AUTOSAR 指南与他们自己建立的最佳实践相结合,单独开发一套"专用"语言子集,用于安全相关的 C++ 开发。MISRA 主导的指南将包含最新版本的语言 (AUTOSAR’s C++17),以及可用的后续版本 (AUTOSAR’s C++20)。 

有机结合的 MISRA-AUTOSAR C++ 采用一套通用规则确立统一的行业标准,是面向整个供应链中所有开发人员的单一参考点。 

MISRA 合规的优点是什么?

当今汽车中使用的代码超过 1 亿行。在接下来的十年,汽车中使用的代码平均将达到 3 亿行。MISRA 编码指南促进了满足以下条件的代码开发:

  • 足够可靠,可在安全攸关的系统中运行
  • 抵御常见的被利用的漏洞代码
  • 在整个供应链实现可移植(可重用)

它的合规性不仅定义了编码指南,还定义了软件从供应商转让给收购方的软件质量标准。合规性流程不仅稳健(基于 C/C++ 编码标准),而且实用,还解释了必要时如何处理规则的例外情况。

新思科技如何支持实现 MISRA 合规?

新思科技将通过 Coverity 静态分析解决方案帮助您化解汽车软件攻击,这是一种可扩展的综合性 MISRA 合规解决方案。