版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、模擬死鎖檢測(cè)算法1輸入:“資源分配表”文件,每一行包含資源編號(hào)、進(jìn)程編號(hào)兩項(xiàng)(均用整數(shù)表示,并用空格分隔開),記錄資源分配給了哪個(gè)進(jìn)程?!斑M(jìn)程等待表”文件,每一行包含進(jìn)程編號(hào)、資源編號(hào)兩項(xiàng)(均用整數(shù)表示,并用空格分隔開),記錄進(jìn)程正在等待哪個(gè)資源。下面是一個(gè)示例:資源分配表:123進(jìn)程等待表:2312處理要求:程序運(yùn)行時(shí),首先提示“請(qǐng)輸入資源分配表文件的文件名:”;再提示“請(qǐng)輸入進(jìn)程等待表文件的文件名:”。輸入兩個(gè)文件名后,程序?qū)⒆x入兩個(gè)文件中的有關(guān)數(shù)據(jù),并按照死鎖檢測(cè)算法進(jìn)行檢測(cè)。3輸出要求:第一行輸出檢測(cè)結(jié)果:有死鎖或無(wú)死鎖。第二行輸出進(jìn)程循環(huán)等待隊(duì)列,即進(jìn)程編號(hào)(如果有死鎖)。4文件名約
2、定提交的源程序名字:resourceXXX.c或者resourceXXX.cpp(依據(jù)所用語(yǔ)言確定)輸入文件名字:可由用戶指定結(jié)果輸出到resultXXX.txt中其中:XXX為賬號(hào)。5死鎖檢測(cè)算法:當(dāng)任一進(jìn)程Pj申請(qǐng)一個(gè)已被其他進(jìn)程占用的資源ri時(shí),進(jìn)行死鎖檢測(cè)。檢測(cè)算法通過(guò)反復(fù)查找進(jìn)程等待表和資源分配表,來(lái)確定進(jìn)程Pj對(duì)資源ri的請(qǐng)求是否導(dǎo)致形成環(huán)路,若是,便確定出現(xiàn)死鎖。6測(cè)試說(shuō)明:測(cè)試教師將事先準(zhǔn)備好一組文件(格式為*.txt),從中為每個(gè)程序隨機(jī)指定一至三個(gè)作為輸入文件(被測(cè)試者需從鍵盤輸入指定文件的文件名),并查看程序輸出結(jié)果。本程序包括:死鎖檢測(cè)算法VC+調(diào)試通過(guò)(C)copyr
3、ightbyNeo歡迎大家測(cè)試請(qǐng)問(wèn)題請(qǐng)Email:sony006163*/#include#include#includeconstintMAXQUEUE=100;/定義表的最大行數(shù)typedefstructnodeintresource;intprocess;cell;celloccupyMAXQUEUE;intoccupy_quantity;cellwaitMAXQUEUE;intwait_quantity;初始化函數(shù)voidinitial()inti;for(i=0;iMAXQUEUE;i+)cess=-1;occupyi.resource=-1;
4、cess=-1;waiti.resource=-1;occupy_quantity=0;wait_quantity=0;讀數(shù)據(jù)文件intreadData()FILE*fp;charfname20;inti;cout請(qǐng)輸入資源分配表文件的文件名:fname;if(fp=fopen(fname,r)=NULL)cout錯(cuò)誤,文件打不開,請(qǐng)檢查文件名:)endl;return0;elsewhile(!feof(fp)fscanf(fp,%d%d,&occupyoccupy_quantity.resource,&occupyoccupy_cess);occupy_quantit
5、y+;cout請(qǐng)輸入進(jìn)程等待表文件的文件名:fname;if(fp=fopen(fname,r)=NULL)cout錯(cuò)誤,文件打不開,請(qǐng)檢查文件名:)endl;return0;elsewhile(!feof(fp)fscanf(fp,%d%d,&waitwait_cess,&waitwait_quantity.resource);wait_quantity+;輸出所讀入的數(shù)據(jù)coutendlendl輸出所讀入的數(shù)據(jù)endl;coutendl;cout資源分配表endl;cout資源編號(hào)進(jìn)程編號(hào)endl;for(i=0;ioccupy_quantity;i+)coutoc
6、cessendl;coutendl;cout進(jìn)程等待表endl;cout進(jìn)程編號(hào)資源編號(hào)endl;for(i=0;iwait_quantity;i+)cessendl;return1;檢測(cè)voidcheck()inttableMAXQUEUEMAXQUEUE;inttable1MAXQUEUEMAXQUEUE;inti,j,k;intflag,t,p;intmax_process;初始化表格for(i=0;iMAXQUEUE;i+)for(j=0;jMAXQUEUE;j+)tableij=0
7、;table1ij=0;先找到進(jìn)程最大編號(hào)max_process=-1;for(i=0;imax_process)max_process=cess;for(i=0;imax_process)max_process=cess;for(i=0;iwait_quantity;i+)for(j=0;joccupy_quantity;j+)if(waiti.resource=occupyj.resource)cess=1;cess=1;cout初始
8、等待占用表:endl;for(i=0;imax_process+1;i+)for(j=0;jmax_process+1;j+)couttableij;coutendl;coutendl;for(i=0;imax_process+1;i+)for(j=0;jmax_process+1;j+)for(k=0;kmax_process+1;k+)tableij=tableij|(tableik&tablekj);cout檢測(cè)后的等待占用表:endl;for(i=0;imax_process+1;i+)for(j=0;jmax_process+1;j+)couttableij;coutendl;fla
9、g=-1;for(i=0;imax_process+1;i+)if(tableii=1)flag=i;break;coutendlendl檢測(cè)結(jié)果endl;coutendl;if(flag!=-1)cout存在死鎖endl;cout進(jìn)程循環(huán)等待隊(duì)列:;p=flag;/存在進(jìn)程循環(huán)等待隊(duì)列的那一進(jìn)程進(jìn)程循環(huán)等待隊(duì)列中的所有進(jìn)程是table表中的這一行是1的進(jìn)程,只是順序要再確定t=1;while(t)coutp;for(j=0;jmax_process+1;j+)if(table1pj=1)if(tablejflag=1)p=j;break;if(p=flag)t=0;coutflagendl;elsecout不存在死鎖endl;顯示信息函數(shù)voidversion()coutendlendl;coutendl;cout死鎖檢測(cè)算法endl;coutendl;cout(c)AllRightReservedN
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 2026年智能微網(wǎng)市場(chǎng)交易項(xiàng)目可行性研究報(bào)告
- 濟(jì)南市新能源利用
- 互聯(lián)網(wǎng)時(shí)代知識(shí)傳播對(duì)學(xué)習(xí)方式的影響
- 教師職稱評(píng)審委員會(huì)組織制度
- 幼兒院消防安全管理制度
- ps課程設(shè)計(jì)意義
- 2026浙江杭州余杭良渚實(shí)驗(yàn)室綜合管理崗位招聘1人筆試模擬試題及答案解析
- 2026年濱州陽(yáng)信縣事業(yè)單位公開招聘人員(30人)筆試備考試題及答案解析
- 2026廣東陽(yáng)江市陽(yáng)西縣招聘高中教師25人筆試模擬試題及答案解析
- 2026北海航海保障中心招聘事業(yè)單位24人筆試備考試題及答案解析
- 2025年初級(jí)(五級(jí))健康照護(hù)師(五級(jí))《理論知識(shí)》試卷真題(后附答案和解析)
- 杭州高一上期末數(shù)學(xué)試卷
- 2025年秋季學(xué)期國(guó)開電大本科《人文英語(yǔ)3》一平臺(tái)機(jī)考真題及答案(002套)
- 2025年黨建工作應(yīng)試題庫(kù)及答案
- 青年非遺傳承人對(duì)傳統(tǒng)技藝的創(chuàng)新與發(fā)展路徑
- 2025年陜西省中考英語(yǔ)試卷(含解析)
- 2025至2030中國(guó)海綿新材料行業(yè)市場(chǎng)發(fā)展現(xiàn)狀及商業(yè)模式與投資發(fā)展報(bào)告
- 藥劑科進(jìn)修工作匯報(bào)
- 2026屆新高考語(yǔ)文熱點(diǎn)復(fù)習(xí):思辨性作文審題立意和謀篇布局
- 機(jī)場(chǎng)圍界視頻監(jiān)控系統(tǒng)設(shè)計(jì)方案
- 《三級(jí)醫(yī)院評(píng)審標(biāo)準(zhǔn)(2025年版)》
評(píng)論
0/150
提交評(píng)論