基于MSVL编译器的内存泄漏动态检测
摘要 | 第5-6页 |
ABSTRACT | 第6-7页 |
符号对照表 | 第11-12页 |
缩略语对照表 | 第12-15页 |
第一章 绪论 | 第15-21页 |
1.1 研究背景与意义 | 第15-16页 |
1.2 国内外研究现状与进展 | 第16-18页 |
1.3 本文的研究重点 | 第18页 |
1.4 本文的组织结构 | 第18-21页 |
第二章 内存泄漏与动态检测 | 第21-31页 |
2.1 内存泄漏 | 第21-25页 |
2.1.1 内存泄漏的介绍 | 第21-22页 |
2.1.2 内存泄漏产生的原因 | 第22-25页 |
2.1.3 检测内存泄漏的意义 | 第25页 |
2.2 动态检测 | 第25-30页 |
2.2.1 动态检测的概念 | 第26页 |
2.2.2 动态检测的方法 | 第26-30页 |
2.2.3 动态检测与静态检测的比较 | 第30页 |
2.3 本章小结 | 第30-31页 |
第三章 原理与方法设计 | 第31-47页 |
3.1 MSVL编译器概述 | 第31-36页 |
3.1.1 MSVL的基本概念 | 第31-32页 |
3.1.2 MSVL语法与语义 | 第32-33页 |
3.1.3 编译器原理 | 第33-36页 |
3.2 程序插桩 | 第36-41页 |
3.2.1 程序插桩的介绍 | 第37页 |
3.2.2 插桩原理与设计 | 第37-41页 |
3.3 运行时库与静态库 | 第41-42页 |
3.3.1 运行时库和静态库的介绍 | 第41-42页 |
3.3.2 运行时库和静态库的使用 | 第42页 |
3.4 本文内存泄漏的分类 | 第42-45页 |
3.5 本章小结 | 第45-47页 |
第四章 内存泄漏检测工具的实现 | 第47-63页 |
4.1 总体框架 | 第47-49页 |
4.2 数据存储结构 | 第49-51页 |
4.3 内存管理模块的实现 | 第51-62页 |
4.3.1 处理内存分配与释放模块的实现 | 第51-55页 |
4.3.2 处理赋值操作模块的实现 | 第55-60页 |
4.3.3 处理函数模块的实现 | 第60-62页 |
4.4 内存泄漏信息输出模块的实现 | 第62页 |
4.5 本章小结 | 第62-63页 |
第五章 测试与分析 | 第63-71页 |
5.1 实验平台 | 第63页 |
5.2 功能测试 | 第63-65页 |
5.3 实际应用测试 | 第65-70页 |
5.4 本章小结 | 第70-71页 |
第六章 总结与展望 | 第71-73页 |
6.1 工作总结 | 第71页 |
6.2 工作展望 | 第71-73页 |
参考文献 | 第73-75页 |
致谢 | 第75-77页 |
作者简介 | 第77-78页 |