




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
1、實驗名稱: 銀行家算法 姓 名: 楊秀龍 學 號: 專業(yè)班級: 創(chuàng)新實驗班111 指導老師: 霍林 實驗題目銀行家算法實驗?zāi)康母顚拥牧私忏y行家算法是如何避免死鎖的設(shè)計思想銀行家算法是根據(jù)進程的請求,假設(shè)在已分配給該進程請求的資源后,進行安全性算法,如果都能滿足其他進程的請求,則滿足該進程的請求,否則掛起該進程的請求。假設(shè)在一個系統(tǒng)中,知道相應(yīng)的進程的狀態(tài)(最大需求、已占用的資源量、還需要的資源量和可利用的資源數(shù)),某個進程發(fā)出請求,在請求滿足兩大請求(小于還需要的資源并小于可利用資源數(shù))時,分配給該進程相應(yīng)的資源,再進行安全檢測,在確認安全的情況下,才把資源真正分配給該進程,否則終止請求!主
2、要數(shù)據(jù)結(jié)構(gòu)根據(jù)算法的相應(yīng)需求,需要定義int maxMM;int allocationMM;int needMM;int availableM;int workM;等數(shù)組開始結(jié)束輸入總進程數(shù)輸入資源數(shù)輸入Max矩陣輸入Allocation矩陣是否添加進程請求輸入進程號和請求資源否是流程圖運行結(jié)果圖(1)分配進程的相應(yīng)狀態(tài)圖(2)請求和請求完全部資源后釋放資源圖(3)繼續(xù)請求并釋放其他進程圖(2)所有進程請求完成后系統(tǒng)資源還原附錄原代碼如下:# include stdio.h # define M 50int maxMM;int allocationMM;int needMM;int avail
3、ableM; int i, j, n, m, anquan,x=0;/*7 5 3 0 1 0 7 4 3 3 3 2 3 2 2 2 0 0 1 2 2 9 0 2 3 0 2 6 0 0 2 2 2 2 1 1 0 1 1 4 3 3 0 0 2 4 3 1*/ main() void check(); int p,q,control; int reqM,allocation1MM,need1MM,available1M; printf(輸入進程總數(shù):); scanf(%d, &n); printf(輸入資源種類數(shù)量:); scanf(%d, &m); printf(輸入需求矩陣Max:n
4、); for(i=0;in; i+) for(j=0;jm; j+) scanf(%2d,&maxij); printf(輸入已分配矩陣Allocation:n); for(i=0;in; i+) for(j=0;jm; j+) scanf(%d, &allocationij); for (i=0;in; i+) for(j=0;jm; j+) needij=maxij-allocationij; printf(輸入資源的系統(tǒng)初始值:n); for (j=0;jm;j+) scanf(%d, &availablej); for (j=0;jm;j+)for(i=0;in;i+)availabl
5、ej=availablej-allocationij; check(); if (anquan=1) /如果已知的狀態(tài)安全則執(zhí)行以下代碼 for(control=0;control+) p=0,q=0; printf(輸入請求的進程號: ); scanf(%d, &i); printf(輸入該進程的請求資源數(shù)組:); for(j=0;jm; j+) scanf(%d,&reqj); for(j=0;jneedij) p=1; if(p) printf(請求資源大于該進程還需要的資源!n); else for(j=0;javailablej)/判斷請求是否大于可用資源 q=1; if(q) pr
6、intf(可用資源不能滿足請求!n); else for(j=0;jm; j+) /滿足兩大條件 available1j=availablej; /保持資源的當前 allocation1ij=allocationij; need1ij=needij; availablej=availablej-reqj; /嘗試把資源分配給進程 allocationij=allocationij+reqj; needij=needij-reqj; if(needij=0)x=x+1; /當進程滿足時釋放資源 if(x=m) for(j=0;jm;j+) availablej=availablej+alloca
7、tionij; allocationij=0; available1j=availablej; x-; else x=0; check(); if(anquan=0) for (j=0;jm; j+) availablej=available1j; /還原分配前的狀態(tài) allocationij=allocation1ij; needij=need1ij; printf(執(zhí)行該進程不安全!返回繼續(xù)操作。n); printf(是否繼續(xù)請求?n); void check() /安全性算法 int k, f, no=0; int workM,aM; char finishM; anquan=1; fo
8、r(i=0;in; i+) finishi=F; for(j=0;jm; j+) workj=availablej; k=n; do for (i=0;in; i+) if (finishi=F) f=1; for (j=0;jworkj) f=0; if (f=1) /找到還沒完成的且需求數(shù)小于可提供進程繼續(xù)運行的 finishi=T; ano+=i; /記錄安全序列號 for (j=0;j0); f=1; for (i=0;in; i+) /判斷有沒有進程沒完成 if (finishi=F) f=0; break; if (f=0) printf(不安全狀態(tài)!n); anquan=0; e
9、lse printf(處于安全狀態(tài).); printf(安全序列號:); for (i=0;in;i+) printf (%d ,ai); printf(n); printf(進程); printf( ); printf( Max ); printf( ); printf(allocation); printf( ); printf(need); printf( ); printf(available); printf(n); for (i=0;in; i+) printf(%2d,i); printf( ); for(j=0;jm; j+) printf(%2d,maxij); printf( ); for(j=0;jm
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
- 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 鞋類設(shè)計師(功能鞋方向)崗位面試問題及答案
- 2025屆廣東梅州第一中學高一下化學期末統(tǒng)考試題含解析
- 云南省文山馬關(guān)實驗高級中學2025屆高二化學第二學期期末質(zhì)量檢測試題含解析
- 甘肅省白銀市會寧縣2025屆高一化學第二學期期末達標檢測模擬試題含解析
- 揚州市揚州中學2025屆化學高二下期末考試試題含解析
- 安徽省黃山市屯溪區(qū)第二中學2025屆高二下化學期末調(diào)研試題含解析
- 根據(jù)旅游管理暫行辦法
- 供應(yīng)商標簽化管理辦法
- 遺產(chǎn)旅游中的記憶政治研究-洞察及研究
- 生物相容性傳感網(wǎng)絡(luò)-洞察及研究
- 2025年大學英語四級考試題及答案
- 財政國庫管理培訓課件
- 質(zhì)量管理基礎(chǔ)知識培訓課件
- 2025年電力系統(tǒng)與自動化專業(yè)考試試題及答案
- 多耐病人的隔離措施及護理
- 2025年食品安全法律法規(guī)的基礎(chǔ)考試試卷及答案
- 專題02 運動的描述-2025-2026學年人教版《物理》八年級上學期暑期預(yù)習自學講義
- 新生兒腹脹的觀察及護理
- 2025至2030年中國電動美容床行業(yè)市場運行格局及發(fā)展趨向研判報告
- 拉丁美洲和加勒比地區(qū)投資環(huán)境評價報告 2025
- (高清版)DB13∕T 5431-2021 裝配式塑料水表井工程技術(shù)規(guī)程
評論
0/150
提交評論