基于自动化静态分析工具对锁使用模式的研究
| 摘要 | 第1-7页 |
| ABSTRACT | 第7-13页 |
| 第一章 绪论 | 第13-21页 |
| ·研究背景与意义 | 第13-14页 |
| ·研究目的 | 第14-16页 |
| ·国内外研究现状 | 第16-19页 |
| ·数据竞争 | 第16-18页 |
| ·死锁检测 | 第18页 |
| ·软件缺陷研究 | 第18-19页 |
| ·并发程序测试 | 第19页 |
| ·研究内容 | 第19-20页 |
| ·本文的组织结构 | 第20页 |
| ·本章小结 | 第20-21页 |
| 第二章 程序分析相关技术 | 第21-27页 |
| ·程序分析技术概述 | 第21-22页 |
| ·动态分析 | 第21页 |
| ·静态分析 | 第21-22页 |
| ·动静结合分析 | 第22页 |
| ·数据流分析 | 第22-23页 |
| ·别名分析 | 第23-24页 |
| ·中间语言 | 第24-25页 |
| ·本章小结 | 第25-27页 |
| 第三章 自动化工具的设计与实现 | 第27-59页 |
| ·术语定义 | 第27-30页 |
| ·工作流 | 第30-31页 |
| ·目标程序选取 | 第31-32页 |
| ·架构设计 | 第32-34页 |
| ·LLVM 分析框架 | 第34-37页 |
| ·中间代码生成 | 第37-41页 |
| ·支撑引擎 | 第41-49页 |
| ·功能概述 | 第42页 |
| ·函数建模 | 第42-43页 |
| ·使用-定义链构造 | 第43-44页 |
| ·控制依赖图构造 | 第44-46页 |
| ·指针别名分析 | 第46-49页 |
| ·语言特性收集器 | 第49-51页 |
| ·功能概述 | 第50页 |
| ·具体实现 | 第50-51页 |
| ·模式分析器 | 第51-56页 |
| ·功能概述 | 第51-52页 |
| ·基本算法 | 第52-55页 |
| ·特殊锁模式的识别 | 第55-56页 |
| ·本章小结 | 第56-59页 |
| 第四章 分析结果 | 第59-71页 |
| ·案例分析 | 第59-61页 |
| ·自动化分析工具实验 | 第61-62页 |
| ·实验环境 | 第61页 |
| ·实验设计 | 第61页 |
| ·实验结果 | 第61-62页 |
| ·锁分析结果 | 第62-70页 |
| ·语言特性分析结果 | 第63-65页 |
| ·锁模式分析结果 | 第65-68页 |
| ·版本间锁使用演化分析结果 | 第68-70页 |
| ·本章小结 | 第70-71页 |
| 第五章 全文总结 | 第71-73页 |
| ·主要结论 | 第71页 |
| ·研究展望 | 第71-73页 |
| 参考文献 | 第73-77页 |
| 致谢 | 第77-79页 |
| 攻读硕士学位期间已发表或录用的论文 | 第79页 |