技巧和窍门–在C中进行防御性编程的最佳实践

警报灯概念和古董商人在办公室

最佳实践是每个固件应用程序都应遵循的基本,必不可少的实践。防御性编程一直是一项重要的软件技能。以下是固件开发人员应牢记的一些在C中进行防御性编程的最佳实践:

  • 检查功能的输入和输出
  • 检查函数的返回值(它们经常被忽略!)
  • 监视缓冲区以防止溢出
  • 验证指针不是NULL尤其是函数指针
  • 使用断言宏来检测错误而非错误情况
  • 2-3%的代码库应为断言
  • 断言不应修改系统状态
  • 仅公开大型程序需要了解的数据和功能(封装)
  • 在构建过程中执行静态分析
  • 监视堆栈是否溢出
  • 用已知的模式,ISR向量或停止指令填充未使用的ROM
  • 看门狗系统应该集成在一起,不能盲目地看门狗

遵循这些简单的最佳实践可以帮助确保提高固件质量,并是开发安全固件的第一步。

发表评论

您的电子邮件地址不会被公开。 必需的地方已做标记 *

该网站使用Akismet减少垃圾邮件。 了解如何处理您的评论数据.