摘要 | 第1-9页 |
ABSTRACT | 第9-19页 |
第一章 绪论 | 第19-35页 |
·研究背景及意义 | 第19-21页 |
·研究现状与分析 | 第21-28页 |
·人工调试 | 第21-23页 |
·基于程序分析的调试方法 | 第23-25页 |
·基于机器学习技术的调试方法 | 第25-27页 |
·现存问题 | 第27-28页 |
·研究的问题、内容和方法 | 第28-30页 |
·论文主要工作和研究成果 | 第30-34页 |
·论文主要工作 | 第30-33页 |
·主要创新点和研究成果 | 第33-34页 |
·论文结构 | 第34-35页 |
第二章 程序分析和机器学习背景知识 | 第35-57页 |
·程序分析的相关背景知识 | 第35-45页 |
·程序分析的基本概念 | 第35-40页 |
·静态程序分析 | 第40-44页 |
·动态程序分析和动态切片 | 第44-45页 |
·机器学习的相关背景知识 | 第45-56页 |
·机器学习的基本概念 | 第45-48页 |
·常用机器学习技术简介 | 第48-54页 |
·评估方法 | 第54-56页 |
·本章小结 | 第56-57页 |
第三章 控制流图的精化和扩展 | 第57-94页 |
·不可达路径检测 | 第57-70页 |
·引言 | 第57-60页 |
·不可达路径探测实例 | 第60-62页 |
·基于数据挖掘的不可达路径探测方法 | 第62-66页 |
·实验评估和讨论 | 第66-69页 |
·现存不足和改进方案 | 第69-70页 |
·虚函数调用的频率估计 | 第70-92页 |
·引言 | 第70-73页 |
·虚函数调用实例 | 第73-75页 |
·基于证据的虚函数调用目标频率预测方法Festival | 第75-82页 |
·实验评估和讨论 | 第82-92页 |
·潜在的应用场景 | 第92-93页 |
·本章小结 | 第93-94页 |
第四章 基于日志分析的缺陷定位方法 | 第94-110页 |
·引言 | 第94-96页 |
·研究背景 | 第94页 |
·现存问题 | 第94-95页 |
·主要工作 | 第95页 |
·本章结构 | 第95-96页 |
·应用场景和前提假设 | 第96-97页 |
·日志切片 | 第97-100页 |
·日志精化 | 第100-103页 |
·使用在线分析提高切片效率 | 第103-105页 |
·实验评估 | 第105-108页 |
·AutoLog初步实验 | 第105-106页 |
·MoonBox初步实验 | 第106-108页 |
·局限性和扩展方向 | 第108-109页 |
·本章小结 | 第109-110页 |
第五章 用于调试的自动断点生成技术 | 第110-126页 |
·引言 | 第110-112页 |
·研究背景 | 第110页 |
·现存问题 | 第110-111页 |
·主要工作 | 第111-112页 |
·本章结构 | 第112页 |
·最近邻执行轨迹搜索和程序内存图 | 第112-114页 |
·选取断点位置 | 第114-115页 |
·生成断点条件 | 第115-118页 |
·工具的设计和实现 | 第118-120页 |
·实验评估 | 第120-125页 |
·用户调查设计 | 第120-121页 |
·评估结果和讨论 | 第121-125页 |
·本章小节 | 第125-126页 |
第六章 可辅助缺陷修复的自动参数推荐 | 第126-150页 |
·引言 | 第126-129页 |
·研究背景 | 第126-127页 |
·现存问题 | 第127-129页 |
·主要工作 | 第129页 |
·本章结构 | 第129页 |
·API参数使用调研 | 第129-131页 |
·自动参数推荐方法 | 第131-139页 |
·范围控制规则 | 第132-133页 |
·构建参数使用实例数据库 | 第133-137页 |
·生成候选参数 | 第137-139页 |
·实验评估 | 第139-149页 |
·客观实验 | 第140-147页 |
·用户调研 | 第147-149页 |
·本章小结 | 第149-150页 |
第七章 全文总结 | 第150-155页 |
·论文主要工作 | 第150-152页 |
·下一步工作展望 | 第152-155页 |
参考文献 | 第155-164页 |
攻读博士学位期间已发表或录用的论文 | 第164-165页 |
致谢 | 第165-166页 |