Graspan: A Single-machine Disk-based Graph System for Interprocedural Static Analyses of Large-scale Systems Code

被引:0
|
作者
Wang, Kai [1 ]
Hussain, Aftab [1 ]
Zuo, Zhiqiang [1 ]
Xu, Guoqing [1 ]
Sani, Ardalan Amiri [1 ]
机构
[1] Univ Calif Irvine, Irvine, CA 92697 USA
基金
美国国家科学基金会;
关键词
Static analysis; graph processing; disk-based systems;
D O I
暂无
中图分类号
TP31 [计算机软件];
学科分类号
081202 ; 0835 ;
摘要
There is more than a decade-long history of using static analysis to find bugs in systems such as Linux. Most of the existing static analyses developed for these systems are simple checkers that find bugs based on pattern matching. Despite the presence of many sophisticated interprocedural analyses, few of them have been employed to improve checkers for systems code due to their complex implementations and poor scalability. In this paper, we revisit the scalability problem of interprocedural static analysis from a " BigData" perspective. That is, we turn sophisticated code analysis into Big Data analytics and leverage novel data processing techniques to solve this traditional programming language problem. We develop Graspan, a disk-based parallel graph system that uses an edge-pair centric computation model to compute dynamic transitive closures on very large program graphs. We implement context-sensitive pointer/alias and dataflow analyses on Graspan. An evaluation of these analyses on large codebases such as Linux shows that their Graspan implementations scale to millions of lines of code and are much simpler than their original implementations. Moreover, we show that these analyses can be used to augment the existing checkers; these augmented checkers uncovered 132 new NULL pointer bugs and 1308 unnecessary NULL tests in Linux 4.4.0-rc5, PostgreSQL 8.3.9, and Apache httpd 2.2.18.
引用
收藏
页码:389 / 404
页数:16
相关论文
共 50 条
  • [41] Optimization and performance of a Fortran 90 MPI-based unstructured code on large-scale parallel systems
    Shires, D
    Mohan, R
    JOURNAL OF SUPERCOMPUTING, 2003, 25 (02): : 131 - 141
  • [42] Optimization and Performance of a Fortran 90 MPI-Based Unstructured Code on Large-Scale Parallel Systems
    Dale Shires
    Ram Mohan
    The Journal of Supercomputing, 2003, 25 : 131 - 141
  • [43] Signed directed graph-based hierarchical modelling and fault propagation analysis for large-scale systems
    Yang, Fan
    Xiao, Deyun
    Shah, Sirish Lalji
    IET CONTROL THEORY AND APPLICATIONS, 2013, 7 (04): : 537 - 550
  • [44] Graph Theory Based Decentralized H∞ Filtering for Large-scale T-S Fuzzy Systems
    Li, Xiao-Jian
    Liu, Shaokun
    Zhao, Guang-Yu
    Bi, Hui-Jun
    Sun, Ying-Hao
    2017 29TH CHINESE CONTROL AND DECISION CONFERENCE (CCDC), 2017, : 167 - 172
  • [45] Scalable Cloud-Based Tool to Empirically Detect Vulnerable Code Patterns in Large-Scale System
    Block, Matthew
    Barcaskey, Benjamin
    Nimmo, Andrew
    Alnaeli, Saleh
    Gilbert, Ian
    Altahat, Zaid
    2020 IEEE INTERNATIONAL CONFERENCE ON ELECTRO INFORMATION TECHNOLOGY (EIT), 2020, : 588 - 592
  • [46] A finite state machine based diagnostic expert system of large-scale autonomous unmanned submarine
    Zheng, Yu
    Wang, Guanxue
    Chen, Zhongxiang
    Liu, Yan
    Shen, Xiong
    2018 IEEE 8TH INTERNATIONAL CONFERENCE ON UNDERWATER SYSTEM TECHNOLOGY: THEORY AND APPLICATIONS (USYS), 2018,
  • [47] Design and Research of Control System of the Large-Scale Accumulator Blow Molding Machine Based on PLC
    Li, Wei-min
    Xu, Yang
    Feng, Dian-yi
    Zhou, Meng-de
    PROCEEDINGS OF THE 2ND INTERNATIONAL CONFERENCE ON ELECTRONIC & MECHANICAL ENGINEERING AND INFORMATION TECHNOLOGY (EMEIT-2012), 2012, 23
  • [48] On the machine learning-based smart beamforming for wireless virtualization with large-scale MIMO system
    Sapavath, Naveen Naik
    Safavat, Sunitha
    Rawat, Danda B.
    TRANSACTIONS ON EMERGING TELECOMMUNICATIONS TECHNOLOGIES, 2019, 30 (09):
  • [49] Reliability evaluation model for Large-scale heterogeneous systems based on stochastic service system
    Liu, Changsong
    Han, Ning
    Journal of Computational Information Systems, 2013, 9 (04): : 1289 - 1296