针对分布式系统的高效死锁检测算法研究
致谢 | 第5-6页 |
摘要 | 第6-7页 |
ABSTRACT | 第7-8页 |
1 绪论 | 第12-18页 |
1.1 研究背景与意义 | 第12-14页 |
1.1.1 研究背景 | 第12-13页 |
1.1.2 研究意义 | 第13-14页 |
1.2 研究现状 | 第14-15页 |
1.3 本文研究工作和结构 | 第15-17页 |
1.4 本章小结 | 第17-18页 |
2 相关原理及关键技术 | 第18-32页 |
2.1 分布式系统的概念 | 第18-19页 |
2.2 死锁的概念 | 第19-26页 |
2.2.1 死锁产生的条件 | 第19-21页 |
2.2.2 死锁的模型 | 第21-23页 |
2.2.3 处理死锁的方法 | 第23-26页 |
2.3 分布式死锁问题 | 第26-27页 |
2.3.1 分布式死锁的模型 | 第26-27页 |
2.3.2 等待图(WFG)的概念 | 第27页 |
2.4 图论中的相关概念 | 第27-29页 |
2.4.1 前驱和后继 | 第27-28页 |
2.4.2 入度和出度 | 第28页 |
2.4.3 生成树 | 第28-29页 |
2.4.4 树的直径 | 第29页 |
2.5 死锁检测算法的分类 | 第29-30页 |
2.5.1 集中式的死锁检测算法 | 第29-30页 |
2.5.2 分布式的死锁检测算法 | 第30页 |
2.5.3 分层式的死锁检测算法 | 第30页 |
2.6 本章小结 | 第30-32页 |
3 基于探针消息的死锁检测算法 | 第32-48页 |
3.1 算法设计 | 第32-36页 |
3.1.1 系统模型 | 第32-34页 |
3.1.2 死锁的判断 | 第34-35页 |
3.1.3 正确性标准 | 第35页 |
3.1.4 不同算法实例的区分 | 第35-36页 |
3.1.5 虚假边 | 第36页 |
3.2 算法的实现 | 第36-44页 |
3.2.1 算法简介 | 第36-37页 |
3.2.2 单个发起节点时算法的形式化描述 | 第37-42页 |
3.2.3 多个发起节点的算法 | 第42-44页 |
3.3 算法执行过程示例 | 第44-46页 |
3.4 本章小结 | 第46-48页 |
4 算法的分析 | 第48-68页 |
4.1 算法的正确性分析 | 第48-50页 |
4.1.1 单个发起节点 | 第48-50页 |
4.1.2 多个发起节点 | 第50页 |
4.2 算法的性能分析 | 第50-65页 |
4.2.1 理论分析 | 第50-54页 |
4.2.2 实验分析 | 第54-65页 |
4.3 本章小结 | 第65-68页 |
5 死锁检测算法在MPI上的实现 | 第68-76页 |
5.1 原理概述 | 第68页 |
5.2 详细实现 | 第68-75页 |
5.2.1 MPI例程的wrap | 第68-72页 |
5.2.2 对死锁检测程序执行的触发 | 第72-73页 |
5.2.3 程序整体执行流程 | 第73-74页 |
5.2.4 测试MPI执行结果 | 第74-75页 |
5.3 本章小结 | 第75-76页 |
6 总结与展望 | 第76-78页 |
6.1 论文总结 | 第76页 |
6.2 工作展望 | 第76-78页 |
参考文献 | 第78-82页 |
作者简历及攻读硕士学位期间取得的研究成果 | 第82-86页 |
学位论文数据集 | 第86页 |