版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
1、一、課程設(shè)計目的 一、課程設(shè)計目的本課程設(shè)計是學(xué)生學(xué)習(xí)完《計算機操作系統(tǒng)》課程后,進行的一次全面的 綜合訓(xùn)練,通過課程設(shè)計,讓學(xué)生更好地掌握操作系統(tǒng)的原理及實現(xiàn)方法,加深對操作系統(tǒng)基礎(chǔ)理論和重要算法的理解,加強學(xué)生的動手能力。二、課程設(shè)計要求 二、課程設(shè)計要求從課程設(shè)計的目的出發(fā),通過設(shè)計工作的各個環(huán)節(jié),達到以下教學(xué)要求: 每位同學(xué)從所給題目中任選一個(如自擬題目,需經(jīng)教師同意) ,且必須獨立完成課程設(shè)計,不能相互抄襲。設(shè)計完成后,將所
2、完成的作品交由老師檢查。要求寫出一份詳細的設(shè)計報告。三、課程設(shè)計題目 三、課程設(shè)計題目編程模擬多進程共享臨界資源四、課程設(shè)計功能和目標 四、課程設(shè)計功能和目標1、要求產(chǎn)生至少 3 個進程:2、兩個進程模擬需要進入臨界區(qū)的用戶進程,當需要進入臨界區(qū)時,顯示:“進程 x 請求進入臨界區(qū)…”,同時向管理進程提出申請;在臨界區(qū)中等待一段隨機時間,并顯示:“進程 x 正在臨界區(qū)…”;當時間結(jié)束,顯示:“進程 x 退出臨界區(qū)…”,同時向管理進程提出
3、退出申請。3、一個進程作為原語級管理進程,接受其他進程的臨界區(qū)進入請求:如果允許進入,則設(shè)置相應(yīng)變量,然后返回;如果不允許進入,則進入循環(huán)等待,直到允許為止;4、對臨界區(qū)的訪問應(yīng)遵循空閑讓進、忙則等待、有限等待、讓權(quán)等待的準則。5、進程間通信可以采用信號、消息傳遞、管道或網(wǎng)絡(luò)通信方式。五、課程設(shè)計實現(xiàn)原理 五、課程設(shè)計實現(xiàn)原理通過編寫,創(chuàng)建兩個進程模擬需要進入臨界區(qū),另外編寫一個進程作為原語的管理進程,其負責(zé)兩個進程的進入!接著設(shè)置一個
4、臨界區(qū),讓其進程在其中訪問遵循空閑讓進、忙則等待、有限等待、讓權(quán)等待的準則。當進程和臨界區(qū)建立好后,臨界區(qū)的數(shù)據(jù)傳輸,受到了系統(tǒng)硬件的支持,不耗費多余的資源;而進程間通信傳遞,由軟件進行控制和實現(xiàn),需要消耗一定的 CPU 資源。從這個意義上講,臨界區(qū)更適合頻繁和大量的數(shù)據(jù)傳輸。進程信息的傳遞,自身就帶有同步的控制。當?shù)鹊叫畔⒌臅r候,進程進入睡眠狀態(tài),不再消耗 CPU 資源。而共享隊列如果不借助其他機制進行同步,接 收數(shù)據(jù)的一方必須進行不
5、斷的查詢,白白浪費了大量的 CPU 資源。六、課程設(shè)計思想、方法和技術(shù)(含數(shù)據(jù)結(jié)構(gòu)、算法、流程 六、課程設(shè)計思想、方法和技術(shù)(含數(shù)據(jù)結(jié)構(gòu)、算法、流程包含頭文件 關(guān)鍵的語句: int x,y; while((x=fork())==-1);//創(chuàng)建子進程 1 if(x==0) { //子進程 1 執(zhí)行程序段} else { while((y=fork())==-1); if(y==0) { //子進程 2 執(zhí)行程序段}
6、 else { //父進程執(zhí)行程序段 } } 6.3.2 6.3.2 軟中斷: 軟中斷:系統(tǒng)調(diào)用 kill()和 signal()包含頭文件:和 Kill(pid,signalname) 發(fā)送信號給 pid 號為 pid 的進程,中斷類型為signalname6.3.3 6.3.3 消息隊列: 消息隊列:系統(tǒng)調(diào)用 msgget()、msgsnd()、msgrev()、msgctl()包含頭文件:6.4 6.4、設(shè)計流程圖 、設(shè)
溫馨提示
- 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. 眾賞文庫僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- linux操作系統(tǒng)下c語言編程入門
- 操作系統(tǒng)實驗linux進程與線程通訊
- 操作系統(tǒng)進程調(diào)度算法模擬(c++)實驗報告
- linux系統(tǒng)編程答案
- linux操作系統(tǒng)
- 操作系統(tǒng)課程設(shè)計報告—多進程同步橘子蘋果問題
- 操作系統(tǒng)模擬進程課程設(shè)計
- linux操作系統(tǒng)下的oracle數(shù)據(jù)庫編程
- linux系統(tǒng)編程試卷答案
- 第9章基于linux操作系統(tǒng)的arm編程
- linux操作系統(tǒng)下的多線程編程詳細解析
- linux操作系統(tǒng)安裝
- 操作系統(tǒng)課程設(shè)計-進程調(diào)度模擬
- 操作系統(tǒng)實驗一模擬進程狀態(tài)轉(zhuǎn)換
- 操作系統(tǒng)linux主存管理操作系統(tǒng)實驗 5
- 操作系統(tǒng)課程設(shè)計——進程調(diào)度模擬算法
- linux操作系統(tǒng)安裝教程
- linux操作系統(tǒng)課后答案
- 操作系統(tǒng)課程設(shè)計——進程調(diào)度模擬算法
- 操作系統(tǒng)c
評論
0/150
提交評論