Static detection of dynamic memory errors

被引:31
|
作者
Evans, D
机构
关键词
D O I
10.1145/249069.231389
中图分类号
TP31 [计算机软件];
学科分类号
081202 ; 0835 ;
摘要
Many important classes of bugs result from invalid assumptions about the results of functions and the values of parameters and global variables. Using traditional methods, these bugs cannot be detected efficiently at compile-time, since detailed cross-procedural analyses would be required to determine the relevant assumptions. In this work, we introduce annotations to make certain assumptions explicit at interface points. An efficient static checking tool that exploits these annotations can detect a broad class of errors including misuses of null pointers, uses of dead storage, memory leaks, and dangerous aliasing. This technique has been used successfully to fix memory management problems in a large program.
引用
收藏
页码:44 / 53
页数:10
相关论文
共 50 条
  • [1] Static Detection of Disassembly Errors
    Krishnamoorthy, Nithya
    Debray, Saumya
    Fligg, Keith
    16TH WORKING CONFERENCE ON REVERSE ENGINEERING (WCRE 2009), 2009, : 259 - 268
  • [2] Automated Memory Corruption Detection through Analysis of Static Variables and Dynamic Memory Usage
    Park, Jihyun
    Choi, Byoungju
    Kim, Yeonhee
    ELECTRONICS, 2021, 10 (17)
  • [3] A CASE Tool for JAVA']JAVA Programs Logical Errors Detection: Static and Dynamic Testing
    Al-Ashwal, Deena
    Al-Sewari, Eman Zaid
    Al-Shargabi, Asma Abdulghani
    2018 19TH INTERNATIONAL ARAB CONFERENCE ON INFORMATION TECHNOLOGY (ACIT), 2018, : 256 - 261
  • [4] Static analyzer for finding dynamic programming errors
    Bush, William R.
    Pincus, Jonathan D.
    Sielaff, David J.
    Software - Practice and Experience, 2000, 30 (07) : 775 - 802
  • [5] Static and dynamic errors in particle tracking microrheology
    Savin, T
    Doyle, PS
    BIOPHYSICAL JOURNAL, 2005, 88 (01) : 623 - 638
  • [6] A static analyzer for finding dynamic programming errors
    Bush, WR
    Pincus, JD
    Sielaff, DJ
    SOFTWARE-PRACTICE & EXPERIENCE, 2000, 30 (07): : 775 - 802
  • [7] Combining static and dynamic array detection for binary synthesis with multiple memory ports
    Rotem, Nadav
    Ben Asher, Yosi
    DESIGN AUTOMATION FOR EMBEDDED SYSTEMS, 2011, 15 (01) : 1 - 18
  • [8] Combining static and dynamic array detection for binary synthesis with multiple memory ports
    Nadav Rotem
    Yosi Ben Asher
    Design Automation for Embedded Systems, 2011, 15 : 1 - 18
  • [9] OpenACC Errors Classification and Static Detection Techniques
    Alghamdi, Ahmed Mohammed
    Eassa, Fathy Elbouraey
    IEEE ACCESS, 2019, 7 : 113235 - 113253
  • [10] Runtime Detection of Temporal Memory Errors
    Vorobyov, Kostyantyn
    Kosmatov, Nikolai
    Signoles, Julien
    Jakobsson, Arvid
    RUNTIME VERIFICATION (RV 2017), 2017, 10548 : 294 - 311