什麼(me)是Barr-C?

創提信息
2022/12/06

分享到

Barr-C是Barr Group的編碼标準,旨在減少嵌入式軟件中的漏洞,并引入風格指南,提高可維護性和可移植性。
 
在這(zhè)裡(lǐ),我們將(jiāng)闡釋什麼(me)是Barr-C,開(kāi)發(fā)人員如何使用BARR-C:1018檢測C語言所編寫的固件中的漏洞,以及Barr-C如何與MISRA指南相結合。


本文將(jiāng)包含如下内容:
 
     • 什麼(me)是Barr-C?
 
     • 爲什麼(me)Barr-C很重要?
 
     • 如何實現Barr-C合規性?
 
     • Barr-C與MISRA的關系?


什麼(me)是Barr-C?
 
Barr-C是由Barr Group開(kāi)發(fā)的嵌入式C編碼标準,緻力于減少固件中的漏洞數量,同時(shí)提高嵌入式軟件的可維護性和可移植性。
 
BARR-C:2018指南分爲兩(liǎng)大類:
 
    1. 一類是處理開(kāi)發(fā)語言子類的,如避免特定的關鍵字(例如,“register”或“continue”)和使用類函數宏。
 
    2. 另一類是關于編程風格的(例如,縮進(jìn)和命名約定)。
 
第一類的某些規則被(bèi)标記爲“Zero Bugs…Period.”遵循這(zhè)些規則將(jiāng)有助于在第一時(shí)間防範漏洞。


爲什麼(me)Barr-C很重要?
 
即便使用合适的工具來識别缺陷和合規問題,開(kāi)發(fā)嵌入式軟件仍然具有挑戰性。
 
BARR-C:2018定義了一種(zhǒng)風格,主要目的在于最小化編碼錯誤。因此,BARR-C:2018可以被(bèi)視爲對(duì)C語言子類進(jìn)行規範的第一步,這(zhè)一點适用于各種(zhǒng)項目。
 
對(duì)于沒(méi)有使用編碼标準和靜态分析這(zhè)種(zhǒng)情況,BARR-C:2018的采用是一項重大改進(jìn)。


如何實現Barr-C合規性?
 
爲了符合BARR-C:2018,必須強制執行所有指南。
 
檢測不兼容代碼的方法有好(hǎo)幾種(zhǒng),例如,非正式的代碼審查或自動掃描。建議的執行方法在每個規則中都(dōu)有描述。BARR-C:2018中的許多規則可以使用像Helix QAC這(zhè)樣(yàng)的靜态分析工具自動檢查。


Barr-C與MISRA的關系?
 
設計安全關鍵系統的開(kāi)發(fā)人員熟知要嚴格遵循MISRA C:2012指南。符合MISRA C:2012能(néng)确保嵌入式代碼是安全可靠的。
 
BARR-C:2018不是爲了與MISRA C:2012競争而設計的,它們實際上是相互兼容并互爲補充的。例如,一個使用MISRA C:2012的項目可以使用BARR-C:2018的編程風格部分來滿足MISRA C裡(lǐ)的采用和執行一緻的編碼風格的建議。
 
類似地,關鍵項目最初可以朝著(zhe)符合Barr-C的方向(xiàng)努力,然後(hòu)再順利過(guò)渡到符合MISRA C。


爲什麼(me)使用Helix QAC實現Barr-C合規性
 
使用Helix QAC,可以很容易地遵循編碼标準和指南,包括MISRA和Barr-C。
 
若想親自體驗Helix QAC如何幫助您遵循Barr-C和其他功能(néng)安全标準,立刻注冊申請免費試用吧。