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

行业认证标准:MISRA编码标准(MISRA C:2012和MISRA C++:2008) 什么是MISRA? MISRA是指由汽车工业软件可靠性协会(MISRA)开发的,针对C和C++广泛采用的编码标准。 MISRA编码标准(MISRA C:2012和MISRA C++:2008)已广泛用于除汽车以外的安全关键型行业,例如医疗、军事和航空航天工程,它提供了一组用于编写嵌入式C和C++代码的最佳实践,促进针对关键系统的安全、可靠和可移植代码的编写。(MISRA拥有C和C++的工作组,Parasoft是MISRA的两个工作组的成员。) MISRA C:2012 对于C开发,MISRA C标准 阅读详情

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如何使遵守编码标准变得容易,立刻注册申请免费试用吧。

“原创内容,转载请标明出处”

理解MISRA C++在AUTOSAR环境中的集成方式 深入探讨MISRA C++如何与AUTOSAR框架协同工作,确保汽车软件的安全性与合规性。通过静态分析和编码规范约束,misra c++有效提升代码质量,满足功能安全标准要求。 阅读详情

相关推荐

汽车电子MISRA C编码规范详解与实践

编码规范是确保软件可靠性的基础技术手段,特别是在汽车电子等高安全要求领域。MISRA C作为行业权威标准,通过限制危险语言特性(如指针越界、隐式转换)和强制类型安全等规则,从原理层面预防内存错误和未定义行为。其技术价值体现在提升代码确定性、增强跨平台兼容性,并满足ISO 26262等功能安全认证要求。在汽车ECU开发中,结合IAR、PC-lint等工具链实施MISRA C规范,能有效规避数组越界等典型风险,本文通过实际案例解析数据类型规范和控制流限制等核心规则的应用实践。

weixin_34581040的博客 612

简说 MISRA-C++

MISRA-C++ 是嵌入式系统中广泛采用的C++编码规范,旨在提高代码安全性、可靠性和可维护性。遵循MISRA-C++虽然可能增加开发成本,但能显著降低系统风险,尤其在航空、汽车、医疗等安全关键领域至关重要。MISRA-C++ 通过严格限制语言特性和编程模式,确保嵌入式系统的安全性和可靠性。

is0815的博客 1600

汽车电子安全编码:MISRA C++规范深度剖析

在汽车电子系统开发中,MISRA C++规范是保障代码安全与可靠性的关键准则。它通过严格约束C++语言特性,规避未定义行为、内存泄漏与并发风险,显著提升嵌入式软件的鲁棒性。深入理解MISRA C++规则集及其在AUTOSAR架构中的落地实践,已成为功能安全(ISO 26262)合规开发的硬性要求。

weixin_28968525的博客 1025

MISRA C 和MISRA C++:汽车软件安全的守护者

由汽车工业软件可靠性协会(Motor Industry Software Reliability Association,即MISRA)制定的一套针对于C语言的编码规范,作为响应该指南的产物,为汽车行业提供了一种功能安全方法,MISRA C由此诞生。

帮助客户打造卓越 1659

MISRA C++规则检查常见问题:快速理解汇总

深入解读MISRA C++规则在实际应用中的典型问题,帮助开发者快速掌握编码规范要点,避免常见合规性错误。结合misra c++标准实践,提升代码安全性与可维护性。

weixin_28487725的博客 1000

什么是MISRA C++

MISRA C++的编码规范基于C++03标准,包含了228条规则和15条指令,分为必须遵守(required)、应该遵守(mandatory)和建议遵守(advisory)三个等级。MISRA C++的编码规范的目的是帮助开发人员避免C++语言中的一些潜在的危险或不确定的特性,提高代码的质量和可维护性,以及降低缺陷和漏洞的风险。这些规则和指令涵盖了C++语言的各个方面,如语法、类型、运算符、表达式、控制流、函数、类、继承、多态、异常、模板、标准库等²。

usstmiracle的博客 869

当C++遇上AUTOSAR编码规范: AUTOSAR与静态代码测试 | MISRA C++编码规范 | 开发团队应该采用AUTOSAR编码规范吗 | 如何实现从已有编码规范到AUTOSAR的转变

当飞鸟遇上游鱼,当溪流遇上江海,当北京遇上西雅图,当你遇上Mr/Ms.Right…,“当”是一切美好的开端,但今天,咱先不聊自然也不聊爱情,聊一聊当C++遇上AUTOSAR编码规范,会有一段怎样的故事? AUTOSAR与静态代码测试 汽车界的同仁们都知晓,AUTOSAR(AUTomotive Open System ARchitecture)组织拥有超过180个会员,涵盖了汽车整车厂、零部件供应商、工具供应商、半导体芯片供应商等,这样的强强联合,开发了一套针对汽车ECU的开放式软件体系架构,实现了应用

