摘要:
C语言作为安全关键软件的主要实现语言,其存在的内存泄漏缺陷具有很高的隐蔽性和危害性,如何保证内存泄漏检测的准确性和高效性是一大挑战。静态分析具有直接分析源码、能够较早发现软件错误,从而降低修复代价的优势。基于静态分析技术,提出了一种基于路径敏感的值流分析的内存泄漏检测方法,首先进行指针分析生成精确指向信息;然后基于指向信息构建值流约束,执行可达性分析以识别程序中的泄漏路径;最后借助指针与内存地址的有效生命周期进行验证。在典型基准C程序上的实验结果分析表明,本文方法与现有技术相比在效率和精度上都具有一定优势。
张静1,黄志球1,2,沈国华1,2,喻垚慎1,艾磊1. C程序中的内存泄漏机制分析与检测方法设计[J]. 计算机工程与科学.
ZHANG Jing1,HUANG Zhi-qiu1,2,SHEN Guo-hua1,2,YU Yao-shen1,AI Lei1.
Memory leak mechanism analysis
and detection of C Programs
[J]. Computer Engineering & Science.