硬件辅助在线数据竞争检测
1. 引言
在安全关键系统(如航空航天和铁路领域)中,数据竞争检测至关重要。传统的软件内联竞争检查器(如 ThreadSanitizer)在这些领域可能无法使用,因为其工具未经过认证。本文提出了一种基于硬件的方法,利用 COEMS 项目的现场可编程门阵列(FPGA)来并行检查执行跟踪,以实现数据竞争检测。
1.1 硬件方法优势
- 灵活性 :通过 TeSSLa 语言,为最终用户提供了快速重新配置的灵活性。
- 适用于安全关键系统 :可用于需要认证的安全关键系统,避免了软件方法在认证方面的问题。
- 可预测的性能开销 :对被测应用程序的插桩复杂度简单,性能开销可预测,不受是否启用竞争检查的影响。
1.2 支持的功能
- 处理无界线程 :TeSSLa 的灵活性允许处理无界数量的线程。
- 有限的动态内存和锁监控 :支持对动态分配的内存和锁进行有限的监控。
- 离线分析 :支持将跟踪记录到文件中,并使用 TeSSLa 解释器进行离线分析,有助于在普通开发机器上快速原型化新规范。
2. 相关工作
2.1 传统数据竞争检测方法
| 方法 |
|---|
超级会员免费看
订阅专栏 解锁全文
8843

被折叠的 条评论
为什么被折叠?