Polelink北汇信息的博客 2487

MISRA C++:2023 和 AUTOSAR C++14,以及部份新准则解析

MISRA C++:2023 和 AUTOSAR C++14 之间的关系可以被理解为一种继承与发展。历史背景是首个针对C++语言的安全编码规范,它基于C++03标准,并在汽车及其他安全关键行业中得到广泛应用。随着C++语言的发展,特别是C++11和C++14新特性的引入,AUTOSAR组织发布了编码规范,以填补这些新特性在安全关键软件中使用的空白。AUTOSAR C++14大量借鉴了MISRA C++:2008的规则,并对其进行了扩展和更新,以便适应新的C++版本。整合与更新。

1399

AUTOSAR C++14编码规范的前世今生

​现如今,随着汽车电子、新能源和自动驾驶等新技术的迅猛发展,软件在车辆系统中的比重越来越大,软件的可靠性对汽车电子系统和车辆的可靠性起到了至关重要的作用,嵌入式软件的研发成本也占到了汽车研发支出中的很大比重。本文将简要概述AUTOSAR最新发布的C++14编码规范的背景、现状和解决方案。

Trinity_Techologies的博客 1469

10、汽车软件的静态代码分析:MISRA和AUTOSAR编码指南介绍

本文介绍了汽车软件开发中广泛使用的MISRA和AUTOSAR编码指南,详细阐述了其发展历史、规则分类及版本更新情况,并探讨了静态代码分析工具在代码合规性检查中的重要作用及使用建议。文章还展望了未来汽车软件开发标准和工具的发展趋势,旨在帮助开发者提升汽车软件的安全性、质量和可靠性。

stem5的博客 140

MISRA C++ 2008 规则整理.pdf

MISRA C++ 2008 规则整理.pdf

回顾“90后”——MISRA的25年岁月:1994-2020 MISRA发展简史 | 规则和指令的区别 | 针对自动生成的代码 | MISRA的功能安全和信息安全 | MISRA编码规范与静态测试

谈起MISRA这个名字,大家应该都不陌生,但,我们真的了解它吗?从90年代初期MISRA组织的发起至2020年,MISRA已走过25个年头。25年过去,90后已成长为现代社会发展的中坚力量,同样作为“90后”的MISRA,也已作为覆盖汽车、航空、轨道交通、核工业、医疗等领域的标准编码规范,稳稳占据静态测试编码规范发展的主街期。 图片来源于MISRA官网 1994-2020 MISRA发展简史 MISRA,全称Motor Industry Software Reliability Associ...

Polelink北汇信息的博客 1774

Misra C++规范

Misra C++

带你走近MISRA C++:2023:MISRA C++的发展史|MISRA C++:2008与AUTOSAR C++14|MISRA C++:2023|MISRA C++:2023规则分类

随着汽车工业迈入数字化转型的新纪元,软件的安全性与可靠性已跃升为设计和开发核心环节的重中之重。MISRA C++标准的诞生与演进,精准地回应了行业发展的需求。自MISRA C++标准首次面世以来,它便被奉为汽车软件工程师在开发实践中的圭臬。

Polelink北汇信息的博客 1502

C#实战:如何用winmm.dll打造毫秒级高精度定时器(附完整代码)

本文详细介绍了在C#中利用winmm.dll实现毫秒级高精度定时器的完整方案。针对.NET内置定时器精度不足的问题,通过调用timeSetEvent等原生API,提供了超越系统时钟中断周期的精准定时能力。文章包含核心原理剖析、完整的封装类代码以及音视频处理、游戏开发等场景下的实战应用与性能调优指南。

ujm5678901的博客 689

别再只放按钮了!巧用微信小程序‘长按识别’功能,打造无缝加群体验

本文深入探讨了微信小程序'长按识别'功能在社群运营中的创新应用,通过简化加群流程至一步操作,显著提升用户转化率。文章详细解析了技术实现细节、UI/UX设计策略,并对比了与企业微信API的适用场景,为开发者提供打造无缝加群体验的完整解决方案。

weixin_42627853的博客 434

MISRA规范演进史:如何塑造现代汽车软件开发的安全基因

本文探讨了MISRA规范从MISRA C到MISRA C++的演进历程,及其如何通过严格的类型安全、资源管理和控制流约束为现代汽车软件开发奠定安全基础。重点分析了MISRA规范与AUTOSAR标准的融合,以及静态测试在确保代码合规性中的关键作用,为汽车软件安全提供了核心保障。

gitlab7runner的博客 775

2019年电赛D题《简易电路特性测试仪》全过程

2019年全国大学生电子设计大赛D题《简易电路特性测试仪》硬件部分及故障分析

zzhao2580的博客 5万+

常用嵌入式软件代码编码规范的关系和覆盖

