欢迎来到天天文库
浏览记录
ID:41070778
大小:45.50 KB
页数:8页
时间:2019-08-15
《操作系统实验报告--银行家算法》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库。
1、操作系统实验报告二一:实验标题:实现死锁避免算法:银行家算法。二:实验环境:操作系统:windows7编译器:VisualStudio2010三:设计方案:1.实验目的通过程序模拟银行家算法,理解如何应用银行家算法避免死锁。2.实验手段直接在C源程序定义整形进程数量、资源种类;用2维数组表示最大需求、已分配的资源。从文件获取相关数量。3.验证方式检验当前资源是否有安全序列,是的话输出安全序列。四:实验代码:#include#include#defineP_num5#defineR_num3intAllocation[
2、P_num][R_num],Avaliable[R_num],Max[P_num][R_num];intNeed[P_num][R_num];intcompare(int*a,int*b,intn){inti;for(i=0;i3、ssign(int*a,int*b,intn){inti;for(i=0;i4、fp,"%d",&Max[i][j]);}for(j=0;j5、i++)finish[i]=0;n=P_num;while(n--){for(i=0;i=P_num)return1;}return0;}intrequest(intpid,int*r,intn){inti;intsp[P_num];if(compare(Need[pid],r,n)==1&&co6、mpare(Avaliable,r,n)==1){substract(Avaliable,r,n);add(Allocation[pid],r,n);substract(Need[pid],r,n);if(issafe(sp)){printf("SecurityPath:t");for(i=0;i7、;printf("noSecurityParhonthisrequest");return0;}}else{printf("noSecurityParhonthisrequest");return0;}}voidmain(){intid,i;intr[R_num],sp[P_num];input();if(issafe(sp)){printf("SecurityPath:t");for(i=0;i8、ntf("inputthenewrequest'sid:");scanf("%d
3、ssign(int*a,int*b,intn){inti;for(i=0;i4、fp,"%d",&Max[i][j]);}for(j=0;j5、i++)finish[i]=0;n=P_num;while(n--){for(i=0;i=P_num)return1;}return0;}intrequest(intpid,int*r,intn){inti;intsp[P_num];if(compare(Need[pid],r,n)==1&&co6、mpare(Avaliable,r,n)==1){substract(Avaliable,r,n);add(Allocation[pid],r,n);substract(Need[pid],r,n);if(issafe(sp)){printf("SecurityPath:t");for(i=0;i7、;printf("noSecurityParhonthisrequest");return0;}}else{printf("noSecurityParhonthisrequest");return0;}}voidmain(){intid,i;intr[R_num],sp[P_num];input();if(issafe(sp)){printf("SecurityPath:t");for(i=0;i8、ntf("inputthenewrequest'sid:");scanf("%d
4、fp,"%d",&Max[i][j]);}for(j=0;j5、i++)finish[i]=0;n=P_num;while(n--){for(i=0;i=P_num)return1;}return0;}intrequest(intpid,int*r,intn){inti;intsp[P_num];if(compare(Need[pid],r,n)==1&&co6、mpare(Avaliable,r,n)==1){substract(Avaliable,r,n);add(Allocation[pid],r,n);substract(Need[pid],r,n);if(issafe(sp)){printf("SecurityPath:t");for(i=0;i7、;printf("noSecurityParhonthisrequest");return0;}}else{printf("noSecurityParhonthisrequest");return0;}}voidmain(){intid,i;intr[R_num],sp[P_num];input();if(issafe(sp)){printf("SecurityPath:t");for(i=0;i8、ntf("inputthenewrequest'sid:");scanf("%d
5、i++)finish[i]=0;n=P_num;while(n--){for(i=0;i=P_num)return1;}return0;}intrequest(intpid,int*r,intn){inti;intsp[P_num];if(compare(Need[pid],r,n)==1&&co
6、mpare(Avaliable,r,n)==1){substract(Avaliable,r,n);add(Allocation[pid],r,n);substract(Need[pid],r,n);if(issafe(sp)){printf("SecurityPath:t");for(i=0;i7、;printf("noSecurityParhonthisrequest");return0;}}else{printf("noSecurityParhonthisrequest");return0;}}voidmain(){intid,i;intr[R_num],sp[P_num];input();if(issafe(sp)){printf("SecurityPath:t");for(i=0;i8、ntf("inputthenewrequest'sid:");scanf("%d
7、;printf("noSecurityParhonthisrequest");return0;}}else{printf("noSecurityParhonthisrequest");return0;}}voidmain(){intid,i;intr[R_num],sp[P_num];input();if(issafe(sp)){printf("SecurityPath:t");for(i=0;i8、ntf("inputthenewrequest'sid:");scanf("%d
8、ntf("inputthenewrequest'sid:");scanf("%d
此文档下载收益归作者所有