计算机操作系统课程设计---银行家算法的设计与实现
-
资源ID:1450873
资源大小:270.50KB
全文页数:24页
- 资源格式: DOC
下载积分:100金币
快捷下载

账号登录下载
三方登录下载:
友情提示
2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
|
计算机操作系统课程设计---银行家算法的设计与实现
1、 操作系统课程操作系统课程设计设计报告报告 题目题目:银行家算法银行家算法的的设计设计与实现与实现 院院 (系) :(系) : 计算机科学与工程学院计算机科学与工程学院 专专 业:业: 信息对抗专业信息对抗专业 班班 级:级: 090608 班班 学学 生:生: 学学 号:号: 指导教师:指导教师: 2011 年 12 月 1 基于计算机基于计算机操作系统银行家算法实现操作系统银行家算法实现 摘要摘要 此次课程设计的主要内容是模拟实现资源分配。 同时要求编写和调试一个系 统动态分配资源的简单模拟程序,观察死锁产生的条件,并使用适当的算法,有 效的防止和避免死锁的发生 具体用银行家算法实现资源分
2、配。要求如下: (1) 设计一个 3 个并发进程共享 3 类不同资源的系统, 进程可动态地申请资源 和释放资源,系统按各进程的申请动态地分配资源。 (2) 设计用银行家算法和随机分配算法,实现资源分配的两个资源分配程序, 应具有显示或打印各进程依次要求申请的资源数以及依次分配资源的情况。 (3) 确定一组各进程依次申请资源数的序列, 在相同的情况下分别运行上述两 种资源分配程序,观察运行结果。 银行家算法是避免死锁的一种重要方法, 本实验要求用高级语言编写和调试一 个简单的银行家算法程序。加深了解有关资源申请、避免死锁等概念,并体会和 了解死锁和避免死锁的具体实施方法。死锁的产生,必须同时满足
3、四个条件,即 一个资源每次只能由一个进程占用:第二个为等待条件,即一个进程请求资源不 能满足时,它必须等待,但它仍继续保持已得到的所有其他资源:第四个为循环 等待条件,系统中存在若干个循环等待的进程,即其中每一个进程分别等待它前 一个进程所持有的资源。防止死锁的机构只能确保上述四个条件之一不出现,则 系统就不会发生死锁。 通过这个算法可用解决生活中的实际问题,如银行贷款等. 通过对这个算法的设计,让学生能够对书本知识有更深的理解,在操作和其它 方面有更高的提升. 关键词:关键词:死锁 ;安全状态 ;安全序列 ;银行家算法 ;安全性检查 2 目录目录 1 1 概述概述(3) 1.1 设计目的(3
4、) 1.2 开发环境(3) 2 2 需求分析需求分析(4) 2.1 死锁概念(4) 2.2 死锁的结论(4) 2.3 资源分类(4) 2.4 产生死锁的必要条件(4) 2.5 死锁的解决方案(4) 2.5.1 产生死锁的例子(4) 2.5.2 死锁预防(5) 2.5.3 安全状态与不安全状态(5) 3 3 数据结构分析数据结构分析设计设计.(6) 3.1 可利用资源向量矩阵 available (6) 3.2 最大需求矩阵 max (6) 3.3 分配矩阵 allocation .(6) 3.4 需求矩阵 need .(6) 4 4 算法的实现算法的实现(7) 4.1 初始化(7) 4.2 银行家算法(7) 4.3 安全性检查算法(7) 4.4 各算法流程图(8) 5 5 测试与测试与实例实例分析分析(10) 6 6 心得体会心得体会.(14) 3 7.7.参考文献与源程序清单参考文献与源程序清单( (附录附录) ).(15) 4