版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
1、<p><b> 數(shù)學(xué)與計(jì)算機(jī)學(xué)院</b></p><p><b> 課程設(shè)計(jì)說明書</b></p><p> 課 程 名 稱: 操作系統(tǒng)原理-課程設(shè)計(jì) </p><p> 課 程 代 碼: </p><p> 題 目:
2、 銀行家算法 </p><p> 年級/專業(yè)/班: 2009級軟件工程2班 </p><p> 學(xué) 生 姓 名: </p><p> 學(xué) 號: </p><p> 開 始 時(shí) 間: 2011
3、 年 12 月 05 日</p><p> 完 成 時(shí) 間: 2011 年 12 月 25 日</p><p><b> 課程設(shè)計(jì)成績:</b></p><p> 指導(dǎo)教師簽名: 年 月 日</p><p><b> 目 錄 </b&g
4、t;</p><p><b> 1 引 言1</b></p><p> 1.1 問題的提出1</p><p> 1.2任務(wù)與分析1</p><p><b> 2 需求分析1</b></p><p> 2.1數(shù)據(jù)的初始化1</p><p
5、> 2.2銀行家算法1</p><p> 2.3 系統(tǒng)安全性的檢測1</p><p><b> 2.4顯示功能1</b></p><p><b> 2.5恢復(fù)功能1</b></p><p><b> 2.6菜單功能2</b></p>&l
6、t;p> 3 程序運(yùn)行平臺2</p><p><b> 4 總體設(shè)計(jì)2</b></p><p><b> 5 詳細(xì)設(shè)計(jì)2</b></p><p> 5.1數(shù)據(jù)的錄入2</p><p> 5.2 顯示模塊4</p><p> 5.3 系統(tǒng)安全狀態(tài)檢測
7、5</p><p> 5.4 系統(tǒng)試為進(jìn)程分配資源7</p><p> 5.5 恢復(fù)函數(shù)8</p><p> 5.6 菜單選項(xiàng)8</p><p><b> 6 系統(tǒng)測試9</b></p><p><b> 7 結(jié)論13</b></p>&l
8、t;p><b> 參考文獻(xiàn)15</b></p><p><b> 摘 要 </b></p><p> 隨著計(jì)算機(jī)的普及計(jì)算機(jī)的日新月異,計(jì)算機(jī)可以說在飛速的發(fā)展著,計(jì)算機(jī)領(lǐng)域的相關(guān)技術(shù)也越來越高,許多的技術(shù)得到了較好的改進(jìn),使計(jì)算機(jī)越來越滿足人們的要求和生活習(xí)慣,這也是計(jì)算機(jī)得到飛速發(fā)展的原因之一,。隨著計(jì)算機(jī)的發(fā)展,人們對計(jì)算
9、機(jī)的需求也越來越高,為了防止用戶操作過于平凡,導(dǎo)致計(jì)算機(jī)同一時(shí)刻進(jìn)程過多而產(chǎn)生死鎖,所以本次任務(wù)主要是編寫銀行家算法避免計(jì)算機(jī)產(chǎn)生死鎖。經(jīng)過分析,本次主要是銀行家算法通用程序的編寫,以及測試所跟進(jìn)程狀態(tài)的安全性,經(jīng)查閱相關(guān)資料,了解了銀行家算法的大體思路,經(jīng)過設(shè)計(jì)流程圖,用java語言,利用neatbean 6.9實(shí)現(xiàn)了銀行家算法的通用程序,該程序具有輸入進(jìn)程資源以及計(jì)算機(jī)可利用資源的數(shù)量,即初始化。輸出資源進(jìn)程資源信息,檢測系統(tǒng)安全性
10、,進(jìn)程請求資源,系統(tǒng)試為進(jìn)程分配資源,不成功恢復(fù)資源等功能。因此銀行家算法的各種功能基本已經(jīng)實(shí)現(xiàn)。</p><p> 關(guān)鍵詞:銀行家算法通用程序;計(jì)算機(jī);避免死鎖的算法 </p><p><b> 1 引 言 </b></p><p> 1.1 問題的提出 </p><p> 在多道程序程序系統(tǒng)中,雖可借助于多
11、個(gè)進(jìn)程的并發(fā)執(zhí)行來改善系統(tǒng)資源利用率,提高系統(tǒng)的額吞吐量,但是可能會(huì)發(fā)生一種危險(xiǎn)—死鎖。所謂死鎖,是指多個(gè)進(jìn)程在運(yùn)行過程中因爭奪資源而造成的一種僵局,當(dāng)進(jìn)程處于這種僵持狀態(tài)時(shí),若無外力作用,他們將無法再向前推進(jìn)。為了避免這種情況的發(fā)生,本次利用課程設(shè)計(jì)之際,編寫了一個(gè)銀行家算法通用程序,避免死鎖在發(fā)生。</p><p><b> 1.2任務(wù)與分析 </b></p><p
12、> 本課題主要的目的是編寫銀行家算法通用程序,功能主要包括銀行家算法中數(shù)據(jù)結(jié)構(gòu)的初始化,銀行家算法的實(shí)現(xiàn),安全性檢測的算法實(shí)現(xiàn)等等。以及對給定的狀態(tài)進(jìn)行測試安全性等。</p><p><b> 2 需求分析</b></p><p><b> 2.1數(shù)據(jù)的初始化</b></p><p> 對銀行家算法中的數(shù)據(jù)結(jié)
13、構(gòu)進(jìn)行初始化,包括資源種類和進(jìn)程數(shù)目的輸入,可利用資源的初始化,進(jìn)程的最大需求矩陣,分配矩陣。 </p><p><b> 2.2銀行家算法</b></p><p> 對一個(gè)進(jìn)程請求的資源進(jìn)行判斷,看是否可以為其立即進(jìn)行資源的分配。若可以,試著分配,并且進(jìn)行安全性的檢測,若不安全,恢復(fù)原來的資源分配情況。</p><p> 2.3 系統(tǒng)安
14、全性的檢測</p><p> 能夠?qū)δ硶r(shí)刻的資源分配情況進(jìn)行檢測,判斷系統(tǒng)是否安全。</p><p><b> 2.4顯示功能</b></p><p> 顯示某時(shí)刻資源的分配狀態(tài)</p><p><b> 2.5恢復(fù)功能</b></p><p> 對進(jìn)程請求資源,已
15、獲得分配的,經(jīng)檢測不安全的狀態(tài)進(jìn)行恢復(fù)為請求前的狀態(tài)</p><p><b> 2.6菜單功能</b></p><p> 列出用戶能操作的選項(xiàng)</p><p><b> 3 程序運(yùn)行平臺</b></p><p> Neatbean IDE 6.9</p><p>
16、具體操作如下:文件->打開項(xiàng)目->運(yùn)行->運(yùn)行文件。 </p><p><b> 4 總體設(shè)計(jì) </b></p><p> 圖4.1 系統(tǒng)總體框架圖</p><p><b> 5 詳細(xì)設(shè)計(jì)</b></p><p><b> 5.1數(shù)據(jù)的錄入</b>&l
17、t;/p><p> 選擇數(shù)據(jù)錄入菜單后,系統(tǒng)將提示用戶輸入相關(guān)的數(shù)據(jù)。包括輸入資源種類,進(jìn)程數(shù)目,以及可利用資源數(shù)目。進(jìn)程最大需求矩陣,已分配矩陣。</p><p><b> 流程圖如圖6.1:</b></p><p><b> 關(guān)鍵代碼:</b></p><p> /*------------
18、----------------初始化函數(shù)------------------------------*/ </p><p> public void input(){</p><p> System.out.println("請輸入資源的種類n和進(jìn)程數(shù)m:");</p><p> n=sc.nextInt() ;</p&
19、gt;<p> m=sc.nextInt();</p><p> Available=new int[1][n];</p><p> Request=new int[1][n];</p><p> Allocation=new int[m][n];</p><p> Need=new int[m][m];</p&
20、gt;<p> Max=new int[m][n];</p><p> System.out.println("請輸入各類資源的數(shù)目:");</p><p> for(int i=0;i<n;i++)</p><p> Available[0][i]=sc.nextInt();</p><p>
21、 System.out.println("請輸入各進(jìn)程請求的各類資源的最大數(shù)目:");</p><p> for(int h=0;h<m;h++){</p><p> for(int j=0;j<n;j++){</p><p> Max[h][j]=sc.nextInt();</p><p><b
22、> }</b></p><p> // System.out.println();</p><p><b> }</b></p><p> System.out.println("請輸入各進(jìn)程請求的各類資源已經(jīng)分配數(shù)目:");</p><p> for(int h=0;h&
23、lt;m;h++){</p><p> for(int j=0;j<n;j++){</p><p> Allocation[h][j]=sc.nextInt();</p><p><b> }</b></p><p> // System.out.println();</p><p>
24、;<b> }</b></p><p> for(int k=0;k<m;k++)</p><p> for(int e=0;e<n;e++){</p><p> Need[k][e]=Max[k][e]-Allocation[k][e];</p><p><b> } </b>
25、;</p><p><b> }</b></p><p> /*-------------------------初始化函數(shù)結(jié)束------------------------------*/</p><p><b> 5.2 顯示模塊</b></p><p> 將進(jìn)程的資源分配情況顯示出來
26、</p><p><b> 流程圖:</b></p><p><b> 關(guān)鍵代碼:</b></p><p> /*-------------顯示函數(shù)----------------------------------*/</p><p> public void display(){<
27、/p><p><b> int i,j;</b></p><p> System.out.println("正在更新數(shù)據(jù)...");</p><p> System.out.println("|-----|-----|-------|--------|---------|-------|");</
28、p><p> System.out.println("|-----| 資源| Max | Allocation | Need | Available |");</p><p> System.out.println("|進(jìn)程 |");</p><p> System.out.println("|-----|----
29、------|-----------|--------|--------|");</p><p> for(i=0;i<m;i++){</p><p> System.out.print("|p"+i+" |");</p><p> for(j=0;j<n;j++)</p><
30、;p> System.out.print(Max[i][j]+" ");</p><p> System.out.print("|");</p><p> for(j=0;j<n;j++) </p><p> System.out.print(" "+Allocation[i][j
31、]);</p><p> System.out.print("|");</p><p> for(j=0;j<n;j++)</p><p> System.out.print(" "+Need[i][j]);</p><p> System.out.print("|"
32、);</p><p><b> if(i==0){</b></p><p> for(j=0;j<n;j++)</p><p> System.out.print(" "+Available[0][j]);</p><p> System.out.println("|&quo
33、t;);</p><p><b> }</b></p><p> if(i>0)System.out.println();</p><p><b> }</b></p><p> System.out.println("|-----|----------|---------|
34、---------|----------|"); </p><p><b> }</b></p><p> /*-------------------------顯示函數(shù)結(jié)束--------------------------------*/</p><p> 5.3 系統(tǒng)安全狀態(tài)檢測</p><p>
35、; 能對跟定的系統(tǒng)狀態(tài)進(jìn)行安全檢測,成功輸出系統(tǒng)安全狀態(tài)圖,否則輸出系統(tǒng)狀態(tài)不安全</p><p><b> 流程圖:</b></p><p><b> 關(guān)鍵代碼:</b></p><p> /*------------------------檢測狀態(tài)安全涵數(shù)函數(shù)-------------------*/</
36、p><p> void checksafe1(int s)</p><p><b> {</b></p><p> int temp[]=new int[m],i,l=0,k=0,count=0;</p><p> boolean Finish[]=new boolean[m];</p><p
37、> work=new int[1][n];</p><p> work1=new int[m][n];</p><p> work2=new int [m][n];</p><p> int a=jcys(m);</p><p> for(int v=0;v<m;v++)</p><p> Fi
38、nish[v]=false;</p><p> System.arraycopy(Available[0], 0, work[0], 0, n);</p><p> i=s;//s傳遞進(jìn)來賦給i,s是用戶輸入的進(jìn)程號(有主函數(shù)里的in傳遞進(jìn)來)</p><p> while(i<m&&k!=m&&count!=a) { &
39、lt;/p><p> for(int j=0;j<n;j++)</p><p> if (Finish[i]==false&&Need[i][j]<=work[0][j])l++;</p><p><b> if(l==n){</b></p><p> System.arraycopy(w
40、ork[0], 0, work1[k], 0, n);</p><p> for(int j=0;j<n;j++){</p><p> work[0][j]=work[0][j]+Allocation[i][j];</p><p><b> }</b></p><p> System.arraycopy(w
41、ork[0], 0, work2[k], 0, n);</p><p> Finish[i]=true;</p><p> temp[k]=i;</p><p><b> k++;</b></p><p><b> }</b></p><p><b> l
42、=0;</b></p><p><b> count++;</b></p><p> i=(i+1)%m;//從用戶選擇的進(jìn)程開始對每個(gè)進(jìn)程都要檢測</p><p><b> }</b></p><p><b> if(k!=m){</b></p>
43、;<p> System.out.println("系統(tǒng)資源狀態(tài)不安全!!! ");</p><p><b> }</b></p><p><b> else {</b></p><p> System.out.println("已通過安全性測試!");<
44、/p><p> System.out.println("系統(tǒng)狀態(tài)安全");</p><p> System.out.println("打印輸出...");</p><p> System.out.println("|-----|-----|------|-------|------|------|------|&q
45、uot;);</p><p> System.out.println("|-----| 資源| Work | Need | Allocation | Work+Allocation | Funish");</p><p> System.out.println("|進(jìn)程 |");</p><p> System
46、.out.println("|-----|----------|---------|----------|---------|");</p><p> for(i=0;i<m;i++){</p><p> System.out.print("|p"+temp[i]+" |");</p><p>
47、; for(int j=0;j<n;j++)</p><p> System.out.print(work1[i][j]+" ");</p><p> System.out.print("|");</p><p> for(int j=0;j<n;j++) </p><p>
48、System.out.print(" "+Need[temp[i]][j]);</p><p> System.out.print("|");</p><p> for(int j=0;j<n;j++)</p><p> System.out.print(" "+Allocation[tem
49、p[i]][j]);</p><p> System.out.print("|");</p><p> for(int j=0;j<n;j++)</p><p> System.out.print(" "+work2[i][j]);</p><p> System.out.print(&
50、quot;|");</p><p> System.out.println(" "+Finish[i]+" |");</p><p><b> }</b></p><p> System.out.println("|-----|--------|------|--------
51、|-------|--------|");</p><p><b> }</b></p><p><b> }</b></p><p> /*---------------------檢測狀態(tài)安全涵數(shù)結(jié)束------------------------------*/</p><p>
52、; 5.4 系統(tǒng)試為進(jìn)程分配資源</p><p> 首先由用戶輸入要需要請求求資源的進(jìn)程號,然后根據(jù)提示輸入請求資源的數(shù)量,當(dāng)輸入滿足要求后,系統(tǒng)試為該進(jìn)程分配資源</p><p><b> 流程圖:</b></p><p><b> 關(guān)鍵代碼:</b></p><p> /*------
53、-----------------試分配函數(shù)----------------------------------*/</p><p> void tryfenpei(int i){</p><p> for(int f=0;f<n;f++)</p><p><b> {</b></p><p> Avail
54、able[0][f] = Available[0][f] - Request[0][f];</p><p> Allocation[i][f] = Allocation[i][f] + Request[0][f];</p><p> Need[i][f] = Need[i][f]-Request[0][f];</p><p><b> }</b
55、></p><p><b> }</b></p><p> /*----------------------試分配函數(shù)結(jié)束----------------------------------*/</p><p><b> 5.5 恢復(fù)函數(shù)</b></p><p> 當(dāng)系統(tǒng)試著為進(jìn)程分配
56、資源后,進(jìn)檢測分配后的狀態(tài)為不安全,既要恢復(fù)分配以前的狀態(tài)。</p><p><b> 流程圖:</b></p><p><b> 關(guān)鍵代碼:</b></p><p> /*---------------------恢復(fù)數(shù)據(jù)函數(shù)----------------------------------*/</p>
57、;<p> void refenpei(int i){</p><p> for(int f=0;f<n;f++){</p><p> Available[0][f] = Available[0][f] + Request[0][f];</p><p> Allocation[i][f] = Allocation[i][f] - Requ
58、est[0][f];</p><p> Need[i][f] = Need[i][f]+Request[0][f];</p><p><b> }</b></p><p><b> }</b></p><p> /*--------------------恢復(fù)數(shù)據(jù)函數(shù)結(jié)束----------
59、------------------------*/</p><p><b> 5.6 菜單選項(xiàng)</b></p><p> 用戶可以根據(jù)菜單選項(xiàng)選擇需要操作的選項(xiàng)。</p><p><b> 關(guān)鍵代碼:</b></p><p> /*--------------------菜單選項(xiàng)函數(shù)---
60、---------------------------------*/</p><p> public void menu(){</p><p> System.out.println("|----------------------------------------|");</p><p> System.out.println(&qu
61、ot;|---------1、初始化資源數(shù)組---------------|");</p><p> System.out.println("|---------2、輸出系統(tǒng)資源情況-------------|");</p><p> System.out.println("|---------3、系統(tǒng)安全測試-----------------|
62、");</p><p> System.out.println("|---------4、進(jìn)程請求資源-----------------|");</p><p> System.out.println("|---------5、退出試驗(yàn)---------------------|");</p><p> Sys
63、tem.out.println("|----------------------------------------|");</p><p><b> }</b></p><p> /*----------------------菜單函數(shù)結(jié)束----------------------------------*/</p><
64、p><b> 6 系統(tǒng)測試</b></p><p> 首先進(jìn)入neatbean IDE 6.9,打開工程銀行家算法,然后進(jìn)入源程序,右鍵,運(yùn)行文件即可,下面是對給出的狀態(tài)進(jìn)行檢測,以及進(jìn)程申請資源的情況</p><p><b> 程序運(yùn)行初始狀態(tài):</b></p><p><b> 圖 6.1<
65、;/b></p><p> 首先對1>的a狀態(tài)測試選擇1輸入數(shù)據(jù)并顯示: </p><p><b> 圖 6.2</b></p><p> 選擇3進(jìn)行測試:結(jié)果如圖6.3所示</p><p><b> 圖 6.3</b></p><p> 對1>b
66、狀態(tài)進(jìn)行測試:選擇1輸入數(shù)據(jù)</p><p><b> 圖 6.4</b></p><p> 選擇3進(jìn)行狀態(tài)安全性檢測,結(jié)果如下圖所示:</p><p><b> 圖 6.5</b></p><p> 對2>所跟狀態(tài)進(jìn)行檢測,選擇1輸入數(shù)據(jù):</p><p>&
67、lt;b> 圖 6.6</b></p><p><b> 系統(tǒng)狀態(tài)安全。</b></p><p> 輸入3安全狀態(tài)檢測,結(jié)果下圖所示:</p><p><b> 圖 6.7</b></p><p><b> 系統(tǒng)狀態(tài)安全。</b></p>
68、;<p> 選擇4,輸入2>中進(jìn)程2請求資源(0420),結(jié)果如圖6.8所示:</p><p><b> 圖6.8</b></p><p> 因此可以立即為其分配資源。</p><p><b> 7 結(jié)論</b></p><p> 該題目是銀行家算法,主要是編寫銀行家算
69、法通用程序的編寫,并且測試題目給出的狀態(tài)的安全性,以及進(jìn)程請求資源是否可以立即進(jìn)行分配。進(jìn)過幾天的努力,終于實(shí)現(xiàn)了該題目所需要完成的功能,包括進(jìn)程初始態(tài)資源的錄入,檢測系統(tǒng)安全狀態(tài),銀行家算法的實(shí)現(xiàn),即進(jìn)程發(fā)起資源請求,經(jīng)判斷后,系統(tǒng)試著把資源分配跟該進(jìn)程,然后調(diào)用系統(tǒng)安全檢測函數(shù)進(jìn)行檢測,如果檢測通過,既可以立即跟該進(jìn)程進(jìn)行資源分配,否則分配失敗,恢復(fù)分配前的進(jìn)程資源情況,以及顯示進(jìn)程資源狀態(tài)等功能。經(jīng)輸入數(shù)據(jù)測試后,功能滿足,結(jié)果準(zhǔn)
70、確。該程序滿足銀行家的通用算法,即用戶可以進(jìn)行資源種類和進(jìn)程的個(gè)數(shù)。另外采用了菜單式的選項(xiàng),用戶可以明了的選擇自己想要做的事情。但是該程序?qū)嵲赿os下完成的輸入,見面看起來不是很舒服,如果有多的時(shí)間,可以試著采用圖形界面編程,在窗口中觀察結(jié)果更加清晰。</p><p> 通過本次課程設(shè)計(jì),可以說是受益匪淺,學(xué)到了許多的東西。在編寫程序的過程中,遇到了許多的問題,如知道了系統(tǒng)安全性檢查的方法,但是在編寫的過程中,
71、由于變量的位置沒有放正確,導(dǎo)致結(jié)果不正確,思維卻受到了限制,因?yàn)樗悸犯揪蜎]錯(cuò),因此很難發(fā)現(xiàn)是哪里錯(cuò),如果不采取正確的方法,就會(huì)浪費(fèi)很多的時(shí)間。遇到這種情況,我們需要設(shè)置更多的數(shù)據(jù)輸入進(jìn)行測試,這樣很快就可以發(fā)現(xiàn)是哪里不對。由此可知,遇到問題應(yīng)該選擇恰當(dāng)?shù)姆椒ㄟM(jìn)行解決,這樣效率才高。另外,通過背刺課程設(shè)計(jì),對銀行家算法基本上已經(jīng)了解,對java面向?qū)ο蟪绦蛟O(shè)計(jì)以及c語言有了更好的引用??偠灾?,感覺課程設(shè)計(jì)就是一種實(shí)現(xiàn),可以學(xué)到很多的東
72、西。</p><p><b> 參考文獻(xiàn)</b></p><p> [1] 湯子瀛等編著.計(jì)算機(jī)操作系統(tǒng).西安:西安電子科技出版社,1996.12</p><p> [2] 耿祥義 等編著 .Java面向?qū)ο蟪绦蛟O(shè)計(jì).北京:清華大學(xué)出版社,2009.6</p><p> [3] 朱立華 等編著.C語言程序設(shè)計(jì).北
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 眾賞文庫僅提供信息存儲(chǔ)空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 銀行家算法課程設(shè)計(jì)報(bào)告
- 銀行家算法課程設(shè)計(jì)報(bào)告
- 銀行家算法課程設(shè)計(jì)2
- 課程設(shè)計(jì)--銀行家算法
- 課程設(shè)計(jì)--銀行家算法
- 銀行家算法—課程設(shè)計(jì)
- 銀行家算法-課程設(shè)計(jì)
- 銀行家算法課程設(shè)計(jì)
- 銀行家算法課程設(shè)計(jì)
- 銀行家算法的實(shí)現(xiàn)課程設(shè)計(jì)報(bào)告
- 課程設(shè)計(jì)---銀行家算法實(shí)驗(yàn)報(bào)告
- 操作系統(tǒng)課程設(shè)計(jì)---銀行家算法 (2)
- 操作系統(tǒng)課程設(shè)計(jì)--銀行家算法 (2)
- 操作系統(tǒng)課程設(shè)計(jì)報(bào)告—銀行家算法
- 操作系統(tǒng)課程設(shè)計(jì)報(bào)告—銀行家算法
- 操作系統(tǒng)課程設(shè)計(jì)---銀行家算法報(bào)告
- 銀行家算法模擬實(shí)現(xiàn)課程設(shè)計(jì)
- 操作系統(tǒng)課程設(shè)計(jì)--銀行家算法
- 操作系統(tǒng)課程設(shè)計(jì)---銀行家算法
- 課程設(shè)計(jì)--銀行家算法的模擬實(shí)現(xiàn)
評論
0/150
提交評論