没有合适的资源?快使用搜索试试~ 我知道了~
首页操作系统避免死锁的银行家算法课程设计
操作系统避免死锁的银行家算法课程设计

完整的一份银行家课程设计,提供关于银行家算法的整个思路设计,完整的思考过程,全部体现
资源详情
资源评论
资源推荐

贵州大学
电子科学与信息工程学院
<<操作系统>>课程设计报告
指导教师:王道书
辅导教师:唐作其
学号:_0415084211__
姓名:李 宏 _
班级:计 科 04151_
学期:2006
至 2007
学年1 学期
目录

1、 概述 1
2、 需求分析 2
3、 数据结构设计 5
4、 算法的实现 6
5、 结束语 17
6、 参考文献 18

1、概述
一、设计目的
1、了解多道程序系统中,多个进程并发执行的资源分配。
2、掌握死锁的产生的原因、产生死锁的必要条件和处理死锁的基本方法。
3、掌握预防死锁的方法,系统安全状态的基本概念。
4、掌握银行家算法,了解资源在进程并发执行中的资源分配策略。
5、理解死锁避免在当前计算机系统不常使用的原因
二、开发环境
操作系统 编译环境 生成文件
RedFlag 5.0 g++ Bank for Linux
Windows Vista Business Borland C++ Compiler 5.5 Bank For Windows.exe
源文件:Bank.cpp

2、需求分析
避免多道程序系统中程序的死锁。
一、死锁概念:
在多道程序系统中,虽可借助于多个进程的并发执行,来改善系
统的资源利用率,提高系统的吞吐量,但可能发生一种危险━━死锁。
所谓死锁(Deadlock),是指多个进程在运行中因争夺资源而造成的一种
僵局(Deadly_Embrace),当进程处于这种僵持状态时,若无外力作用,
它们都将无法再向前推进。一组进程中,每个进程都无限等待被该组
进程中另一进程所占有的资源,因而永远无法得到的资源,这种现象
称为进程死锁,这一组进程就称为死锁进程。
二、关于死锁的一些结论:
Ø参与死锁的进程最少是两个(两个以上进程才会出现死锁)
Ø参与死锁的进程至少有两个已经占有资源
Ø参与死锁的所有进程都在等待资源
Ø参与死锁的进程是当前系统中所有进程的子集
注:如果死锁发生,会浪费大量系统资源,甚至导致系统崩溃。
三、资源分类:
永久性资源:

可以被多个进程多次使用(可再用资源)
l可抢占资源
l不可抢占资源
临时性资源:只可使用一次的资源;如信号量,中断信号,同步信号等(可
消耗性资源)
“申请--分配--使用--释放”模式
四、产生死锁的四个必要条件:
1、互斥使用(资源独占)
一个资源每次只能给一个进程使用
2、不可强占(不可剥夺)
资源申请者不能强行的从资源占有者手中夺取资源,资源只能由占有者自愿
释放
3、请求和保持(部分分配,占有申请)
一个进程在申请新的资源的同时保持对原有资源的占有(只有这样才是动
态申请,动态分配)
4、循环等待
存在一个进程等待队列
{P1,P2,…,Pn},
其中 P1 等待 P2 占有的资源,P2 等待 P3 占有的资源,…,Pn 等待 P1 占有的
资源,形成一个进程等待环路
5、死锁的解决方案
5.1产生死锁的例子
申请不同类型资源产生死锁
P1:
剩余22页未读,继续阅读


















nnlove1314
- 粉丝: 0
- 资源: 7
上传资源 快速赚钱
我的内容管理 收起
我的资源 快来上传第一个资源
我的收益
登录查看自己的收益我的积分 登录查看自己的积分
我的C币 登录后查看C币余额
我的收藏
我的下载
下载帮助

会员权益专享
最新资源
- Xilinx SRIO详解.pptx
- Informatica PowerCenter 10.2 for Centos7.6安装配置说明.pdf
- 现代无线系统射频电路实用设计卷II 英文版.pdf
- 电子产品可靠性设计 自己讲课用的PPT,包括设计方案的可靠性选择,元器件的选择与使用,降额设计,热设计,余度设计,参数优化设计 和 失效分析等
- MPC5744P-DEV-KIT-REVE-QSG.pdf
- 通信原理课程设计报告(ASK FSK PSK Matlab仿真--数字调制技术的仿真实现及性能研究)
- ORIGIN7.0使用说明
- 在VMware Player 3.1.3下安装Redhat Linux详尽步骤
- python学生信息管理系统实现代码
- 西门子MES手册 13 OpcenterEXCR_PortalStudio1_81RB1.pdf
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈



安全验证
文档复制为VIP权益,开通VIP直接复制

评论8