首页> 中文学位 >内存泄漏静态检测模型的设计与实现
【6h】

内存泄漏静态检测模型的设计与实现

代理获取

目录

文摘

英文文摘

声明

第一章绪论

1.1内存泄漏与静态测试

1.2课题来源及背景

1.3工作重点

1.4论文安排

第二章内存泄漏

2.1内存泄漏的概念

2.2内存泄漏产生的原因

2.3内存泄漏产生方式的分类

2.4内存泄漏检测的重要意义

2.5国内外研究现状

第三章静态测试

3.1静态测试的概念

3.2静态测试与动态测试的比较

3.3静态检测技术

第四章静态检测工具DTSC的设计与实现

4.1 DTSC的介绍

4.1.1 DTSC的框架

4.2 DTSC的特点与优势

4.3 DTSC的设计与实现

4.3.1 DTSC的抽象语法树生成单元

4.3.2 DTSC的控制流图生成单元

4.3.3 DTSC的符号表生成单元

4.3.4 DTSC的区间运算单元

4.3.5 DTSC的缺陷模式状态机计算单元

4.3.6 DTSC的数据库访问单元

第五章DTSC中内存泄漏模型的设计与实现

5.1内存泄漏的模式总结

5.2别名分析

5.3内存泄漏模型的设计与实现

第六章DTSC的内存泄漏模型的检测

6.1测试用例的设计与检测

6.2与K8检测结果的比较

第七章总结

7.1研究工作总结

7.2进一步工作的展望

附录

参考文献

致谢

攻读硕士学位期间已录用学术论文情况

展开▼

摘要

C程序中内存泄漏的检测是C程序软件测试的重点和难点之一。由于C程序具有灵活高效的优点,从C语言的诞生到现在,都作为一种主流程序设计语言一直被广泛使用。C语言使得用户能够直接控制程序内存资源的使用,这对于实现运行程序的高性能或提高计算机资源的利用率是至关重要的。但正是因为C语言中灵活的内存管理机制,使C程序很容易产生内存泄漏等内存方面的程序错误。内存泄漏故障在C中是非常危险的,通常难以观察到的,但随着故障的积累,程序的整体性能会下降,严重时会导致死机或异常退出。因此内存泄漏的检测至关重要! 本文首先研究了内存泄漏检测技术的发展情况以及内存泄漏的特征和产生原因,并分析了国内外常见的内存泄漏检测方法,包括静态检测法、动态检测法等,并对比他们的优缺点。之后本文实现了静态检测工具DTSC,实现了对程序的语法分析,词法分析,生成符号表和控制流图,并在此之上实现了对程序中各个变量的区间分析,使得分析的准确性大大提高。之后实现了拓展性强的缺陷模式状态机,搭建了一个针对故障的强有力的静态检测平台。然后通过研究C语言中内存泄漏故障产生的错误代码,总结出产生内存泄漏代码的模式。根据这些的模式设计并实现DTSC的内存泄漏模型,并用该模型对C程序进行检测。最后,本文将检测结果与国外静态检测工具的检测结果进行比较,分析DTSC和内存泄漏模型的优点和不足,并完善内存泄漏模型,提出DTSC改进方案。

著录项

相似文献

  • 中文文献
  • 外文文献
  • 专利
代理获取

客服邮箱:kefu@zhangqiaokeyan.com

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

  • 服务号