計(jì)算機(jī)操作系統(tǒng)課程設(shè)計(jì)_第1頁
已閱讀1頁,還剩6頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

1、<p><b>  目 錄</b></p><p>  1.課程設(shè)計(jì)內(nèi)容3</p><p>  2.課程設(shè)計(jì)目的3</p><p><b>  3.開發(fā)環(huán)境3</b></p><p>  4.設(shè)計(jì)步驟與方法3</p><p>  4.1.程序

2、概要設(shè)計(jì)3</p><p>  4.2.程序詳細(xì)設(shè)計(jì)4</p><p>  5.設(shè)計(jì)結(jié)果及分析6</p><p><b>  6.設(shè)計(jì)結(jié)論8</b></p><p>  7.對(duì)本設(shè)計(jì)過程及方法、手段的改進(jìn)建議8</p><p><b>  8.任務(wù)分配8</b

3、></p><p><b>  9.參考文獻(xiàn)8</b></p><p>  10.課程設(shè)計(jì)評(píng)價(jià)(教師)8</p><p><b>  理發(fā)師問題</b></p><p><b>  課程設(shè)計(jì)內(nèi)容</b></p><p>  理發(fā)店有一位理發(fā)

4、師,一把理發(fā)椅和n把等候理發(fā)的顧客座位。如果沒有顧客,理發(fā)師便看報(bào)紙,有顧客來時(shí),他必須叫理發(fā)師。如果理發(fā)師正在理發(fā)時(shí)又有顧客來到,如果等候室有座位,就坐下等待,否則離開。</p><p><b>  課程設(shè)計(jì)目的</b></p><p>  通過生產(chǎn)者和消費(fèi)者問題的設(shè)計(jì)和調(diào)試,使學(xué)生掌握進(jìn)程同步的工作原理,利用信號(hào)量的原理和機(jī)制去解決同步問題,并培養(yǎng)學(xué)生分析和解決實(shí)

5、際問題的能力。</p><p><b>  開發(fā)環(huán)境</b></p><p>  系統(tǒng):windows 2000/windows XP </p><p><b>  語言:C#</b></p><p>  軟件開發(fā)工具:visual studio 2008 </p><p>

6、<b>  設(shè)計(jì)步驟與方法</b></p><p><b>  程序概要設(shè)計(jì)</b></p><p>  設(shè)計(jì)一個(gè)windows應(yīng)用窗口來模擬理發(fā)師問題這個(gè)實(shí)驗(yàn),分等候室、工作室兩塊區(qū)域。等候室有5個(gè)位置,工作室有理發(fā)師和正在理發(fā)的顧客。人物分顧客和理發(fā)師兩種,理發(fā)師只有一個(gè),顧客初始設(shè)定為10人。</p><p><

7、;b>  程序詳細(xì)設(shè)計(jì)</b></p><p><b>  4.2.1界面設(shè)計(jì)</b></p><p>  首先創(chuàng)建一個(gè)C#項(xiàng)目工程并命名為BarberQuestion。在BarberQuestion項(xiàng)目中創(chuàng)建startform.cs,程序開始界面.</p><p><b>  如下圖示:</b><

8、/p><p><b>  圖1:開始窗口</b></p><p>  然后創(chuàng)建一個(gè)主界面命名為mainForm.cs.</p><p><b>  如下圖示: </b></p><p><b>  圖2:主窗口</b></p><p><b>

9、  4.2.2代碼設(shè)計(jì)</b></p><p>  首先創(chuàng)建兩個(gè)隊(duì)列來裝載顧客分別是:</p><p>  private Queue<int> enqueueIndex = new Queue<int>(); //創(chuàng)建一個(gè)存儲(chǔ)隊(duì)列</p><p>  private Queue<int> dequeueIndex =

10、 new Queue<int>(); //創(chuàng)建一個(gè)離開隊(duì)列</p><p>  開始模擬按鈕:實(shí)現(xiàn)模擬顧客進(jìn)入發(fā)廳等候室,當(dāng)?shù)群蚴覜]有位子時(shí),離開;</p><p>  通知理發(fā)師按鈕:實(shí)現(xiàn)當(dāng)?shù)群蚴矣蓄櫩蜁r(shí),通知理發(fā)師為顧客理發(fā)。</p><p><b>  實(shí)現(xiàn)代碼:</b></p><p>  /// &

