91av视频/亚洲h视频/操亚洲美女/外国一级黄色毛片 - 国产三级三级三级三级

資源簡介

操作系統(tǒng) 課程設(shè)計(jì)任務(wù)書 銀行家算法 1)了解多道程序系統(tǒng)中,多個(gè)進(jìn)程并發(fā)執(zhí)行的資源分配。 2)掌握銀行家算法,了解資源在進(jìn)程并發(fā)執(zhí)行中的資源分配情況。 3)掌握預(yù)防死鎖的方法,系統(tǒng)安全狀態(tài)的基本概念。 設(shè)計(jì)一個(gè)n個(gè)并發(fā)進(jìn)程共享m個(gè)系統(tǒng)資源的程序以實(shí)現(xiàn)銀行家算法。要求: 1) 簡單的選擇界面; 2) 能顯示當(dāng)前系統(tǒng)資源的占用和剩余情況。 3) 為進(jìn)程分配資源,如果進(jìn)程要求的資源大于系統(tǒng)剩余的資源,不與分配并且提示分配不成功; 4) 撤銷作業(yè),釋放資源。 編寫和調(diào)試一個(gè)系統(tǒng)動(dòng)態(tài)分配資源的簡單模擬程序,觀察死鎖產(chǎn)生的條件,并采用適當(dāng)?shù)乃惴ǎ行У胤乐购捅苊馑梨i的發(fā)生。

資源截圖

代碼片段和文件信息

#include?
#include?

int??m=3;//m個(gè)系統(tǒng)資源
int??n=0;//n個(gè)并發(fā)進(jìn)程
int?Max[20][20];//={{753}{322}{902}{222}{433}};????????????//最大需求矩陣???
int?Available[20];//={1032};????????????????????????????????????????????//可利用資源向量?
int?Allocation[20][20];//={{010}{200}{302}{211}{002}};?????//分配矩陣
int?Need[20][20];//={{743}{122}{600}{011}{431}};???????????//需求矩陣
int?Request[20];??
int?queue[20];????//進(jìn)程Pi的請求向量

//*******************************************************************************
int?output()??//顯示各個(gè)矩陣資源分配情況
{
?int?klt;t=65;
?printf(“\n**********************************************************\n“);

???printf(“ ???MAX?“);
???for(l=0;l???printf(“Allocation?“);
???for(l=0;l????printf(“Need?“);
???for(l=0;l??printf(“Available?“);
???for(l=0;l???printf(“\n“);
???
?//printf(“????????A???B???C????A???B???C????A???B???C????A???B???C??“);
?printf(“????????“);
?for(l=0;l<4;l++)
?{for(k=0;k????printf(“%c???“65+k);
????printf(“??“);}
?for(k=0;k?{
??printf(“\nP%d??????“k);
??for(l=0;l????printf(“%d???“Max[k][l]);printf(“??“);
??for(l=0;l????printf(“%d???“Allocation[k][l]);printf(“??“);
??for(l=0;l??printf(“%d???“Need[k][l]);printf(“??“);
??if(k==0)?{
??for(l=0;l??printf(“%d???“Available[l]);
??}
?}
?return?1;
}
//*****************************************************************************
int?input()??//資源分配情況的錄入。
{
?int?ij;int?t=65;
?????//printf(“\n請輸入系統(tǒng)的未分配資源數(shù):“);
?//?scanf(“%d%d%d“AvailableAvailable+1Available+2);
?//for(i=0;i<5;i++)
?????printf(“\n????????????????資源名稱:“);
?for(i=0;i ?printf(“\n請輸入p%d的最大需求資源數(shù):“n);
?for(i=0;i ??
?printf(“\n????????????????資源名稱:“);
?for(i=0;i ?printf(“\n請輸入p%d的已分配的資源數(shù):“n);
?for(i=0;i ?//for(i=0;i ??for(j=0;j ?
??Need[n][j]=Max[n][j]-Allocation[n][j];
?????for(i=0;i ?{
?????Available[i]-=Allocation[n][i];
?}
??
????n++;
?return?1;
}
//*****************************************************************************
int?safe(){//安全性檢查?返回1?表示安全?有安全隊(duì)列?queue?返回0表示不安全
int?doneapply=0;int?t;
????int?ij;int?work[20];
int?finish[20]={0};
????for(j=0;j ?while(apply {
??t=0;
for(i=0;i {
?done=0;
?if(finish[i]!=false)?{continue;}
???for(j=0;j ???{?
???if(Need[i][j]?>work[j])?{done=1;?break;?}
???}?
?if(done==0)
?{
?for(j=0;j ???finish[i]=true;
???queue[apply]=i;apply++;t=1;
?}
}
if(t==0)??return?false;
}??
??return?1;
}

//***************************************************************
int?dijkstra(in

?屬性????????????大小?????日期????時(shí)間???名稱
-----------?---------??----------?-----??----

?????文件?????839168??2013-06-29?15:40??操作系統(tǒng)課程設(shè)計(jì)\操作系統(tǒng)-課程設(shè)計(jì)報(bào)告.doc

?????文件???????6313??2013-01-14?22:00??操作系統(tǒng)課程設(shè)計(jì)\源代碼及運(yùn)行程序\dijkstra.cpp

?????文件?????200781??2013-01-14?22:00??操作系統(tǒng)課程設(shè)計(jì)\源代碼及運(yùn)行程序\dijkstra.exe

?????目錄??????????0??2013-06-29?15:40??操作系統(tǒng)課程設(shè)計(jì)\源代碼及運(yùn)行程序

?????目錄??????????0??2013-06-29?15:41??操作系統(tǒng)課程設(shè)計(jì)

-----------?---------??----------?-----??----

??????????????1046262????????????????????5


評論

共有 條評論

相關(guān)資源