版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、仲愷農(nóng)業(yè)工程學(xué)院實(shí)驗(yàn)報(bào)告紙(院、系)專業(yè)班組 實(shí)驗(yàn)四 內(nèi)存管理一 實(shí)驗(yàn)?zāi)康模?、 掌握初步進(jìn)程在內(nèi)存中的映像所需要的內(nèi)存需求。2、 內(nèi)存的最先分配算法首先實(shí)現(xiàn),再逐步完成最優(yōu)和最壞的分配算法。二 實(shí)驗(yàn)內(nèi)容:1、 在進(jìn)程管理的基礎(chǔ)上實(shí)現(xiàn)內(nèi)存分配。2、 學(xué)生了解實(shí)驗(yàn)?zāi)康模嫵隽鞒炭驁D。3、 復(fù)習(xí)單向鏈操作編程,編寫全部程序。能夠?qū)崿F(xiàn)多種分配算法。4、 創(chuàng)建和撤消進(jìn)程時(shí),完成內(nèi)存的分配和回收操作,必須可以顯示空閑內(nèi)存塊隊(duì)列狀態(tài)。注意回收內(nèi)存時(shí),空閑塊的合并操作。5、 學(xué)生要在上一次實(shí)驗(yàn)的基礎(chǔ)上對(duì)隊(duì)列的刪除、插入進(jìn)一步熟練三實(shí)驗(yàn)步驟和過程1. 分區(qū)管理基本原理給每一個(gè)內(nèi)存中的進(jìn)程劃分一塊適當(dāng)大小的存儲(chǔ)
2、區(qū),以連續(xù)存儲(chǔ)各進(jìn)程的程序和數(shù)據(jù),使各進(jìn)程得以并發(fā)執(zhí)行。2. 分區(qū)管理可以分為固定分區(qū)和動(dòng)態(tài)分區(qū)兩種方法A. 固定分區(qū)法就是把內(nèi)存區(qū)固定地劃分為若干個(gè)大小不等的區(qū)域。分區(qū)劃分的原則由一般系統(tǒng)操作員或操作系統(tǒng)決定。例如可劃分為長(zhǎng)作業(yè)分區(qū)和短作業(yè)分區(qū)。分區(qū)一旦劃分結(jié)束,在整個(gè)執(zhí)行過程中每個(gè)分區(qū)的長(zhǎng)度和內(nèi)存的總分區(qū)個(gè)數(shù)將保持不變B. 動(dòng)態(tài)分區(qū)的基本思想:在作業(yè)作業(yè)執(zhí)行前并不直接建立分區(qū),分區(qū)的建立是在作業(yè)的處理過程中進(jìn)行的。且其大小可隨作業(yè)或進(jìn)程對(duì)內(nèi)存的要求而改變。C. 動(dòng)態(tài)創(chuàng)建分區(qū):在裝入程序時(shí)按其初始要求分配,或在其執(zhí)行過程中通過系統(tǒng)調(diào)用進(jìn)行分配或改變分區(qū)大小。3. 動(dòng)態(tài)分區(qū)時(shí)的分配與回收動(dòng)態(tài)分
3、區(qū)時(shí)的分配與回收主要解決三個(gè)問題:(1對(duì)于請(qǐng)求表中的要求內(nèi)存長(zhǎng)度,分配程序從可用表或自由鏈中尋找出合適的空閑區(qū)。(2分配空閑區(qū)之后,更新可用表或自由鏈。(3進(jìn)程或作業(yè)釋放內(nèi)存資源時(shí),和相鄰的空閑區(qū)進(jìn)行鏈接合并,更新可用表或自由鏈。(4)動(dòng)態(tài)分區(qū)時(shí)的分配方法從可用表或自由鏈中尋找空閑區(qū)的常用方法有三種:最先適應(yīng)法(first fit algorithm:最先適應(yīng)法要求可用表或自由鏈按起始地址遞增的次序排列。該算法的最大特點(diǎn)是一旦找到大于或等于所要求內(nèi)存長(zhǎng)度的分區(qū),則結(jié)束探索。然后,該算法從所找到的分區(qū)中劃出所要求的內(nèi)存長(zhǎng)度分配給用戶,并把余下的部分進(jìn)行合并(如果有相鄰空閑區(qū)存在 后留在可用表中,
4、但要修改其相應(yīng)的表項(xiàng)。最佳適應(yīng)算法(best fit algorithm:要求按空閑區(qū)大小從小到大的次序組成空閑區(qū)可用表或自由鏈。當(dāng)用戶作業(yè)或進(jìn)程申請(qǐng)一個(gè)空閑區(qū)時(shí),存儲(chǔ)管理程序從表頭開始查找,當(dāng)找到第一個(gè)滿足要求的空閑區(qū)時(shí),停止查找。如果該空閑區(qū)大于請(qǐng)求表中的請(qǐng)求長(zhǎng)度,則與最先適應(yīng)法時(shí)相同。將減去請(qǐng)求長(zhǎng)度后的剩余空閑區(qū)部分留在可用表中。最壞適應(yīng)算法(worst fit algorithm:要求空閑區(qū)按其大小遞減的順序組成空閑區(qū)可用表或自由鏈。當(dāng)用戶作業(yè)或進(jìn)程申請(qǐng)一個(gè)空閑區(qū)時(shí),先檢查空閑區(qū)可用表或自由鏈的第一個(gè)空閑可用區(qū)的大小是否大于或等于所要求的內(nèi)存長(zhǎng)度,若可用表或自由鏈的第一個(gè)項(xiàng)所示空閑區(qū)長(zhǎng)
5、度小于所要求的,則分配失敗,否則從空閑區(qū)可用表或自由鏈中分配相應(yīng)的存儲(chǔ)空間給用戶,然后修改和調(diào)整空閑區(qū)可用表或自由鏈。4、動(dòng)態(tài)分區(qū)時(shí)的回收與拼接當(dāng)用戶作業(yè)或進(jìn)程執(zhí)行結(jié)束時(shí),存儲(chǔ)管理程序要收回已使用完畢的空閑區(qū),并將其插入空閑區(qū)可用表或自由鏈。在將一個(gè)新空閑可用區(qū)插入可用表或隊(duì)列時(shí),該空閑區(qū)和上下相鄰區(qū)的關(guān)系是下述4種關(guān)系之一:a該空閑區(qū)的上下兩相鄰分區(qū)都是空閑區(qū):將三個(gè)空閑區(qū)合并為一個(gè)空閑區(qū)。新空閑區(qū)的起始地址為上空閑區(qū)的起始地址,大小為三個(gè)空閑區(qū)之和??臻e區(qū)合并后,取消可用表或自由鏈中下空閑區(qū)的表目項(xiàng)或鏈指針,修改上空閑區(qū)的對(duì)應(yīng)項(xiàng)。b 該空閑區(qū)的上相鄰區(qū)是空閑區(qū):將釋放區(qū)與上空閑區(qū)合并為一個(gè)
6、空閑區(qū),其起始地址為上空閑區(qū)的起始地址,大小為上空閑區(qū)與釋放區(qū)之和。合并后,修改上空閑區(qū)對(duì)應(yīng)的可用表的表目項(xiàng)或自由鏈指針。c該空閑區(qū)的下相鄰區(qū)是空閑區(qū):將釋放區(qū)與下空閑區(qū)合并,并將釋放區(qū)的起始地址作為合并區(qū)的起始地址。合并區(qū)的長(zhǎng)度為釋放區(qū)與下空閑區(qū)之和。同理,合并后修改可用表或自由鏈中相應(yīng)的表目項(xiàng)或鏈指針。d 兩相鄰區(qū)都不是空閑區(qū):釋放區(qū)作為一個(gè)新空閑可用區(qū)插入可用表或自由鏈。5、 基本流程圖 6、運(yùn)行環(huán)境Widows7操作系統(tǒng),eclipse 平臺(tái)!7. 程序設(shè)計(jì)及測(cè)試結(jié)果1)本程序是沒有窗口界面,比較容易實(shí)現(xiàn), 整個(gè)命令行執(zhí)行結(jié)果如下截圖: 2主程序設(shè)計(jì): public static vo
7、id main(String args throws IOException memory mymemory = new memory(100; System.out.println(" 演示" while (true System.out.println("輸入數(shù)字來執(zhí)行相對(duì)應(yīng)的任務(wù):1->增加進(jìn)程 (a,b,c;2->查看內(nèi)存分配情況;3->撤銷一個(gè)進(jìn)程" getintflag(; switch (flag case 1: mymemory.addunit(new unit("a", 2; mymemory.ad
8、dunit(new unit("b", 4; mymemory.addunit(new unit("c", 6; 內(nèi)存管理程序 break; case 2: mymemory.printall(; break; case 3: mymemory.delunit(mymemory.getName(; 6 四、 實(shí)驗(yàn)總結(jié)與心得 本次實(shí)驗(yàn)中,主要目的是掌握初步進(jìn)程在內(nèi)存中的映像所需要的內(nèi)存 需求,內(nèi)存的最先分配算法首先實(shí)現(xiàn),再逐步完成最優(yōu)和最壞的分配算法。 本實(shí)驗(yàn)主要編寫單向鏈操作編程,實(shí)現(xiàn)各種分配算法,創(chuàng)建和撤銷進(jìn) 程,完成進(jìn)程的創(chuàng)建,分配內(nèi)存,進(jìn)程的撤銷,回收內(nèi)存,還有就是空閑
溫馨提示
- 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. 人人文庫網(wǎng)僅提供信息存儲(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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 項(xiàng)目施工合同
- 全屋定制安裝合同范本
- 采購及服務(wù)合同
- 一建合同管理的程序
- 廢舊買賣合同范本
- 幼兒園場(chǎng)地租賃合同
- 鍍鋅行業(yè)安全知識(shí)競(jìng)賽學(xué)習(xí)資料
- 重大安全風(fēng)險(xiǎn)管控措施落實(shí)情況檢查和事故隱患排查工作方案
- 基于能量選擇的空間電磁防護(hù)結(jié)構(gòu)設(shè)計(jì)與研究
- 2025年??趶臉I(yè)資格證應(yīng)用能力考些啥
- 對(duì)口升學(xué)語文模擬試卷(3)-江西?。ń馕霭妫?/a>
- 中小學(xué)校食品安全與膳食經(jīng)費(fèi)管理工作指引
- 電商平臺(tái)客服人員績(jī)效考核手冊(cè)
- 04S519小型排水構(gòu)筑物(含隔油池)圖集
- YB∕T 4146-2016 高碳鉻軸承鋼無縫鋼管
- 多圖中華民族共同體概論課件第十三講先鋒隊(duì)與中華民族獨(dú)立解放(1919-1949)根據(jù)高等教育出版社教材制作
- 高考英語單詞3500(亂序版)
- 《社區(qū)康復(fù)》課件-第五章 脊髓損傷患者的社區(qū)康復(fù)實(shí)踐
- 北方、南方戲劇圈的雜劇文檔
- 燈謎大全及答案1000個(gè)
- 洗衣機(jī)事業(yè)部精益降本總結(jié)及規(guī)劃 -美的集團(tuán)制造年會(huì)
評(píng)論
0/150
提交評(píng)論