11、lt;summary></p><p><b>  /// 通知理發(fā)師</b></p><p>  /// </summary></p><p>  private void btnWakeBarber_Click(object sender, EventArgs e)</p><p><b>

12、;  {</b></p><p>  if (dequeueIndex.Count != 0)</p><p><b>  {</b></p><p>  picBaber.Show();</p><p>  this.btnStartBarber.Enabled = true;</p><

13、;p><b>  }</b></p><p><b>  else</b></p><p><b>  {</b></p><p>  MessageBox.Show("由于沒有顧客等待理發(fā),所以不必通知理發(fā)師!");</p><p>  picBab

14、er.Hide();</p><p>  this.btnStartBarber.Enabled = false;</p><p><b>  }</b></p><p>  picBaber.Image = Image.FromFile(@"Images\" + 11 + ".bmp");//理發(fā)師的圖

15、片</p><p>  this.btnWakeBarber.Enabled = false;</p><p><b>  }</b></p><p>  開始理發(fā)按鈕:實(shí)現(xiàn)模擬理發(fā)師為顧客理發(fā);等候室的顧客減一,顧客進(jìn)入工作室理發(fā);</p><p>  理發(fā)完成按鈕:模擬理發(fā)過程結(jié)束。</p><p

16、><b>  實(shí)現(xiàn)代碼:</b></p><p>  /// <summary></p><p><b>  /// 剪發(fā)完成</b></p><p>  /// </summary></p><p>  private void btnEndBarber_Click(

17、object sender, EventArgs e)</p><p><b>  {</b></p><p>  System.Threading.Thread.Sleep(300);</p><p>  this.picBarbering.Hide();</p><p>  this.btnStartBarber.E

18、nabled = true;</p><p>  MessageBox.Show("理發(fā)完成!");</p><p>  this.btnEndBarber.Enabled = false;</p><p><b>  }</b></p><p><b>  設(shè)計(jì)結(jié)果及分析</b>

19、;</p><p>  點(diǎn)擊開始模擬按鈕顧客進(jìn)入發(fā)廳等候;</p><p>  點(diǎn)擊通知理發(fā)師按鈕;</p><p><b>  點(diǎn)擊開始理發(fā)按鈕;</b></p><p><b>  點(diǎn)擊理發(fā)完成按鈕;</b></p><p><b>  分析:</b>

20、;</p><p>  運(yùn)行結(jié)果基本正確,有時(shí)會(huì)出現(xiàn)錯(cuò)誤。程序中顧客為互斥的關(guān)系,理發(fā)師和工作室的椅子是臨界資源,采用用兩個(gè)隊(duì)列來承載顧客,分別為存儲(chǔ)隊(duì)列和離開隊(duì)列。通過隊(duì)列的添加與刪除模擬顧客理發(fā)過程中座位的變化。程序還須進(jìn)一步優(yōu)化。</p><p><b>  設(shè)計(jì)結(jié)論</b></p><p>  本軟件設(shè)計(jì)簡(jiǎn)單,操作簡(jiǎn)單。在顧客的進(jìn)出以及

21、通知理發(fā)師問題上還不夠完善,。通過本次實(shí)例操作,了解到臨界資源及互斥等相關(guān)知識(shí),摸了信號(hào)量的機(jī)制去解決理發(fā)師的問題。一定程度上夠加深了對(duì)此環(huán)節(jié)的認(rèn)識(shí)。軟件還有一些問題,會(huì)繼續(xù)修改.</p><p>  對(duì)本設(shè)計(jì)過程及方法、手段的改進(jìn)建議</p><p><b>  暫無</b></p><p><b>  任務(wù)分配</b>

22、</p><p><b>  參考文獻(xiàn)</b></p><p>  計(jì)算機(jī)操作系統(tǒng)(西安電子科技大學(xué)出版社)</p><p>  課程設(shè)計(jì)評(píng)價(jià)(教師)</p><p>  1.符合設(shè)計(jì)內(nèi)容,達(dá)到設(shè)計(jì)目的,設(shè)計(jì)步驟與方法正確,設(shè)計(jì)結(jié)果正確。 </p><p>  是( ) 否( )基本正確

溫馨提示

  • 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. 眾賞文庫僅提供信息存儲(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)論