操作系统课程设计-模拟银行家算法-课程设计

上传人:第*** 文档编号:35540885 上传时间:2018-03-17 格式:DOC 页数:4 大小:23.77KB
返回 下载 相关 举报
操作系统课程设计-模拟银行家算法-课程设计_第1页
第1页 / 共4页
操作系统课程设计-模拟银行家算法-课程设计_第2页
第2页 / 共4页
操作系统课程设计-模拟银行家算法-课程设计_第3页
第3页 / 共4页
操作系统课程设计-模拟银行家算法-课程设计_第4页
第4页 / 共4页
亲,该文档总共4页,全部预览完了,如果喜欢就下载吧!
资源描述

《操作系统课程设计-模拟银行家算法-课程设计》由会员分享,可在线阅读,更多相关《操作系统课程设计-模拟银行家算法-课程设计(4页珍藏版)》请在金锄头文库上搜索。

1、操作系统课程设计操作系统课程设计- -模拟银行家算法模拟银行家算法- -课程设计课程设计操作系统课程设计-模拟银行家算法|课程设计|计算机数据库课程设计 模模拟银拟银行家算法,用行家算法,用银银行家算法行家算法实现资实现资源分配。源分配。 Output() 输出某时刻的资源分配情况; Bank() 银行家算法的步骤 1、2、3、及4调用安全性算法; Security() 进行安全性检查; Main() 各种数据结构的定义。假设 有0-4 五个进程(假假设设系系统统的当前状的当前状态态是安全的是安全的),三类资源 即:A、B、C(以下各种数据均取自课本97例子)T0 时刻的资源分配表(各种资源的

2、数量分别为:10、5、7)资源情况 进程Max A B CAllocation A B CNeed A B CAvailable A B CP07 5 30 1 07 4 33 3 2P13 2 22 0 01 2 2 P29 0 23 0 26 0 0 P32 2 22 1 10 1 1 P44 3 30 0 24 3 1 #include output(int arr53) int i,j;printf(“ A B Cn“);for(i=0;i5;i+)printf(“P%d“,i);for(j=0;j3;j+) printf(“ %d“,arrij); printf(“n“); int

3、Security(int avialable3,int need53,int allocation53) int j,i;int work3;int finish5=0,0,0,0,0;for(j=0;j3;j+)workj=avialablej;for(i=0;i5;i+)if(finishi=0)for(j=0;j3;j+)if(needij=workifinishj=1;for(i=0;i5;i+)if(finishi=0)return 0;else return 1; */ Bank(int i,int request3,int need53,int avialable3,int al

4、location53) int int j;printf(“The process id: %dn“,i);printf(“The Process Request:“);for(j=0;j3;j+)printf(“ %d“,requestj);printf(“n“);if(request0=needi0j3;j+)avialablej=avialablej-requestj;allocationij=allocationij+requestj;needij=needij-requestj;printf(“The source after request:n“);printf(“ Allocat

5、ionn“);output(allocation);printf(“ Needn“);output(need);printf(“The Avialable after request:“);for(j=0;j3;j+)printf(“ %d“,avialablej);printf(“n“);else printf(“RequestError!“);else printf(“RequestError!“);/*Security(avialable,need,allocation);*/ main() int id,i;int Avialable3=3,3,2;int Max53=7,5,3,3,

6、2,2,9,0,2,2,2,2,4,3,3;int Allocation53=0,1,0,2,0,0,3,0,2,2,1,1,0,0,2;int Need53=7,4,3,1,2,2,6,0,0,0,1,1,4,3,1;int Request3; /*i Id of Process*/printf(“The source before request:n“);printf(“ MAXn“);output(Max);printf(“ Allocationn“);output(Allocation);printf(“ Needn“);output(Need);printf(“The Avialable before request:“); for(i=0;i3;i+)printf(“ %d“,Avialablei);printf(“n“);printf(“Input the id and request of Process:“);scanf(“%d %d %d %d“,Bank(id,Request,Need,Avialable,Allocation);

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 建筑/环境 > 工程造价

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号