中文摘要 | 第3-4页 |
英文摘要 | 第4页 |
1 绪论 | 第7-12页 |
1.1 论文背景、研究内容及意义 | 第7-9页 |
1.2 国内外研究现状 | 第9-10页 |
1.3 本文主要工作 | 第10-11页 |
1.4 论文结构安排 | 第11-12页 |
2 符号执行基础理论 | 第12-21页 |
2.1 符号执行概述 | 第12页 |
2.2 符号执行基本原理 | 第12-16页 |
2.2.1 控制流图 | 第12-13页 |
2.2.2 符号执行基本原理 | 第13-16页 |
2.3 符号执行存在问题 | 第16-18页 |
2.3.1 路径爆炸问题 | 第16-17页 |
2.3.2 程序设计语言的复杂性 | 第17-18页 |
2.3.3 应用领域的复杂性 | 第18页 |
2.4 约束求解过程 | 第18-20页 |
2.4.1 约束求解概述 | 第18-19页 |
2.4.2 现阶段约束求解过程优化方法及存在的问题 | 第19-20页 |
2.5 小结 | 第20-21页 |
3 基于线性规划的约束求解过程优化 | 第21-29页 |
3.1 线性规划基础理论 | 第21-22页 |
3.1.1 线性规划概论 | 第21页 |
3.1.2 线性规划原理 | 第21-22页 |
3.2 线性规划优化约束求解 | 第22-28页 |
3.2.1 约束求解问题转化 | 第22页 |
3.2.2 线性规划求解过程 | 第22-27页 |
3.2.3 中间结果保存 | 第27页 |
3.2.4 选择性优化 | 第27-28页 |
3.3 小结 | 第28-29页 |
4 针对KLEE的约束求解优化设计与实现 | 第29-42页 |
4.1 KLEE概述 | 第29-31页 |
4.1.1 解释模块 | 第29-30页 |
4.1.2 符号化模块 | 第30页 |
4.1.3 约束求解模块 | 第30页 |
4.1.4 路径选择模块 | 第30-31页 |
4.2 KLEE约束求解模块 | 第31-34页 |
4.2.1 约束表达式简化 | 第32页 |
4.2.2 约束集合简化 | 第32页 |
4.2.3 反例缓存 | 第32-33页 |
4.2.4 STP求解器概述 | 第33-34页 |
4.3 KLEE约束求解模块优化设计与实现 | 第34-41页 |
4.3.1 KLEE工作流程分析 | 第34-35页 |
4.3.2 线性规划模块设计与实现 | 第35-41页 |
4.4 小结 | 第41-42页 |
5 实验与结论分析 | 第42-50页 |
5.1 实验环境 | 第42页 |
5.2 实验过程 | 第42-48页 |
5.2.1 KLEE约束集合优化实验 | 第43-44页 |
5.2.2 KLEE性能优化实验 | 第44-48页 |
5.3 实验结果分析 | 第48-49页 |
5.4 小结 | 第49-50页 |
6 总结与展望 | 第50-52页 |
6.1 工作总结 | 第50页 |
6.2 下一步工作 | 第50-52页 |
致谢 | 第52-53页 |
参考文献 | 第53-56页 |
附录 | 第56页 |
A. 作者在攻读硕士学位期间发表的论文题目 | 第56页 |