哲學(xué)家就餐-操作系統(tǒng)_第1頁
哲學(xué)家就餐-操作系統(tǒng)_第2頁
哲學(xué)家就餐-操作系統(tǒng)_第3頁
已閱讀5頁,還剩5頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡介

1、衡陽師范學(xué)院操作系統(tǒng) 題目哲學(xué)家就餐問學(xué)生姓名文潤學(xué)號(hào)專業(yè)班級(jí)計(jì)算機(jī)科學(xué)與技術(shù)1402指導(dǎo)教師王玉奇完成時(shí)間2016.11.29 PAGE PAGE 3目錄 HYPERLINK l _TOC_250006 一、設(shè)計(jì)要求2實(shí)驗(yàn)?zāi)康模?設(shè)計(jì)要求:2 HYPERLINK l _TOC_250005 二、運(yùn)行環(huán)境2 HYPERLINK l _TOC_250004 三、設(shè)計(jì)思想及流程2設(shè)計(jì)思想:2流程圖:4主要數(shù)據(jù)結(jié)構(gòu):5 HYPERLINK l _TOC_250003 四、運(yùn)行結(jié)果5 HYPERLINK l _TOC_250002 五、設(shè)計(jì)心得6 HYPERLINK l _TOC_250001 六、參

2、考資料6 HYPERLINK l _TOC_250000 七、程序清單7一、設(shè)計(jì)要求實(shí)驗(yàn)?zāi)康模豪?。設(shè)計(jì)要求:哲學(xué)家有N 互斥使用算法的程序?qū)崿F(xiàn)。二、運(yùn)行環(huán)境操作系統(tǒng):Windows 編程語言:Java 語言編譯軟件:Eclipse三、設(shè)計(jì)思想及流程設(shè)計(jì)思想:對(duì)問題分析可知,目前問題的瓶頸在于:死鎖。死鎖的發(fā)生必須滿足以下四個(gè)必要條件:程因請(qǐng)求資源而阻塞時(shí),對(duì)已獲得的資源保持不放。不剝奪條件: 不能去搶別人的刀叉。循環(huán)等待條件:若干進(jìn)程之間形成一種頭尾發(fā)生死鎖。N PAGE PAGE 4流程圖:開始開始輸入哲學(xué)家人數(shù)N否饑餓Y刀叉是否干凈NYN刀叉是否干凈Y哲學(xué)家就餐結(jié)束 PAGE PAGE 9

3、主要數(shù)據(jù)結(jié)構(gòu):rousseau10002態(tài)和餐具的使用狀態(tài);定義函數(shù)rousseauleft:使哲學(xué)家右邊的餐具就緒Rousseauself:使哲學(xué)家左邊的餐具就緒Rousseaueat:使哲學(xué)家的就餐狀態(tài)改變;四、運(yùn)行結(jié)果程序初始界面運(yùn)行結(jié)果界面五、設(shè)計(jì)心得通過課程設(shè)計(jì)的訓(xùn)練,我進(jìn)一步學(xué)習(xí)和掌握 對(duì)程序的設(shè)計(jì)和編會(huì)有很大的幫助的,我要好好利用。通過課程設(shè)計(jì)的訓(xùn)練,我進(jìn)一步學(xué)習(xí)和掌握 對(duì)程序的設(shè)計(jì)和編會(huì)有很大的幫助的,我要好好利用。有關(guān)程序內(nèi)容,也就是對(duì)它的程序改進(jìn)了一番,并有創(chuàng)新。但是我感夠完善。以后我會(huì)繼續(xù)努力,大膽創(chuàng)新,爭取能編寫出投射著自己思手能力的重要性。我會(huì)在以后的學(xué)習(xí)中更加努力

4、自己,提高自己,讓自己寫出更好更完善的程序,為以后的編程打好基礎(chǔ)!六、參考資料1宗大華,宗濤,陳吉人著. 操作系統(tǒng). 人民郵電出版社,2009。2陸麗娜,楊麥順著. 計(jì)算機(jī)操作系統(tǒng). 高等教育出版社,2015.3李芝興,楊瑞龍著. Java 程序設(shè)計(jì). 清華大學(xué)出版社,2016七、程序清單package jiucan;import java.util.Scanner;import java.lang.NullPointerException;public class zhexuejiapublic static int rousseau=new int10002;/*rousseaux0 中存

5、儲(chǔ)哲學(xué)家就餐狀態(tài)(1,0存儲(chǔ)刀叉是否干凈(1,0rousseaux1 中*/public static int n,m;/n個(gè)數(shù),mnpublic static Scanner input=new Scanner(System.in);public static void rousseauright(int i)rousseau(i+1)%m1=0;/不干凈,將刀叉擦干凈;System.out.print(第+(i+1)%m+1)+把刀叉是臟的,第+(i+1)+哲學(xué)家將刀叉擦干凈n);public static void rousseauself(int i)rousseaui1=0;/干凈,

6、將自己的刀叉擦干凈;System.out.print(第+(i+1)+把刀叉是臟的,第+(i+1)+個(gè)哲學(xué)家將刀叉擦干凈n);public static void rousseaueat(int i)rousseaui0=0;/狀態(tài)變?yōu)橐殉?;n-;/家人數(shù)減 1;rousseau(i+1)%m1=1;rousseaui1=1;System.out.print(第+(i+1)+個(gè)哲學(xué)家就餐,第+(i+1)%m+1)+(i+1)+把刀叉變臟n);public static void main(String args)System.out.print(輸入哲學(xué)家人數(shù)(0代表結(jié)束:n); n=inpu

7、t.nextInt();/ 讀取從鍵盤輸哲學(xué)家的人數(shù);while(n!=0)m=n;/mnfor(int i=0;in;i+)rousseaui0=1;rousseaui1=0;/將所有哲學(xué)家的就餐狀態(tài)設(shè)置為饑餓;/將所有刀叉的狀態(tài)設(shè)置為干凈;int i=0;/0while(n!=0)i=i%m;/ 實(shí) 現(xiàn) 哲 學(xué) 家 序 號(hào) 的 循 環(huán) ; if(rousseaui0=1)/首先判斷當(dāng)前的哲學(xué)家是否饑餓;if(rousseau(i+1)%m1=1)/如果哲學(xué)家饑餓,判斷右手邊的刀叉是否干凈;rousseauright(i);elseif(rousseaui1=1)/如果哲學(xué)家饑餓并且右手邊的刀叉干凈;判斷自己的刀叉是否干凈;roussea

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(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ì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論