操作系統(tǒng)課程設(shè)計完整報告已給老師驗收成功0001_第1頁
操作系統(tǒng)課程設(shè)計完整報告已給老師驗收成功0001_第2頁
操作系統(tǒng)課程設(shè)計完整報告已給老師驗收成功0001_第3頁
操作系統(tǒng)課程設(shè)計完整報告已給老師驗收成功0001_第4頁
操作系統(tǒng)課程設(shè)計完整報告已給老師驗收成功0001_第5頁
已閱讀5頁,還剩13頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、Standardization ofsany group #QS8QHH-HHGX8Q8-GNHHJ8-HHMHGN# 計算機科學(xué)技術(shù)學(xué)院 操作系統(tǒng)原理 課程設(shè)計報告 題 目:進(jìn)程管理系統(tǒng) 專 業(yè): 班 級: 姓 名: 學(xué) 號: 指導(dǎo)老師: 年 月 日 操作系統(tǒng)原理課程設(shè)計任務(wù)書 一、課程設(shè)計題目(任選一個題目) 1. 模擬進(jìn)程管理 2. 模擬處理機調(diào)度 3. 模擬存儲器管理 4. 模擬文件系統(tǒng) 5. 模擬磁盤調(diào)度 二、設(shè)計目的和要求 1設(shè)計目的 操作系統(tǒng)原理課程設(shè)訃是網(wǎng)絡(luò)工程專業(yè)實踐性環(huán)節(jié)之一,是學(xué)習(xí)完操作系統(tǒng) 原理課程后進(jìn)行的一次較全面的綜合練習(xí)。其LI的在于加深對操作系統(tǒng)的理論、方法 和

2、基礎(chǔ)知識的理解,掌握操作系統(tǒng)結(jié)構(gòu)、實現(xiàn)機理和各種典型算法,系統(tǒng)地了解操作系 統(tǒng)的設(shè)計和實現(xiàn)思路,培養(yǎng)學(xué)生的系統(tǒng)設(shè)計能力,并了解操作系統(tǒng)的發(fā)展動向和趨勢。 2. 基本要求: (1) 選擇課程設(shè)訃題目中的一個課題,獨立完成。 (2) 良好的溝通和合作能力 (3) 充分運用前序課所學(xué)的軟件工程、程序設(shè)訃、數(shù)據(jù)結(jié)構(gòu)等相關(guān)知識 (4) 充分運用調(diào)試和排錯技術(shù) (5) 簡單測試驅(qū)動模塊和樁模塊的編寫 (6) 查閱相關(guān)資料,自學(xué)具體課題中涉及到的新知識。 (7) 課題完成后必須按要求提交課程設(shè)汁報告,格式規(guī)范,內(nèi)容詳實。 三、設(shè)計內(nèi)容及步驟 1根據(jù)設(shè)計題的要求,充分地分析和理解問題,明確問題要求做什么。 2

3、. 根據(jù)實現(xiàn)的功能,劃分出合理的模塊,明確模塊間的關(guān)系。 3. 編程實現(xiàn)所設(shè)汁的模塊。 4. 程序調(diào)試與測試。采用自底向上,分模塊進(jìn)行,即先調(diào)試低層函數(shù)。能夠熟練掌 握調(diào)試工具的各種功能,設(shè)計測試數(shù)據(jù)確定疑點,通過修改程序來證實它或繞過它。調(diào) 試正確后,認(rèn)真整理源程序及其注釋,形成格式和風(fēng)格良好的源程序清單和結(jié)果; 5. 結(jié)果分析。程序運行結(jié)果包括正確的輸入及其輸出結(jié)果和含有錯誤的輸入及其輸 出結(jié)果。 6. 編寫課程設(shè)計報告; 設(shè)計報告要求:A4紙,詳細(xì)設(shè)計部分主要敘述本人的工作內(nèi)容 設(shè)計報告的格式: (1) 封面(題目、指導(dǎo)教師、專業(yè)、班級、姓名、學(xué)號) (2) 設(shè)計任務(wù)書 (3) 目錄 (

4、4) 需求分析 (5) 概要設(shè)計 (6) 詳細(xì)設(shè)計(含主要代碼) (7) 調(diào)試分析、測試結(jié)果 (8) 用戶使用說明 (9) 附錄或參考資料 四、進(jìn)度安排 設(shè)計在學(xué)期的第15、16周進(jìn)行,時間安排如下: 序號 內(nèi)容 時間(天) 1 系統(tǒng)分析 1 2 設(shè)計 3 3 編碼、測試 5 4 驗收 1 合計 10 五、成績評定辦法 成績分為優(yōu)(A)、良(B)、中(C)、及格(D)、不及格(E)五個等級。其中設(shè) 計表現(xiàn)占30%,驗收40%,設(shè)計報告占30%o 1設(shè)計表現(xiàn):教師可依據(jù)學(xué)生使用實驗環(huán)境的能力、觀察和分析實驗現(xiàn)象的能力、 實驗結(jié)果和數(shù)據(jù)的正確性以及學(xué)生的課堂紀(jì)律、實驗態(tài)度、保持實驗室衛(wèi)生等方面的表

5、 現(xiàn)進(jìn)行綜合考核。 2驗收:要求學(xué)生演示設(shè)計的程序,講解設(shè)計思路、方法、解決的主要問題,教師 根據(jù)具體情況向每個學(xué)生提問2至3個問題。 3. 設(shè)計報告:學(xué)生設(shè)計后應(yīng)按時完成設(shè)計報告。要求:內(nèi)容充實、寫作規(guī)范、項 填寫正確完整、書面整潔等。 目錄 一、需求分析6 1. 進(jìn)一步理解進(jìn)程的基本概念 6 2. 加強進(jìn)程管理的設(shè)計及算法 6 3. 觀察和管理進(jìn)程6 二、概要設(shè)計6 1. 實驗原理6 2. 數(shù)據(jù)結(jié)構(gòu)6 3. 算法描述6 4. 算法流程圖7 三、詳細(xì)設(shè)計8 1.源程序代碼8 四、調(diào)試分析及測試結(jié)果 15 五、用戶及用說明17 六、附錄或參考資料17 一、需求分析 1. 進(jìn)一步理解進(jìn)程的基本概

