主存空間地分配與回收

主存空間地分配與回收

ID:31663052

大?。?29.50 KB

頁數(shù):19頁

時間:2019-01-16

主存空間地分配與回收_第1頁
主存空間地分配與回收_第2頁
主存空間地分配與回收_第3頁
主存空間地分配與回收_第4頁
主存空間地分配與回收_第5頁
資源描述:

《主存空間地分配與回收》由會員上傳分享,免費在線閱讀,更多相關(guān)內(nèi)容在工程資料-天天文庫。

1、實用標準文案操作系統(tǒng)實驗報告實驗三:主存空間的分配與回收一、實驗題目采用可變式分區(qū)管理,使用首次或最佳適應(yīng)算法實現(xiàn)主存的分配與回收二、實驗內(nèi)容主存是中央處理機能直接存取指令和數(shù)據(jù)的存儲器。能否合理而有效地使用主存,在很大程度上將影響到整個計算機系統(tǒng)的性能。本實驗采用可變式分區(qū)管理,使用首次或最佳適應(yīng)算法實現(xiàn)主存空間的分配與回收。要求采用分區(qū)說明表進行。三、實驗?zāi)康耐ㄟ^本次實驗,幫助學(xué)生理解在可變式分區(qū)管理方式下,如何實現(xiàn)主存空間的分配與回收。提示:(1)可變式分區(qū)管理是指在處理作業(yè)過程中建立分區(qū),使分區(qū)大小正好適合作業(yè)的需要,并且分區(qū)個數(shù)是可以調(diào)整的。當要裝入一個作業(yè)時,根據(jù)作業(yè)需

2、要的主存量,查看是否有足夠的空閑空間,若有,則按需求量分割一部分給作業(yè);若無,則作業(yè)等待。隨著作業(yè)的裝入、完成,主存空間被分割成許多大大小小的分區(qū)。有的分區(qū)被作業(yè)占用,有的分區(qū)空閑。例如,某時刻主存空間占用情況如圖1所示。0表1空閑區(qū)說明表操作系統(tǒng)(10KB)10K作業(yè)1(10KB)20K作業(yè)4(25KB)45K空閑區(qū)1(20KB)65K作業(yè)2(45KB)110K256K空閑區(qū)2(146KB)精彩文檔實用標準文案起始地址長度狀態(tài)45K20KB未分配110K146KB未分配空表目空表目空表目………圖1主存空間占用情況為了說明哪些分區(qū)是空閑的,可以用來裝入新的作業(yè),必須要有一張空閑區(qū)說

3、明表,如表1所示。其中,起始地址指出各空閑區(qū)的主存起始地址,長度指出空閑區(qū)大小。狀態(tài)欄未分配指該欄目是記錄的有效空閑區(qū),空表目指沒有登記信息。由于分區(qū)個數(shù)不定,所以空閑區(qū)說明表中應(yīng)有足夠的空表目項,否則造成溢出,無法登記。同樣,再設(shè)一個已分配區(qū)表,記錄作業(yè)或進城的主存占用情況。(1)當有一個新作業(yè)要求裝入主存時,必須查空閑區(qū)說明表,從中找出一個足夠大的空閑區(qū)。有時找到的空閑區(qū)可能大于作業(yè)需求量,這時應(yīng)該將空閑區(qū)一分為二。一個分給作業(yè),另一個仍作為空閑區(qū)留在空閑區(qū)表中。為了盡量減少由于分割造成的碎片,盡可能分配低地址部分的空閑區(qū),將較大空閑區(qū)留在高地址端,以利于大作業(yè)的裝入。為此在空

4、閑區(qū)表中,按空閑區(qū)首地址從低到高進行登記。為了便于快速查找,要不斷地對表格進行緊縮,即讓“空表目”項留在表的后部。其分配框圖如圖2所示。精彩文檔實用標準文案(3)當一個作業(yè)執(zhí)行完時,作業(yè)所占用的分區(qū)應(yīng)歸還給系統(tǒng)。在歸還時要考慮相鄰空閑區(qū)合并的問題。作業(yè)的釋放區(qū)與空閑區(qū)的鄰接分一下4種情況考慮:A.釋放區(qū)下鄰(低地址鄰接)空閑區(qū);B.釋放區(qū)上鄰(高地址鄰接)空閑區(qū);C.釋放區(qū)上下都與空閑區(qū)鄰接;D.釋放區(qū)與空閑區(qū)不鄰接。首次適應(yīng)算法回收框圖如圖3所示。若采用最佳適應(yīng)算法,則空閑區(qū)說明表中的空閑區(qū)按其大小排序。有關(guān)最佳適應(yīng)算法的分配和回收框圖由學(xué)生自己給出。精彩文檔實用標準文案(4)請

5、按首次(或最佳)適應(yīng)算法設(shè)計主存分配和回收程序。以圖1作為主存當前使用的基礎(chǔ),初始化空閑區(qū)和已分配區(qū)說明表的值。學(xué)生自己設(shè)計一個作業(yè)申請隊列以及作業(yè)完成后的釋放順序,實現(xiàn)主存的分配與回收。把空閑區(qū)說明表的變化情況以及各作業(yè)的申請、釋放情況顯示或打印出來。為了說明哪些分區(qū)是空閑的,必須要有一張空閑區(qū)說明表,格式如下表所示:起始地址長度狀態(tài)20K20K180K50K1150K100K1300K30K0(空表目)600K100K1……空表目………四、代碼及運行結(jié)果分析Main.javapackageExp4;importjava.util.ArrayList;importjava.uti

6、l.Scanner;publicclassMain{staticScannerscanner=newScanner(System.in);staticArrayListblockList=newArrayList();staticintapplication;staticintadr;staticintsize;publicstaticvoidmain(String[]args){精彩文檔實用標準文案initalize();}publicstaticvoidinitalize(){//將整個存儲區(qū)作為freeBlock初始化并顯示信息Fr

7、eeBlockfreeBlock=newFreeBlock(0,32767);blockList.add(freeBlock);printAll();print("Pleaseinputtheway(1-best,2-first):");intway=scanner.nextInt();if(way==1){bestClass();//最佳適應(yīng)算法}elseif(way==2){firstClass();//首次適應(yīng)算法}else{print("Error!");

當前文檔最多預(yù)覽五頁,下載文檔查看全文

此文檔下載收益歸作者所有

當前文檔最多預(yù)覽五頁,下載文檔查看全文
溫馨提示:
1. 部分包含數(shù)學(xué)公式或PPT動畫的文件,查看預(yù)覽時可能會顯示錯亂或異常,文件下載后無此問題,請放心下載。
2. 本文檔由用戶上傳,版權(quán)歸屬用戶,天天文庫負責整理代發(fā)布。如果您對本文檔版權(quán)有爭議請及時聯(lián)系客服。
3. 下載前請仔細閱讀文檔內(nèi)容,確認文檔內(nèi)容符合您的需求后進行下載,若出現(xiàn)內(nèi)容與標題不符可向本站投訴處理。
4. 下載文檔時可能由于網(wǎng)絡(luò)波動等原因無法下載或下載錯誤,付費完成后未能成功下載的用戶請聯(lián)系客服處理。