摘要 | 第4-6页 |
Abstract | 第6-7页 |
第一章 绪论 | 第14-24页 |
1.1 研究背景 | 第14-17页 |
1.1.1 复杂计算机系统 | 第14-15页 |
1.1.2 基于形式化方法的软件正确性保证 | 第15-16页 |
1.1.3 软件测试与符号执行 | 第16-17页 |
1.2 研究现状 | 第17-20页 |
1.2.1 约束求解 | 第17-19页 |
1.2.2 路径爆炸 | 第19-20页 |
1.3 本文工作 | 第20-23页 |
1.3.1 基于机器学习约束求解的符号执行框架 | 第20-21页 |
1.3.2 基于MLBSE的符号执行功能增强 | 第21-22页 |
1.3.3 基于机器学习约束求解的符号执行框架的实现和实验 | 第22-23页 |
1.4 论文结构安排 | 第23-24页 |
第二章 背景知识 | 第24-36页 |
2.1 符号执行 | 第24-28页 |
2.1.1 符号执行的基本原理 | 第24-26页 |
2.1.2 针对复杂路径约束求解问题的相关工作 | 第26-28页 |
2.2 基于机器学习的优化技术 | 第28-34页 |
2.2.1 无梯度优化算法 | 第29页 |
2.2.2 基于机器学习的无梯度优化算法RACOS | 第29-31页 |
2.2.3 RACOS算法优化技术 | 第31-34页 |
2.3 本章小结 | 第34-36页 |
第三章 基于机器学习约束求解的符号执行框架 | 第36-50页 |
3.1 问题分析 | 第36-38页 |
3.2 基于机器学习优化算法约束求解 | 第38-41页 |
3.2.1 路径约束满足性问题的优化目标 | 第38-39页 |
3.2.2 路径约束求解架构 | 第39-41页 |
3.3 复杂路径约束 | 第41-45页 |
3.3.1 数值计算路径约束 | 第41-42页 |
3.3.2 定义域相关约束 | 第42-44页 |
3.3.3 库函数路径约束 | 第44-45页 |
3.4 完整架构 | 第45-47页 |
3.5 实例分析 | 第47-48页 |
3.6 本章小结 | 第48-50页 |
第四章 基于MLBSE的符号执行功能增强 | 第50-58页 |
4.1 MLBSE功能增强 | 第50-56页 |
4.1.1 黑盒执行模式 | 第51-53页 |
4.1.2 可解置信度报告 | 第53-54页 |
4.1.3 基于可解置信度报告的搜索策略 | 第54-56页 |
4.2 RACOS算法优化 | 第56页 |
4.3 本章小结 | 第56-58页 |
第五章 实现和实验 | 第58-76页 |
5.1 工具 | 第58-62页 |
5.1.1 Symbolic PathFinder和jpf-nhandler | 第58-59页 |
5.1.2 工具架构 | 第59-60页 |
5.1.3 工具使用 | 第60-62页 |
5.2 实验 | 第62-74页 |
5.2.1 实验设置 | 第63-65页 |
5.2.2 性能分析 | 第65-70页 |
5.2.3 功能增强分析 | 第70-74页 |
5.3 本章小结 | 第74-76页 |
第六章 论文总结 | 第76-78页 |
6.1 论文主要工作 | 第76-77页 |
6.2 未来工作 | 第77-78页 |
参考文献 | 第78-84页 |
简历与科研成果 | 第84-86页 |
致谢 | 第86-87页 |