6、念。 2. 加強進(jìn)程管理中主要數(shù)據(jù)結(jié)構(gòu)的設(shè)計及進(jìn)程調(diào)度算法。 3. 觀察和管理進(jìn)程一一系統(tǒng)在運行過程中可顯示或打印各進(jìn)程的狀態(tài)及有關(guān)參數(shù)的 變化悄況。 二、概要設(shè)計 1. 實驗原理 定義PCB的數(shù)據(jù)結(jié)構(gòu),用鏈表的形式管理進(jìn)程,采用多級反饋隊列調(diào)度的算法模擬 進(jìn)程的控制,最終完成有創(chuàng)建、撤銷、調(diào)度、阻塞、喚醒進(jìn)程等功能。 2. 數(shù)據(jù)結(jié)構(gòu) 類: class queuenode class queue 函數(shù): void enqueue( char char dequeue (); void del (char item); void display (); int find(char item);

7、int isempty () 3. 算法描述 1- 1、創(chuàng)建進(jìn)程,根據(jù)進(jìn)程的順序依次放入就緒隊列。 2- 1.執(zhí)行進(jìn)程一一管理系統(tǒng)將就緒隊列中的第一個進(jìn)程調(diào)入運行隊列; 2-2、將阻塞隊列中進(jìn)程調(diào)入就緒隊列; 2-3.封鎖進(jìn)程一一管理系統(tǒng)將就緒隊列中的第一個進(jìn)程調(diào)入阻塞隊列; 2-4、結(jié)束進(jìn)程一一管理系統(tǒng)撤銷所選進(jìn)程; 2-5、結(jié)束程序。 4. 算法流程圖 開始 /輸入進(jìn)程信/ /輸入要進(jìn)行 / 操作的功能 進(jìn)行所選進(jìn)程操 Y 三、詳細(xì)設(shè)計 1 源程序代碼 #include class queuenode friend class queue; private: char data; queu

8、enode * link; queuenode (char d=0,queuenode * 1二NULL): data(d),link(l) ; class queue public: queue():rear(NULL), front(NULL); % queue (); void enqueue( char char dequeue (); void del (char item); void display (); int find(char item); int isempty () return front=?link;delete p; void queue:enqueue(cha

9、r else rear=rear-1ink=new queuenode(item, NULL); char queue:dequeue() queuenode *p=front; char f=p-data;front二front-1ink; delete p; return f; void queue:display() queuenode *p; p=front; while(p!=NULL) coutdata/,; p二p-link; coutddtd) return 1;break; else w二w-link; goto M; 辻(w二二NULL) return 0; void qu

10、eue:del( char item) queuenode *q,*b; q=front; while(q-data!=item) b=q; q=q-link; if(q=front)front=front-link; delete q; else if(q=rear) rear二b;rear-link二NULL;delete q; else b-link二q-link; delete q; void main() int n; char a; coutn操作系統(tǒng)之進(jìn)程管理模擬系統(tǒng)(先來先服務(wù)算法)- nendl; queue execute, ready, clog;/執(zhí)行,就緒,阻塞 co

11、ut,n請用戶輸入進(jìn)程名及其到達(dá)cpu的順序(結(jié)束進(jìn)程數(shù)請輸入 x) nz,ei; if (ei !=r) (eil); else break; A: cout,n 請(學(xué)號)用戶(姓名)選擇操作; coutz,n 1、執(zhí)行進(jìn)程2、將阻塞隊列中進(jìn)程調(diào)入就緒隊列; cout/zn 3、封鎖進(jìn)程 4、結(jié)束進(jìn)程 coutn; if(n二二1) 辻(! 0) cout已經(jīng)有進(jìn)程在執(zhí)行!,此操作不能執(zhí)行n; char w; coutw; 辻(w二二# )goto L; else goto E; else a=(); if(a!=r) (a); goto L; else goto L; else if(n

12、=2) 辻(!() a=(); if(a!=r) (a); goto L; else goto L; else if (n3) 辻(!() a= 0 ; if (a!=r) (a); goto L; else goto L; else if (n4) cout/,n請輸入要結(jié)束的進(jìn)程名:”; cina; if (a)(a)(a) 辻(a) (a); else if(a) (a); 辻(d) (a); cout,n 結(jié)束進(jìn)程成功! nz,endl; goto L; else cout沒有此進(jìn)程endl; goto L; if (n1 n 二二 2 n 二二 3 n 二二 4) cout執(zhí)行隊列endl; 0; coutendl; cout/,就緒隊列,endl; ():coutendl; cout/,阻塞隊列,endl; ();coutendl; goto A; else 辻(n二二5); else coutn你的輸入錯誤! n; goto A; E:; 四、調(diào)試分析及測試結(jié)果 五、用戶使用說明 用戶通過VC+即可運行改程療:。需說明的是主函數(shù)是實現(xiàn)進(jìn)程管理的入口,在 入口處需輸入進(jìn)程名稱,然后輸入進(jìn)程的狀態(tài)選項,如果完畢后,則通過相應(yīng)的調(diào)度 算法進(jìn)行進(jìn)程機的調(diào)度,同時也將結(jié)果顯示在屏幕上

溫馨提示

  • 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. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

最新文檔

評論

0/150

提交評論