0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

MISRA C:2025新标准解析:新增规则、优化点与静态代码分析工具支持(Perforce QAC、Klocwork)

龙智DevSecOps 2025-05-08 17:58 次阅读
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

本文来源perforce.com,由Perforce中国授权合作伙伴、DevSecOps解决方案提供商-龙智翻译整理。

2025年3月,嵌入式开发领域迎来重要更新——MISRA C:2025®正式发布!作为Perforce中国授权合作伙伴,龙智一直密切关注、及时分享这一关键标准的演进,助力企业构建更安全、可靠的嵌入式系统

本文,我们将带您了解:MISRA C:2025有何重要变化?对于依赖MISRA®标准开发安全关键型系统的企业来说,新版本意味着什么?如何通过静态分析工具(如Perforce QAC、Klocwork)快速实现合规?

MISRA C:2025概述

2025年3月,MISRA C:2025在德国纽伦堡举办的Embedded World大会中正式发布。与前版MISRA C:2023相比,MISRA C:2025的实质性更新较少,但它基于MISRA C:2023的高效框架,引入了重要的政策调整、增强功能和新准则,进一步简化了开发可靠、稳健的安全关键型代码的流程。

MISRA C:2023涵盖哪些内容?

MISRA C软件开发指南旨在确保使用C语言编写的软件安全可靠。这些指南为开发者提供了一系列需要遵循的规则和指令,并允许开发者使用工具(如Perforce的静态分析工具Perforce QAC 和Klocwork)来帮助检测任何违规行为。

在MISRA C:2025发布之前,MISRA C:2023是最后一个主要版本,共包含221条准则,涵盖C90、C99和C11/C18。

MISRA C:2025更多是对现有指南的增量升级,但它为支持下一版C语言标准和开发环境的更新奠定了基础。MISRA C:2025仍涵盖C90、C99和C11/C18,同时对现有准则进行了合理优化和重组,以保持连续性,同时也增加了新的准则,使现行准则总数达到225条。

MISRA C:2025采用了较新的滚动发布开发模式,取代了独立的修订文档形式,以便开发者能够更好地与文档及其迭代进行交互。

MISRA C:2025有哪些变化?

新增规则

MISRA C:2025新增了5条指南。其中一条较为有趣的新规则是Rule 19.3,它通过将“一致使用某个变体成员”与更严格的“禁止更改活动成员(可能有安全风险)”区分开来,放宽了对联合体(union)的使用限制。这条规则原本是一个全面的限制,但现在对于常规“安全”的用法,仅作为建议性规则。

MISRA C:2025还包括其他新规则,例如关于声明的规则,以及从基本类型系统中提取指针的规则,以使其更加连贯。

规则调整

对一些现有规则进行了扩展。例如,指针转换规则(Rule 11.3、11.4、11.6)现在考虑到了”intptr_t “类型,为处理整数和地址的整数表示提供了更多可能性。在之前的版本中,地址操作是全面禁止的,而这种操作对于一些低级系统功能(如指针标记)来说是必不可少的。

规则重组

MISRA C:2025对部分准则进行了重组,将规则归入到更适合的类别中,并重新调整了规则和指令之间的定位。这一重组工作为下一版本的扩展奠定了坚实基础。

引入“已删除”和“不适用”规则

这是首次在新版发布中引入“已删除”和“不适用”规则。

已删除的规则编号在后续版本中不会被重新启用。因此,当检测工具针对旧版本代码提示”违反Rule 21.2″时(该规则已被重新编号并从当前版本中删除),这个警告将特指MSIRA C:2023标准中原来的Rule 21.2含义,不会与其他规则产生歧义。

这是一个重要的里程碑,因为MISRA现在认识到,随着分析技术和审查理念的发展,并非所有的历史规则都具有价值。(例如,备受争议的Rule 15.5在MISRA C:2025中被停用)。

新的”不适用”类别还允许用户在必要时重新启用该规则。

使用Perforce QAC/ Klocwork实现MISRA合规性

MISRA一直在不断审查C和C++语言的规则和指南。虽然每个版本的设计都旨在让代码更安全、更可靠,但开发人员仍然需要了解这些规则,检查代码是否违规,并持续监控代码以确保符合MISRA标准。

选择合适的静态代码分析工具可以加速实现MISRA合规。Perforce静态分析工具QAC(原Helix QAC)和Klocwork能够自动扫描代码,发现违规行为,并立即识别不合规的代码,从而在代码投入生产前修复违规代码。

Perforce QAC还具有新的合规性模块,完全涵盖MISRA C:2025,帮助您轻松满足并记录 MISRA C:2025的合规性。

