什么是Barr-C?

Barr-C是Barr Group的编码标准,旨在减少嵌入式软件中的漏洞,并引入风格指南,提高可维护性和可移植性。

在这里,我们将阐释什么是Barr-C,开发人员如何使用BARR-C:1018检测C语言所编写的固件中的漏洞,以及Barr-C如何与MISRA指南相结合。

本文将包含如下内容:

  • 什么是Barr-C?
  • 为什么Barr-C很重要?
  • 如何实现Barr-C合规性?
  • Barr-CMISRA的关系?

什么是Barr-C?

Barr-C是由Barr Group开发的嵌入式C编码标准,致力于减少固件中的漏洞数量,同时提高嵌入式软件的可维护性和可移植性。

BARR-C:2018指南分为两大类:

  1. 一类是处理开发语言子类的,如避免特定的关键字(例如,“register”或“continue”)和使用类函数宏。
  2. 另一类是关于编程风格的(例如,缩进和命名约定)。

第一类的某些规则被标记为“Zero Bugs…Period.”遵循这些规则将有助于在第一时间防范漏洞。

为什么Barr-C很重要?

即便使用合适的工具来识别缺陷和合规问题,开发嵌入式软件仍然具有挑战性。

BARR-C:2018定义了一种风格,主要目的在于最小化编码错误。因此,BARR-C:2018可以被视为对C语言子类进行规范的第一步,这一点适用于各种项目。

对于没有使用编码标准和静态分析这种情况,BARR-C:2018的采用是一项重大改进。

如何实现Barr-C合规性?

为了符合BARR-C:2018,必须强制执行所有指南。

检测不兼容代码的方法有好几种,例如,非正式的代码审查或自动扫描。建议的执行方法在每个规则中都有描述。BARR-C:2018中的许多规则可以使用像Helix QAC这样的静态分析工具自动检查。 

Barr-C与MISRA的关系?

设计安全关键系统的开发人员熟知要严格遵循MISRA C:2012指南。符合MISRA C:2012能确保嵌入式代码是安全可靠的。

BARR-C:2018不是为了与MISRA C:2012竞争而设计的,它们实际上是相互兼容并互为补充的。例如,一个使用MISRA C:2012的项目可以使用BARR-C:2018的编程风格部分来满足MISRA C里的采用和执行一致的编码风格的建议。

类似地,关键项目最初可以朝着符合Barr-C的方向努力,然后再顺利过渡到符合MISRA C。

为什么使用Helix QAC实现Barr-C合规性

使用Helix QAC,可以很容易地遵循编码标准和指南,包括MISRA和Barr-C。

若想亲自体验Helix QAC如何帮助您遵循Barr-C和其他功能安全标准,立刻注册申请免费试用吧。                      

 “原创内容,转载请标明出处”

posted on 2022-12-06 14:55  Trinitytec  阅读(51)  评论(0编辑  收藏  举报