BARR-C是Barr集團的編碼標(biāo)準(zhǔn),旨在減少嵌入式軟件中的錯誤,并引入風(fēng)格指南以提高可維護性和可移植性。
在這里,我們解釋了什么是Barr-C,開發(fā)人員如何使用BARR-C:1018檢測用C編寫的固件中的錯誤,以及如何將其與MISRA的指南相結(jié)合。
什么是BARR-C?
BARR-C是由BarrGroup開發(fā)的嵌入式C編碼標(biāo)準(zhǔn),專注于減少軟件中的錯誤數(shù)量,同時提高嵌入式軟件的可維護性和可移植性。
BARR-C:2018指南分為兩大類:
1.處理細分語言的方法,例如避免特定關(guān)鍵字(例如“register”或“continue”)和使用類似于宏的函數(shù)。
2.關(guān)于編程風(fēng)格的內(nèi)容(例如,縮進和命名約定)。
第一類中的一些規(guī)則被標(biāo)記為“零bug...周期”。遵循這些規(guī)則將有助于首先防止錯誤。
為什么BARR-C很重要?
開發(fā)嵌入式軟件可能具有挑戰(zhàn)性,即使使用正確的工具來識別缺陷和合規(guī)性問題也是如此。
BARR-C:2018主要旨在最大限度地減少編碼錯誤。因此,BARR-C:2018可以被視為適用于各種項目的C語言子集的第一步。
對于未使用編碼標(biāo)準(zhǔn)和靜態(tài)分析的情況,采用BARR-C:2018是一項重大改進。
如何實現(xiàn)BARR-C合規(guī)性?
為了遵守BARR-C:2018,必須執(zhí)行所有準(zhǔn)則。
有幾種方法可以檢測不合規(guī)的代碼:例如,非正式代碼審查或自動掃描。每條規(guī)則都描述了所建議的執(zhí)行方法。標(biāo)準(zhǔn)中的許多規(guī)則都可以使用靜態(tài)分析工具(如HelixQAC)自動檢查。
BARR-C與MISRA有何關(guān)系?
設(shè)計安全關(guān)鍵型系統(tǒng)的開發(fā)人員知道要嚴格遵守MISRAC:2012指南。符合MISRAC:2012標(biāo)準(zhǔn)可確保嵌入式代碼安全可靠。
BARR-C:2018并不是為了與MISRAC:2012競爭而設(shè)計的;它們實際上是兼容和互補的。例如,使用MISRA C:2012的項目可以使用BARR-C:2018的編程風(fēng)格部分來滿足MISRA C關(guān)于采用和實施一致編碼風(fēng)格的建議。
同樣,關(guān)鍵項目最初可以努力實現(xiàn)對BARR-C的遵守,然后順利過渡到MISRAC的合規(guī)性。
為什么使用HelixQAC實現(xiàn)Barr-C合規(guī)性
HelixQAC可輕松遵守編碼標(biāo)準(zhǔn)和準(zhǔn)則,包括MISRA和BARR-C。
親自了解HelixQAC如何幫助您遵守BARR-C和其他功能安全標(biāo)準(zhǔn)。
-
代碼
+關(guān)注
關(guān)注
30文章
4828瀏覽量
69063
發(fā)布評論請先 登錄
相關(guān)推薦
C7000 C/C++優(yōu)化指南用戶手冊

TMS320C6000優(yōu)化C/C++編譯器v8.3.x

TMS320C28x優(yōu)化C/C++編譯器v22.6.0.LTS

TMS320C6201/C6701/C6211 HPI啟動操作

從TMS320C6211B/C6711/C6711B/C6711C遷移到TMS320C6711D

從TMS320C6712/C6712C遷移到TMS320C6712D

對TMS320VC5503/C5506/C5507/C5509/C5509A I2C外設(shè)進行編程

從TMS320C6211B/C6711/C6711B和C6713遷移到TMS320C6713B

usb-c和type-c哪個好

C/C++代碼動態(tài)測試工具VectorCAST插樁功能演示#代碼動態(tài)測試 #C++
USB-C和TYPE-C有哪些區(qū)別

評論