本文來源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。
-
嵌入式
+關注
關注
5198文章
20449瀏覽量
334060 -
嵌入式開發
+關注
關注
18文章
1146瀏覽量
50126 -
代碼分析
+關注
關注
0文章
13瀏覽量
5961 -
Klocwork
+關注
關注
0文章
10瀏覽量
7704
發布評論請先 登錄
C語言安全編碼指南:MISRA C、CERT C、CWE 與 C Secure 標準對比與Perforce QAC應用詳解
Perforce QAC 2025.4 的新特性
汽車網絡安全開發語言選型指南:C/C++/Rust/Java等主流語言對比+Perforce QAC/Klocwork工具支持
什么是CVE?如何通過SAST/靜態分析工具Perforce QAC 和 Klocwork應對CVE?
車企工具鏈落地指南:Perforce P4、QAC/Klocwork等工具部署與龍智一站式服務
Perforce QAC 2025.2版本更新:虛擬內存優化、100%覆蓋CERT C規則、CI構建性能提升等
汽車軟件開發必看:Perforce工具鏈助力高效開發與功能安全的最佳實踐
2025年汽車行業趨勢解讀:AI在汽車軟件開發中的應用、代碼安全挑戰等(附Perforce QAC / Klocwork工具推薦)
Perforce品牌及產品名更新:涵蓋版本控制Perforce P4(原Helix Core)、靜態代碼分析Perforce QAC(原Helix QAC)等
MISRA C:2025新標準解析:新增規則、優化點與靜態代碼分析工具支持(Perforce QAC、Klocwork)
評論