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

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

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

C語(yǔ)言和C++中結(jié)構(gòu)體的區(qū)別
C7000優(yōu)化C/C++編譯器

使用TMS320VC5503/C5506/C5507/C5509/C5509A引導(dǎo)加載程序

TMS320C6201/C6701/C6211 HPI啟動(dòng)操作

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

從TMS320C6712/C6712C遷移到TMS320C6712D

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

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

usb-c和type-c哪個(gè)好
TMS320C5535、C5534、C5533、C5532定點(diǎn)數(shù)字信號(hào)處理器數(shù)據(jù)表

評(píng)論