即刻咨询Perforce中国授权合作伙伴、DevSecOps解决方案提供商-龙智,申请QAC MISRA C:2025合规性模块的应用演示,或免费试用Perforce QAC与Klocwork。

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 嵌入式
    +关注

    关注

    5186

    文章

    20151

    浏览量

    328884
  • 嵌入式开发
    +关注

    关注

    18

    文章

    1103

    浏览量

    49844
  • 代码分析
    +关注

    关注

    0

    文章

    13

    浏览量

    5937
  • Klocwork
    +关注

    关注

    0

    文章

    10

    浏览量

    7245
收藏 人收藏
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

    评论

    相关推荐
    热点推荐

    【征集令】2026年全球汽车软件开发状况调查,500美金等你拿!

    、应用程序生命周期管理平台、敏捷规划软件以及用于静态代码分析KlocworkQAC等。Perforc
    的头像 发表于 11-12 10:02 487次阅读
    【征集令】2026年全球汽车软件开发状况调查,500美金等你拿!

    什么是CVE?如何通过SAST/静态分析工具Perforce QACKlocwork应对CVE?

    本文将为您详解什么是CVE、CVE标识符的作用,厘清CVE与CWE、CVSS的区别,介绍CVE清单内容,并说明如何借助合适的静态分析工具(如Perforce
    的头像 发表于 10-31 14:24 285次阅读
    什么是CVE?如何通过SAST/<b class='flag-5'>静态</b><b class='flag-5'>分析</b><b class='flag-5'>工具</b><b class='flag-5'>Perforce</b> <b class='flag-5'>QAC</b> 和 <b class='flag-5'>Klocwork</b>应对CVE?

    C/C++代码静态测试工具Perforce QAC 2025.3的新特性

     Perforce Validate 中 QAC 项目的相对/根路径的支持C++ 分析也得到了增强,增加了用于检测
    的头像 发表于 10-13 18:11 346次阅读
    <b class='flag-5'>C</b>/<b class='flag-5'>C</b>++<b class='flag-5'>代码</b><b class='flag-5'>静态</b>测试<b class='flag-5'>工具</b><b class='flag-5'>Perforce</b> <b class='flag-5'>QAC</b> 2025.3的新特性

    车企工具链落地指南:Perforce P4、QAC/Klocwork工具部署与龙智一站式服务

    从试用验证到部署、培训,再到长期的运维护航,龙智致力于为车企客户提供全生命周期的技术服务与支持,让Perforce产品以及DevSecOps工具链真正落地生根,创造价值!
    的头像 发表于 09-19 11:01 667次阅读
    车企<b class='flag-5'>工具</b>链落地指南:<b class='flag-5'>Perforce</b> P4、<b class='flag-5'>QAC</b>/<b class='flag-5'>Klocwork</b>等<b class='flag-5'>工具</b>部署与龙智一站式服务

    Perforce QAC 2025.2版本更新:虚拟内存优化、100%覆盖CERT C规则、CI构建性能提升等

    【产品更新】Perforce QAC更新至2025.2版本,安装路径和许可证都有变化!重点:虚拟内存占用降低、100%覆盖CERT C规则C
    的头像 发表于 09-09 14:40 434次阅读
    <b class='flag-5'>Perforce</b> <b class='flag-5'>QAC</b> 2025.2版本更新:虚拟内存<b class='flag-5'>优化</b>、100%覆盖CERT <b class='flag-5'>C</b><b class='flag-5'>规则</b>、CI构建性能提升等

    Perforce JRebel 简介:即时加载代码变更,加速Java应用开发

    Perforce JRebel 专为Java开发提速而生!支持跳过构建与重新部署,实时加载代码变更,支持100+框架,无缝集成主流IDE与应用服务器。
    的头像 发表于 08-14 14:35 488次阅读
    <b class='flag-5'>Perforce</b> JRebel 简介:即时加载<b class='flag-5'>代码</b>变更,加速Java应用开发

    汽车软件团队必看:基于静态代码分析工具Perforce QAC的ISO 26262合规实践

    ISO 26262合规指南,从ASIL分级到工具落地,手把手教你用静态代码分析Perforce QAC
    的头像 发表于 08-07 17:33 868次阅读
    汽车软件团队必看:基于<b class='flag-5'>静态</b><b class='flag-5'>代码</b><b class='flag-5'>分析</b><b class='flag-5'>工具</b><b class='flag-5'>Perforce</b> <b class='flag-5'>QAC</b>的ISO 26262合规实践

    汽车软件开发必看:Perforce工具链助力高效开发与功能安全的最佳实践

    无论是主机厂还是供应商,ISO 26262合规都是绕不开的课题。冗长的流程、复杂的标准是否让您的团队疲于应对?Perforce一体化工具链正是破解这一难题的钥匙!从静态
    的头像 发表于 08-01 10:49 844次阅读
    汽车软件开发必看:<b class='flag-5'>Perforce</b><b class='flag-5'>工具</b>链助力高效开发与功能安全的最佳实践

    Perforce QAC产品简介:面向C/C++的静态代码分析工具(已通过SO 26262认证)

    Perforce QAC专为C/C++开发者打造,支持多种编码规范、功能安全标准(ISO 262
    的头像 发表于 07-10 15:57 855次阅读
    <b class='flag-5'>Perforce</b> <b class='flag-5'>QAC</b>产品简介:面向<b class='flag-5'>C</b>/<b class='flag-5'>C</b>++的<b class='flag-5'>静态</b><b class='flag-5'>代码</b><b class='flag-5'>分析</b><b class='flag-5'>工具</b>(已通过SO 26262认证)

    2025年汽车行业趋势解读:AI在汽车软件开发中的应用、代码安全挑战等(附Perforce QAC / Klocwork工具推荐)

    随着AI技术深入嵌入式系统,汽车软件已成为智能出行的核心要素。根据Perforce发布的《2025年汽车软件开发现状报告》,全球650多名汽车从业者共同揭示了AI在汽车行业的演进趋势、挑战与应对策略。
    的头像 发表于 06-13 15:03 1059次阅读
    <b class='flag-5'>2025</b>年汽车行业趋势解读:AI在汽车软件开发中的应用、<b class='flag-5'>代码</b>安全挑战等(附<b class='flag-5'>Perforce</b> <b class='flag-5'>QAC</b> / <b class='flag-5'>Klocwork</b><b class='flag-5'>工具</b>推荐)

    Helix QAC 2025.1 重磅发布!MISRA C:2025® 100%覆盖

    和服务器存储占用。  编码规范支持MISRA C:2025®、CERT C)    MISRA
    的头像 发表于 05-13 16:48 1120次阅读
    Helix <b class='flag-5'>QAC</b> 2025.1 重磅发布!<b class='flag-5'>MISRA</b> <b class='flag-5'>C</b>:<b class='flag-5'>2025</b>® 100%覆盖

    代码静态测试工具Perforce QAC 2025.1新特性

    Perforce QAC 2025.1实现了对新发布的MISRA C:2025®标准的100%覆
    的头像 发表于 04-21 15:14 928次阅读
    <b class='flag-5'>代码</b><b class='flag-5'>静态</b>测试<b class='flag-5'>工具</b><b class='flag-5'>Perforce</b> <b class='flag-5'>QAC</b> 2025.1新特性

    Perforce品牌及产品名更新:涵盖版本控制Perforce P4(原Helix Core)、静态代码分析Perforce QAC(原Helix QAC)等

    Perforce推出全新P4平台及P4 One客户端!从广为人知的“P4”到Helix Core到Perforce P4,此次品牌重塑是一次初心回归,也是对开发者和数字创作团队需求的深度回应。一起来了解更多吧~
    的头像 发表于 03-28 15:04 1108次阅读
    <b class='flag-5'>Perforce</b>品牌及产品名更新:涵盖版本控制<b class='flag-5'>Perforce</b> P4(原Helix Core)、<b class='flag-5'>静态</b><b class='flag-5'>代码</b><b class='flag-5'>分析</b><b class='flag-5'>Perforce</b> <b class='flag-5'>QAC</b>(原Helix <b class='flag-5'>QAC</b>)等

    缓冲区溢出漏洞的原理、成因、类型及最佳防范实践(借助PerforceKlocwork/Hleix QAC静态代码分析工具

    本期来认识软件漏洞的“常客”——缓冲区溢出,C/C++开发者尤其要注意!全面了解该漏洞的成因、类型、常见示例,以及如何借助Klocwork、Helix QAC等SAST
    的头像 发表于 03-04 16:39 1721次阅读
    缓冲区溢出漏洞的原理、成因、类型及最佳防范实践(借助<b class='flag-5'>Perforce</b> 的<b class='flag-5'>Klocwork</b>/Hleix <b class='flag-5'>QAC</b>等<b class='flag-5'>静态</b><b class='flag-5'>代码</b><b class='flag-5'>分析</b><b class='flag-5'>工具</b>)

    如何保障自动驾驶卡车系统的安全?

    61508或ISO 26262的开发流程,需通过静态分析验证源代码Perforce Helix QAC
    的头像 发表于 02-26 15:45 1575次阅读
    如何保障自动驾驶卡车系统的安全?