使用库博静态代码分析工具可以对嵌入式软件代码中的编码进行自动化检测,提升效率,及早发现问题,及时解决。

chengoodflower的博客 1314

S型速度曲线C程序实现

S型速度曲线C语言程序实现 前言 S型曲线相较于梯形速度曲线具有运行更加平稳的特点,S型曲线共有八种运行情况,感兴趣可以查阅相关文献 代码段 #include <stdio.h> #include <math.h> #define FP64 double int main(void) { /**************************** 定义相关变量(需要映射到PLC寄存器才能进行监控) ***********************/ FP6

LSX312441548的博客 8391

Aloudata Agent :基于 NoETL 明细语义层的分析决策智能体

这是包括我们在内的一些厂商探索的一个新方向,这种方式先由大模型将自然语言转化为对指标语义层的查询请求(MQL,Metrics Query Language),再由指标平台将指标和维度的查询与计算逻辑转化为准确的 SQL 查询语句。用户查询经大模型语义解析后,将其转换为指标、维度及筛选条件的组合表达,并生成面向指标平台的 MQL,Aloudata CAN 指标平台的语义引擎将 MQL 转换为准确和可执行的查询 SQL,语义引擎内置函数体系与 SQL 解析器,确保语义转换的 100% 准确性。

Aloudata的博客 1663

MISRA C 2012 标准浅析

MISRA C 2012目前已经修订了多次,最近版本是AMD2,已经支持C11标准。MISRA主要是功能安全,而CERT C/C++则更多的关注安全威胁。MISRA C 2012:AMD2总计规则数175条,其中规则158条,指令17条。其中指令基本上是无法被SAST工具所检测分析的。175条规则中强制为15条、必要规则120条、建议规则40条。

manok的专栏 4395

YOLO26涨点改进 | 全网独家,注意力创新改进篇 | Arxiv2025 | YOLO26引入MSLA多尺度线性注意力模块,高效提取多尺度特征和建模长程依赖,含多种创新改进,助力有效涨点

本文提出了一种多尺度线性注意力模块(MSLA)来优化YOLO26模型。MSLA通过并行使用不同尺寸的深度可分离卷积(3×3至9×9)提取多尺度特征,并结合线性注意力机制高效建模全局依赖关系。该模块显著提升了模型对多尺度目标的检测能力,同时保持了轻量化特性。实验表明,MSLA能有效增强小目标检测和复杂场景下的分割精度。文章详细介绍了MSLA的网络结构、核心优势及实现代码,并提供了两种集成MSLA的YOLO26改进方案,为实时目标检测任务提供了高效解决方案。

Ai缝合怪、助力小伙伴高效发论文 291

【C++】静态扫描工具Helix QAC的介绍和使用

QA-C 是由英国 PRQA 公司(该公司于2019年被美国Perforce公司收购)开发的静态代码分析工具,该公司是静态代码分析领域的行业先驱。Perforce(PRQA)公司是AUTOSAR组织在代码静态分析领域的唯一会员,负责功能安全软件架构的相关标准制定工作,参与编写了C++14编码指南,制定了AUTOSAR测试方案,并应用其开发的静态测试工具Helix QAC在AUTOSAR Adaptive Platform演示代码上执行代码静态测试。

Friday 9257

洛达开发--AB1585 PC 工具介绍

洛达常用的PC开发工具包括三款:1)IOT_Flash_Tool是固件烧写工具,支持USB/UART接口下载,需通过断电重启完成烧录;2)EPT是图形化PinMux配置工具,适用于MT25x3/MT768x等芯片的引脚复用设置;3)ATK是综合开发套件,包含日志工具、配置工具、OTA工具和实验室测试工具等组件。这三款工具分别针对固件烧录、硬件配置和系统调试等不同开发环节,形成完整的开发工具链。

Joon2020的博客 669

以 Cloud 为核心的设备 mTLS 证书体系:从产品需求到 OP-TEE 安全落地

本文探讨了以云端为核心的物联网设备mTLS证书体系构建方案。文章从产品需求出发,分析了云端必须采用mTLS+证书体系管理设备身份的原因,指出静态Token方案的三大缺陷:身份不可控、运营不可控和审计不可控。重点阐述了mTLS在产品中的核心功能是加密传输和双向认证,并详细列出了云端PKI、设备注册中心等必备组件。在设备侧,强调必须通过OP-TEE技术保护私钥安全,提出了一个包含密钥生成、CSR导出等功能的TA设计方案。最后,文章给出了云端端到端流程示例,说明如何将证书生命周期管理转化为可运营的产品能力,包括自

Interview_TC的博客 640
上一篇: 通过DT10检测多任务阻塞死锁问题
下一篇: 什么是圈复杂度?
Trinitytec
博客等级 码龄11年 165粉丝 81原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值