基于未来锁集的死锁规避技术研究
摘要 | 第4-5页 |
Abstract | 第5-6页 |
第1章 绪论 | 第9-15页 |
1.1 死锁规避的研究目的与意义 | 第9-10页 |
1.2 死锁规避的国内外研究现状 | 第10-13页 |
1.2.1 死锁规避的国外研究现状 | 第11-12页 |
1.2.2 死锁规避的国内研究现状 | 第12-13页 |
1.2.3 死锁规避的国内外研究现状分析 | 第13页 |
1.3 论文的主要研究内容及章节安排 | 第13-15页 |
第2章 Clang及死锁产生的原因分析 | 第15-24页 |
2.1 Clang介绍 | 第15-16页 |
2.2 抽象语法树 | 第16-17页 |
2.3 控制流图 | 第17-19页 |
2.4 死锁的产生原因及类型 | 第19-23页 |
2.4.1 死锁的产生原因 | 第19-20页 |
2.4.2 死锁的分类 | 第20-23页 |
2.5 本章小结 | 第23-24页 |
第3章 面向死锁规避的程序插装 | 第24-34页 |
3.1 路径敏感分析 | 第24-27页 |
3.2 顺序结构的插装 | 第27-29页 |
3.3 分支结构的插装 | 第29-32页 |
3.4 循环结构的插装 | 第32-33页 |
3.5 本章小结 | 第33-34页 |
第4章 结合动态分析和静态分析的死锁规避方法 | 第34-44页 |
4.1 方法基本框架 | 第34-41页 |
4.1.1 LD_PRELOAD介绍 | 第35-36页 |
4.1.2 计算未来锁集 | 第36-39页 |
4.1.3 建立全局锁分配图 | 第39页 |
4.1.4 原子执行 | 第39-41页 |
4.2 对于读写锁规避逻辑的处理算法 | 第41-42页 |
4.3 对于自锁规避逻辑的处理算法 | 第42-43页 |
4.4 本章小结 | 第43-44页 |
第5章 死锁规避原型系统Flider的实现与测试 | 第44-62页 |
5.1 实验环境 | 第44页 |
5.2 Flider的设计与实现 | 第44-47页 |
5.2.1 系统总体设计 | 第44-45页 |
5.2.2 系统模块的设计与实现 | 第45-47页 |
5.3 Flider的测试 | 第47-52页 |
5.3.1 测试方案 | 第47页 |
5.3.2 Flider的功能测试 | 第47-52页 |
5.4 死锁规避的实验结果与分析 | 第52-61页 |
5.4.1 实验数据 | 第52-53页 |
5.4.2 实验方法及评价指标 | 第53-54页 |
5.4.3 Flider的死锁规避能力分析 | 第54-55页 |
5.4.4 Flider的死锁规避效率分析 | 第55-58页 |
5.4.5 Flider的可扩展性分析 | 第58-61页 |
5.5 本章小结 | 第61-62页 |
结论 | 第62-63页 |
参考文献 | 第63-67页 |
攻读硕士学位期间发表的论文及其它成果 | 第67-69页 |
致谢 | 第69页 |