操作系統(tǒng)課程設計說明書-基于Linux的模擬存儲器管理的設計與實現_第1頁
操作系統(tǒng)課程設計說明書-基于Linux的模擬存儲器管理的設計與實現_第2頁
操作系統(tǒng)課程設計說明書-基于Linux的模擬存儲器管理的設計與實現_第3頁
操作系統(tǒng)課程設計說明書-基于Linux的模擬存儲器管理的設計與實現_第4頁
操作系統(tǒng)課程設計說明書-基于Linux的模擬存儲器管理的設計與實現_第5頁
已閱讀5頁,還剩1頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

PAGEPAGE1操作系統(tǒng)課程設計說明書

學院、系:軟件學院專業(yè)軟件工程設計題目:基于Linux的模擬存儲器管理的設計與實現1.需求分析軟件設計功能:模擬內存及外存的分配,手動輸入得到進程調度序列,根據頁面置換算法的選擇進行相應的頁面置換操作,以圖表的形式在屏幕上輸出各進程頁面置換過程并且顯示出相應頁面置換算法的缺頁率及置換率,通過缺頁率及置換率的對比看出各算法的優(yōu)劣。軟件設計的目的:存儲器管理是操作系統(tǒng)的重要功能之一,其中的頁面置換算法是虛擬存儲管理實現的關鍵,通過本次實驗理解內存頁面調度的機制,在模擬實現FIFO、LRU、NRU和OPT幾種經典頁面置換算法的基礎上,比較各種置換算法的效率和優(yōu)缺點,從而了解虛擬存儲實現的過程。軟件設計的任務:模擬實現四種經典頁面置換算法,在屏幕上輸出各進程頁面置換過程,每種頁面置換算法的缺頁率和置換率,對比各算法的優(yōu)劣。最終獲得的成果:課程設計任務書,課程設計說明書

以及模擬存儲器管理系統(tǒng)軟件。2.總體設計2.1當運行程序時,程序提示用戶輸入數據,當用戶按照其輸入數據后就對數據進行分析,分析其屬于哪個進程,然后再選擇算法,對其進行運算。構件圖:存儲器管理程序存儲器管理程序OPT算OPT算法模塊NUR算法模塊LRU算法模塊FIFO算法模塊2.2主要函數有: 2.21:所有算法都會用到的函數有:(1)init():初始化(2)getSequ():用于取得從控制臺輸入的序列(3)destroySequ():初始化序列數組(4)intclassifyPageDetail(intpageValue):判斷頁號為pageValue的頁屬于哪個進程(5)setResult():求得缺頁率與置換率(6)selectType():選擇操作的函數2.22:各算法中的函數: 主要就是些數據的添加、刪除、修改以及判斷的一些基本函數與各算法實現其特定功能的函數,這些由小組中分配到任務的人自行制定需要的函數。2.23:輸出函數(1)printSequ():輸出之前輸入的調度序列(2)print1():輸出各進程的調度序列及缺頁率置換率(3)printComInfo():輸出各種算法的比較信息(4)paintMian():輸出主界面3.詳細設計3.1詳細設計思想先進先出(FIFO):該算法總是淘汰最先進入內存的頁面,即選擇在內存中駐留時間最久的頁面予以淘汰。該算法需要把一個進程已調入內存的頁面,按先后次序連接成一個隊列,并設置一個指針,稱替換指針,使它總是指向最老的頁面。3.2核心代碼//FIFO隊列typedefstructQNode{ intaddr;//存儲在外存中的地址 structQNode*next;}QNode,*QueuePtr;//FIFO函數voidfifo(){ intflag;//用于指定頁面屬于的進程1A2B3C inti; printf("頁面置換過程:\n"); for(i=0;i<step;i++) { intm=controlSequ[i]; flag=classifyPageDetail(m); switch(flag) { case1: printf("\nA:"); coreOfFifo(m,&pro1); break; case2: printf("\nB:"); coreOfFifo(m,&pro2); break; case3: printf("\nC:"); coreOfFifo(m,&pro3); break; } } getResult(pro1.m,pro2.m,pro3.m);}3.3程序運行結果初始界面:輸入頁面調度順序:(1~44之間的數中間用空格隔開,輸入其他并回車表示輸入完畢):頁面置換過程及結果:4.心得體會本次課程設計在linux環(huán)境下用c語言完成,不僅用到了操作系統(tǒng)知識,還用了數據結構,更加熟練的掌握了頁面置換算法。開始我一味的進行調試,急切的想僥幸調試出來,但由于沒有進行深入的考慮,我調試了很久都沒沒有成功,我仔細的分析題目,分析材料,在原有的基礎上我進行了改正,我最后還是調試成功了,還是經過了一翻努力,這次操作系統(tǒng)課程設計,不僅讓我對操作系統(tǒng)這門課程有了

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
  • 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論