SPATA: Effective OS Bug Detection with Summary-Based, Alias-Aware, and Path-Sensitive Typestate Analysis

被引:0
|
作者
Li, Tuo [1 ]
Bai, Jia-Ju [2 ]
Sui, Yulei [3 ]
Hu, Shi-Min [1 ]
机构
[1] Department of Computer Science and Technology, Tsinghua University Beijing, Beijing, China
[2] School of Cyber Science and Technology, Beihang University Beijing, Beijing, China
[3] School of Computer Science and Engineering, University of New South Wales, Sydney,NSW, Australia
来源
ACM Transactions on Computer Systems | 2024年 / 42卷 / 3-4期
关键词
The operating system (OS) is the cornerstone for computer systems. It manages hardware and provides fundamental service for user-level applications. Thus; detecting bugs in OSes is important to improve the reliability of computer systems. Static typestate analysis is a common technique for detecting various types of bugs; but it is often inaccurate or unscalable for large-size OS code; due to imprecision of identifying alias relationships as well as high costs of typestate tracking; path-feasibility validation; and inter-procedural analysis.In this article; 1 we present SPATA; a novel summary-based; alias-aware; and path-sensitive typestate analysis framework to detect OS bugs. To identify precise alias relationships in the OS code; SPATA performs a path-based alias analysis based on control-flow paths and access paths. With these alias relationships; SPATA reduces the costs of typestate tracking and path-feasibility validation; to accelerate path-sensitive typestate analysis for accurate bug detection. Moreover; SPATA uses an alias-summary-based analysis to accelerate inter-procedural bug detection; without time-consuming alias analysis across functions. We have evaluated SPATA on the Linux kernel and three popular IoT OSes; and it finds 651 real bugs with a false-positive rate of 18%. Besides; our alias-summary-based analysis achieves a 6.7x speedup in bug detection compared to non-summary-based analysis. © 2024 held by the owner/author(s);
D O I
10.1145/3695250
中图分类号
学科分类号
摘要
引用
收藏
相关论文
共 2 条
  • [1] Path-Sensitive and Alias-Aware Typestate Analysis for Detecting OS Bugs
    Li, Tuo
    Bai, Jia-Ju
    Sui, Yulei
    Hu, Shi-Min
    ASPLOS '22: PROCEEDINGS OF THE 27TH ACM INTERNATIONAL CONFERENCE ON ARCHITECTURAL SUPPORT FOR PROGRAMMING LANGUAGES AND OPERATING SYSTEMS, 2022, : 859 - 872
  • [2] Compatibility Issue Detection for Android Apps Based on Path-Sensitive Semantic Analysis
    Yang, Sen
    Chen, Sen
    Fan, Lingling
    Xu, Sihan
    Hui, Zhanwei
    Huang, Song
    2023 IEEE/ACM 45TH INTERNATIONAL CONFERENCE ON SOFTWARE ENGINEERING, ICSE, 2023, : 257 - 269