银行家算法的实现课程设计报告

银行家算法的实现课程设计报告

ID:25152329

大小:70.00 KB

页数:9页

时间:2018-11-18

银行家算法的实现课程设计报告_第1页
银行家算法的实现课程设计报告_第2页
银行家算法的实现课程设计报告_第3页
银行家算法的实现课程设计报告_第4页
银行家算法的实现课程设计报告_第5页
资源描述:

《银行家算法的实现课程设计报告》由会员上传分享,免费在线阅读,更多相关内容在应用文档-天天文库

1、《操作系统》课程设计报告设计题目:银行家算法的实现姓名:梅济民学号:2012015014同组人姓名:赵宇昊学号:2012012962班级:2012级信息与计算科学完成日期:2015年11月12日设计题目银行家算法的实现设计形式自由结组完成(2人一组)设计目的1、了解死锁避免的原理。2、研究银行家算法的实现方法。设计预备知识一、死锁概念二、死锁的避免三、银行家算法会用C语言编程实现这个过程设计内容编程实现银行家算法,语言不限。自行设置资源向量的元素个数及初始值。由用户通过输入界面提出某进程对各类资源的请求向量,由程序判断是否能为

2、用户请求分配资源,并显示结果。小组成员分工梅济民:编程,写报告赵宇昊:查找资料银行家算法分析、设计与实现一、理论描述银行家算法要求每个进程的最大资源需求,其基本思想是:始终保持系统处于安全状态,当设计进程提出资源请求时,系统先进行预分配,再判断系统分配后是否仍然处于安全状态。如果仍然处于安全状态,就进行实际分配;如果处于不安全状态,则拒绝该进程的资源请求。二、算法描述及数据结构模型#defineFalse0#defineTrue1intMax[100][100]={0};//各进程所需各类资源的最大需求intAvaliable

3、[100]={0};//系统可用资源charname[100]={0};//资源的名称intAllocation[100][100]={0};//系统已分配资源intNeed[100][100]={0};//还需要资源intRequest[100]={0};//请求资源向量inttemp[100]={0};//存放安全序列intWork[100]={0};//存放系统可提供资源intM=100;//作业的最大数为100intN=100;//资源的最大数为10三、源代码voidshowdata()//显示资源矩阵{inti,j;

4、printf("系统目前可用的资源[Avaliable]:");for(i=0;i

5、n");for(i=0;i

6、ble[j]-Request[j];Allocation[i][j]=Allocation[i][j]+Request[j];Need[i][j]=Need[i][j]-Request[j];}return1;}intsafe()//安全性算法{inti,k=0,m,apply,Finish[100]={0};intj;intflag=0;Work[0]=Avaliable[0];Work[1]=Avaliable[1];Work[2]=Avaliable[2];for(i=0;i

7、;j

8、n");//如果安全,输出成功printf("分配的序列:");for(i=0;i");}printf("");return0;}voidshare()//

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。