Efficient data race detection for interrupt-driven programs via path feasibility analysis

被引:2
|
作者
Zhao, Jingwen [1 ]
Wu, Yanxia [1 ]
Dong, Jibin [1 ]
机构
[1] Harbin Engn Univ, Coll Comp Sci & Technol, Harbin 150001, Peoples R China
来源
JOURNAL OF SUPERCOMPUTING | 2024年 / 80卷 / 15期
关键词
Interrupt-driven programs; Date race; Static analysis; Path feasibility analysis; Bug detection; VERIFICATION;
D O I
10.1007/s11227-024-06189-4
中图分类号
TP3 [计算技术、计算机技术];
学科分类号
0812 ;
摘要
Interrupt-driven programs are widely used in embedded systems with high security requirements. However, uncertain interleaving execution of tasks and interrupts may cause concurrency bugs, with data races being a significant factor in threatening security. Most of the previous research has focused on detecting data races in multi-threaded programs. And existing static analysis methods for interrupt-related data race detection often produce many false positives. This paper presents IntRace, an accurate and efficient static detection technique for interrupt data race. IntRace eliminates false data race by analyzing potential concurrency relationships and path reachability. It first identifies all race candidate pairs using access interleaving pattern matching. Then for each pair of operational accesses, IntRace analyzes potential concurrency relationships, including the special case of interrupt nesting, and uses this information to filter out access pairs that cannot concurrently access the same location. Finally, it checks the feasibility of events in the access pairs by constructing path constraints, which effectively eliminating infeasible paths in concurrent contexts. In addition, IntRace was evaluated on benchmark tests and 9 real embedded programs. The experimental results show that IntRace reduces the false positive rate by 73.2% compared to recent studies.
引用
收藏
页码:21699 / 21725
页数:27
相关论文
共 50 条
  • [1] Data Race Detection for Interrupt-Driven Programs via Bounded Model Checking
    Wu, Xueguang
    Wen, Yanjun
    Chen, Liqian
    Dong, Wei
    Wang, Ji
    2013 IEEE 7TH INTERNATIONAL CONFERENCE ON SOFTWARE SECURITY AND RELIABILITY - COMPANION (SERE-C), 2013, : 205 - 211
  • [2] Static race detection of interrupt-driven programs
    Huo, Wei
    Yu, Hongtao
    Feng, Xiaobing
    Zhang, Zhaoqing
    Jisuanji Yanjiu yu Fazhan/Computer Research and Development, 2011, 48 (12): : 2290 - 2299
  • [3] Precise and Efficient Atomicity Violation Detection for Interrupt-Driven Programs via Staged Path Pruning
    Li, Chao
    Chen, Rui
    Wang, Boxiang
    Yu, Tingting
    Gao, Dongdong
    Yang, Mengfei
    PROCEEDINGS OF THE 31ST ACM SIGSOFT INTERNATIONAL SYMPOSIUM ON SOFTWARE TESTING AND ANALYSIS, ISSTA 2022, 2022, : 506 - 518
  • [4] Numerical Static Analysis of Interrupt-Driven Programs via Sequentialization
    Wu, Xueguang
    Chen, Liqian
    Mine, Antoine
    Dong, Wei
    Wang, Ji
    2015 PROCEEDINGS OF THE INTERNATIONAL CONFERENCE ON EMBEDDED SOFTWARE (EMSOFT), 2015, : 55 - 64
  • [5] Rchecker: A CBMC-based Data Race Detector for Interrupt-driven Programs
    Feng, Haining
    Yin, Liangze
    Lin, Wenfeng
    Zhao, Xudong
    Dong, Wei
    COMPANION OF THE 2020 IEEE 20TH INTERNATIONAL CONFERENCE ON SOFTWARE QUALITY, RELIABILITY, AND SECURITY (QRS-C 2020), 2020, : 465 - 471
  • [6] Stack size analysis for interrupt-driven programs
    Chatterjee, K
    Ma, D
    Majumdar, R
    Zhao, T
    Henzinger, TA
    Palsberg, J
    STATIC ANALYSIS, PROCEEDINGS, 2003, 2694 : 109 - 126
  • [7] Stack size analysis for interrupt-driven programs
    Chatterjee, K
    Ma, D
    Majumdar, R
    Zhao, T
    Henzinger, TA
    Palsberg, J
    INFORMATION AND COMPUTATION, 2004, 194 (02) : 144 - 174
  • [8] Static Analysis of Runtime Errors in Interrupt-Driven Programs via Sequentialization
    Wu, Xueguang
    Chen, Liqian
    Mine, Antoine
    Dong, Wei
    Wang, Ji
    ACM TRANSACTIONS ON EMBEDDED COMPUTING SYSTEMS, 2016, 15 (04)
  • [9] A Denotational Model for Interrupt-Driven Programs
    Huang, Yanhong
    Zhao, Yongxin
    Shi, Jianqi
    Zhu, Huibiao
    IEEE SIXTH INTERNATIONAL CONFERENCE ON SOFTWARE TESTING, VERIFICATION AND VALIDATION WORKSHOPS (ICSTW 2013), 2013, : 15 - 20
  • [10] Static Analysis of Interrupt-driven Programs Synchronized via the Priority Ceiling Protocol
    Schwarz, Martin D.
    Seidl, Helmut
    Vojdani, Vesal
    Lammich, Peter
    Mueller-Olm, Markus
    ACM SIGPLAN NOTICES, 2011, 46 (01) : 93 - 104