摘要 | 第4-5页 |
Abstract | 第5页 |
第一章 引言 | 第8-12页 |
1.1 选题依据 | 第8页 |
1.2 国内外研究现状 | 第8-10页 |
1.3 研究内容 | 第10-11页 |
1.4 本文组织结构 | 第11-12页 |
第二章 基于Java Monitor的并发程序可达性测试 | 第12-20页 |
2.1 Java线程模型 | 第12页 |
2.2 Java管程并发机制 | 第12-14页 |
2.3 并发程序错误 | 第14页 |
2.4 并发程序测试方法 | 第14-15页 |
2.4.1 非确定性测试 | 第14-15页 |
2.4.2 确定性测试 | 第15页 |
2.5 可达性测试方法 | 第15-20页 |
2.5.1 可达性测试通用执行模型 | 第15-16页 |
2.5.2 竞争分析及竞争变体计算 | 第16-18页 |
2.5.3 可达性测试过程 | 第18-20页 |
第三章 基于拆分策略的可达性测试 | 第20-36页 |
3.1 问题分析 | 第20-21页 |
3.2 方法内拆分点识别 | 第21-27页 |
3.2.1 并发变体操作符 | 第21-22页 |
3.2.2 拆分点识别策略 | 第22-26页 |
3.2.3 拆分点排序算法 | 第26-27页 |
3.3 相关方法识别 | 第27-30页 |
3.4 基于拆分的可达性测试算法 | 第30-32页 |
3.5 实例研究 | 第32-36页 |
3.5.1 拆分方法本身生成探测错误同步序列 | 第32-34页 |
3.5.2 拆分相关方法生成探测错误同步序列 | 第34-36页 |
第四章 工具设计与实现 | 第36-43页 |
4.1 工具框架 | 第36页 |
4.2 工具实现 | 第36-41页 |
4.2.1 可达性测试执行模块 | 第37-39页 |
4.2.2 拆分点分析模块 | 第39-40页 |
4.2.3 相关方法模块 | 第40页 |
4.2.4 控制器模块 | 第40-41页 |
4.3 工具执行 | 第41-43页 |
第五章 实验分析 | 第43-52页 |
5.1 实验环境与实验对象 | 第43-44页 |
5.2 实验结果及分析 | 第44-50页 |
5.2.1 探测错误能力 | 第44-46页 |
5.2.2 方法内拆分点排序 | 第46-48页 |
5.2.3 相关方法识别 | 第48-49页 |
5.2.4 运行时间及同步序列数 | 第49-50页 |
5.3 相关工作介绍 | 第50-52页 |
第六章 总结与展望 | 第52-54页 |
6.1 本文工作总结 | 第52页 |
6.2 未来工作展望 | 第52-54页 |
致谢 | 第54-55页 |
参考文献 | 第55-58页 |
附录 | 第58-59页 |