首页> 外文期刊>Frontiers of computer science in China >Melton: a practical and precise memory leak detection tool for C programs
【24h】

Melton: a practical and precise memory leak detection tool for C programs

机译:Melton:适用于C程序的实用且精确的内存泄漏检测工具

获取原文
获取原文并翻译 | 示例
           

摘要

Memory leaks are a common type of defect that is hard to detect manually. Existing memory leak detection tools suffer from lack of precise interprocedural analysis and path-sensitivity. To address this problem, we present a static interprocedural analysis algorithm, that performs fully path-sensitive analysis and captures precise function behaviors, to detect memory leak in C programs. The proposed algorithm uses path-sensitive symbolic execution to track memory actions in different program paths guarded by path conditions. A novel analysis model called memory state transition graph (MSTG) is proposed to describe the tracking process and its results. In order to do interprocedural analysis, the proposed algorithm generates a summary for each procedure from MSTG and applies the summary at the procedure's call sites. A prototype tool called Melton is implemented for this procedure. Melton was applied to five open source C programs and 41 leaks were found. More than 90% of these leaks were subsequently confirmed and fixed by their maintainers. For comparison with other tools, Melton was also applied to some programs in standard performance evaluation corporation (SPEC) CPU 2000 benchmark suite and detected more leaks than the state of the art approaches.
机译:内存泄漏是一种常见的缺陷类型,很难手动检测。现有的内存泄漏检测工具缺乏精确的过程间分析和路径敏感性。为了解决这个问题,我们提出了一种静态的过程间分析算法,该算法执行完全路径敏感的分析并捕获精确的函数行为,以检测C程序中的内存泄漏。所提出的算法使用路径敏感的符号执行来跟踪受路径条件保护的不同程序路径中的存储器动作。提出了一种称为记忆状态转移图(MSTG)的新型分析模型来描述跟踪过程及其结果。为了进行过程间分析,提出的算法从MSTG生成每个过程的摘要,并将摘要应用于过程的调用站点。为此过程实现了一个称为Melton的原型工具。梅尔顿应用于五个开源C程序,发现41个泄漏。这些泄漏中有90%以上是由维护人员确认并修复的。为了与其他工具进行比较,Melton还应用于标准性能评估公司(SPEC)CPU 2000基准套件中的某些程序,并且检测出的泄漏量超过了最新技术水平。

著录项

  • 来源
    《Frontiers of computer science in China》 |2015年第1期|34-54|共21页
  • 作者单位

    Department of Computer Science and Technology, University of Science and Technology of China, Anhui 230027, China;

    State Key Laboratory of Computer Science, Institute of Software, Chinese Academy of Sciences, Beijing 100190, China;

    State Key Laboratory of Computer Science, Institute of Software, Chinese Academy of Sciences, Beijing 100190, China;

  • 收录信息
  • 原文格式 PDF
  • 正文语种 eng
  • 中图分类
  • 关键词

    memory leak; bug finding; static analysis; symbolic execution;

    机译:内存泄漏;发现错误;静态分析;符号执行;

相似文献

  • 外文文献
  • 中文文献
  • 专利
获取原文

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号