




版權(quán)說(shuō)明:本文檔由用戶(hù)提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、 模擬動(dòng)態(tài)分區(qū)存儲(chǔ)管理中地址轉(zhuǎn)換實(shí)驗(yàn)?zāi)康纳钊肓私鈩?dòng)態(tài)分區(qū)存儲(chǔ)管理方式的內(nèi)存分配以及地址轉(zhuǎn)換的實(shí)現(xiàn)。實(shí)驗(yàn)任務(wù)隨機(jī)產(chǎn)生進(jìn)程的個(gè)數(shù)及需要的空間,當(dāng)某進(jìn)程提出申請(qǐng)空間的大小后,顯示能否滿(mǎn)足申請(qǐng),以及為該進(jìn)程分配資源后有關(guān)地址轉(zhuǎn)換的數(shù)據(jù)。系統(tǒng)功能需求分析系統(tǒng)對(duì)內(nèi)存的管理和控制通過(guò)數(shù)據(jù)結(jié)構(gòu)分區(qū)說(shuō)明表進(jìn)行,分區(qū)說(shuō)明表說(shuō)明各分區(qū)號(hào)、分區(qū)大小、起始地址和是否是空閑區(qū)(分區(qū)狀態(tài))。內(nèi)存的分配釋放、存儲(chǔ)保護(hù)以及地址變換等都通過(guò)分區(qū)說(shuō)明表進(jìn)行。地址映射:把程序中的相對(duì)地址(或邏輯地址)轉(zhuǎn)換為內(nèi)存中的絕對(duì)地址(物理地址)。動(dòng)態(tài)分區(qū)的基本思想:在作業(yè)執(zhí)行前并不直接建立分區(qū),分區(qū)的建立是在作業(yè)的處理過(guò)程中進(jìn)行的,且其大小可
2、隨作業(yè)或進(jìn)程對(duì)內(nèi)存的要求而改變。在系統(tǒng)初啟時(shí),除了操作系統(tǒng)中常駐內(nèi)存部分之外,只有一個(gè)空閑分區(qū)。隨后,分配程序?qū)⒃搮^(qū)依次劃分給調(diào)度選種的作業(yè)或進(jìn)程。隨著進(jìn)程的執(zhí)行,會(huì)出現(xiàn)一系列的分配和釋放。比如在某一時(shí)刻,一進(jìn)程執(zhí)行結(jié)束并釋放內(nèi)存之后,管理程序又要為另兩個(gè)進(jìn)程分配內(nèi)存。如果分配的空閑區(qū)比所要求的大,則管理程序?qū)⒃摽臻e區(qū)分為兩個(gè)部分,其中一部分成為已分配區(qū)而另一部分成為一個(gè)新的小空閑區(qū)動(dòng)態(tài)地址重定位:是在程序執(zhí)行過(guò)程中,在CPU訪(fǎng)問(wèn)內(nèi)存之前,將要訪(fǎng)問(wèn)的程序或數(shù)據(jù)地址轉(zhuǎn)換成內(nèi)存地址。地址重定位機(jī)構(gòu)需要一個(gè)(或多個(gè))基地址寄存器BR和一個(gè)(或多個(gè))程序虛擬地址寄存器VR。指令或數(shù)據(jù)的內(nèi)存地址MA與虛
3、擬內(nèi)存的關(guān)系為MA=(BR)+(VR)。地址轉(zhuǎn)換的原因:當(dāng)程序從外存進(jìn)入內(nèi)存時(shí),原來(lái)的相對(duì)地址已經(jīng)不能反映程序在內(nèi)存中的實(shí)際地址了,因?yàn)槌绦蛟谘b入內(nèi)存的過(guò)程中,它的裝入地址不是由程序來(lái)選擇的,而是由當(dāng)前可用內(nèi)存的實(shí)際情況來(lái)決定的,所以說(shuō),用程序地址編寫(xiě)的程序一旦送入內(nèi)存,其程序地址和內(nèi)存物理地址之間就存在一種對(duì)應(yīng)關(guān)系。為使程序正常運(yùn)行,需要將這種對(duì)應(yīng)關(guān)系實(shí)施地址變換。動(dòng)態(tài)創(chuàng)建分區(qū):在裝入程序和其執(zhí)行過(guò)程中通過(guò)系統(tǒng)調(diào)用時(shí)都進(jìn)行隨機(jī)分配內(nèi)存大小。程序的名字空間、地址空間和存儲(chǔ)空間之間的關(guān)系存儲(chǔ)空間開(kāi)發(fā)平臺(tái)系統(tǒng):Windowsxp環(huán)境開(kāi)發(fā)工具:VC編程語(yǔ)言:C+系統(tǒng)的功能設(shè)計(jì)內(nèi)存初始分配情況:voi
4、dinit()/鏈表初始化,只有一個(gè)節(jié)點(diǎn)head=newtable;head-start=1;head-length=memory;head-state=false;head-next=NULL;boolfenpei(table*p)/分配進(jìn)程boolfenpei(table*p)/分配進(jìn)程動(dòng)態(tài)重定位過(guò)程:設(shè)置基地址寄存器BR,虛擬地址寄存器VR。將程序段裝入內(nèi)存,且將其站用的內(nèi)存區(qū)首地址送BR中。在程序段執(zhí)行過(guò)程中,將所要訪(fǎng)問(wèn)的虛擬地址送入VR中。地址變換機(jī)構(gòu)把VR和BR的內(nèi)容相加,得到實(shí)際訪(fǎng)問(wèn)的物理地址。01410141內(nèi)存空間虛擬空間內(nèi)存空間動(dòng)態(tài)分區(qū)時(shí)采用最先適應(yīng)算法:該算法要求可用表或
5、自由鏈按起始地址遞增的次序排列,從所找到的分區(qū)中化出所要求的內(nèi)存長(zhǎng)度分配給用戶(hù),并把余下的部分進(jìn)行合并(如有相鄰空閑區(qū)存在)后留在可用表中,但要修改其相應(yīng)的表項(xiàng)。如圖:返回分配起始地址該空閑區(qū)長(zhǎng)度三?表目查完?該空閑區(qū)長(zhǎng)度=SIZE?從該空閑區(qū)中截取所需大小,修改調(diào)整可用表從空閑區(qū)表的第一表目順序表從可用表中移去該表目,調(diào)整可用表返回分配起始地址該空閑區(qū)長(zhǎng)度三?表目查完?該空閑區(qū)長(zhǎng)度=SIZE?從該空閑區(qū)中截取所需大小,修改調(diào)整可用表從空閑區(qū)表的第一表目順序表從可用表中移去該表目,調(diào)整可用表取下一表項(xiàng)無(wú)法分配數(shù)據(jù)結(jié)構(gòu)定義:#defineN10/最大進(jìn)程數(shù)#definema10/每個(gè)進(jìn)程的最大容
6、量#definememory100/整個(gè)內(nèi)存大小structtable/已分配的或未分配的intstart;/進(jìn)程起始地址intlength;/進(jìn)程大小boolstate;/是否分配false:未分配true:已分配table*next;intn;/實(shí)際的進(jìn)程數(shù)intbr;intvr;table*head;/headintrandom(inta,intb)/產(chǎn)生隨機(jī)數(shù)從a到bunsignedintseedVal;structtimebtimeBuf;ftime(&timeBuf);seedVal=(unsignedint)timeBuf.time&0 xFFFF)+(unsignedint)t
7、imeBlitm廠(unsignedint)timeBlitm);srand(unsignedint)seedVal);intx=a+rand()%b-a+1;Sleep(10);returnx;voidfangwen(intbr,intvr)/模擬訪(fǎng)問(wèn)內(nèi)存cout正在訪(fǎng)問(wèn)內(nèi)存中.;Sleep(800);cout.;Sleep(800);cout.;Sleep(800);coutendl;for(intindex=0;index!=N;+index)br=random(1,N);vr=random(1,ma);cout用戶(hù)程序正試圖訪(fǎng)問(wèn)第br個(gè)進(jìn)程空間中的第vr個(gè)單元l
8、ength=random(1,ma);if(fenpei(t)cout內(nèi)存分配成功!endl;elsecout內(nèi)存分配失?。ndl;運(yùn)行結(jié)果與運(yùn)行情況分析由于產(chǎn)生的最大進(jìn)程數(shù)為5,不存在第6個(gè)進(jìn)程數(shù),因此在訪(fǎng)問(wèn)第6個(gè)進(jìn)程時(shí)發(fā)生BR越界。由于第5個(gè)進(jìn)程被分配的內(nèi)存為3個(gè)單元,因此不存在第5個(gè)單元,在訪(fǎng)問(wèn)該進(jìn)程的第5個(gè)單元時(shí)發(fā)生VR越界。由于產(chǎn)生的最大進(jìn)程數(shù)為3,不存在第8個(gè)進(jìn)程數(shù),因此在訪(fǎng)問(wèn)第6個(gè)進(jìn)程時(shí)發(fā)生BR越界。自我評(píng)價(jià)與總結(jié)通過(guò)這次實(shí)驗(yàn)我深刻理解到,動(dòng)態(tài)分區(qū)分配是根據(jù)進(jìn)程的實(shí)際需要?jiǎng)討B(tài)的為之分配內(nèi)存空間,在實(shí)現(xiàn)可變分區(qū)分配時(shí),將涉及到分區(qū)分配中所用的數(shù)據(jù)結(jié)構(gòu)、分區(qū)分配算法和分區(qū)的分配操作
9、這樣三個(gè)問(wèn)題。而地址轉(zhuǎn)換也就是地址重定位包括靜態(tài)重定位和動(dòng)態(tài)重定位。內(nèi)存地址的集合稱(chēng)為內(nèi)存空間或物理空間。內(nèi)存中,每一個(gè)存儲(chǔ)單元都與相應(yīng)的成為內(nèi)存地址的編號(hào)相對(duì)應(yīng)。而把虛擬空間中已經(jīng)鏈接和劃分好的內(nèi)容裝如內(nèi)存,并將虛擬地址映射為內(nèi)存地址的問(wèn)題就稱(chēng)之為重定位或地址映射。雖然上述的這些概念通過(guò)課本以及課堂上老師的講解早已知道,但這“知道”并不是弄懂并理解透徹了,而通過(guò)這次實(shí)驗(yàn)才真正有了深刻的體會(huì)。本次實(shí)驗(yàn)我認(rèn)為程序的運(yùn)行結(jié)果很清楚明了的反映了隨機(jī)產(chǎn)生進(jìn)程以及內(nèi)存分配的過(guò)程以及BR和VR越界的處理。然而由于我前面對(duì)面有關(guān)方面的知識(shí)掌握不夠牢固以及C對(duì)+編程語(yǔ)言學(xué)習(xí)和實(shí)際運(yùn)用的匱乏,此次的實(shí)驗(yàn)并沒(méi)有預(yù)期的完美。首先,我本打算把每個(gè)進(jìn)程進(jìn)程編號(hào),但考慮后續(xù)操作的復(fù)雜也就沒(méi)有實(shí)施;再次,此次實(shí)驗(yàn)要求顯示為該進(jìn)程分配資源后有關(guān)地址轉(zhuǎn)換的數(shù)據(jù),
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶(hù)所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶(hù)上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶(hù)上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶(hù)因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 2024四川融通安防投資集團(tuán)有限公司下屬子公司公開(kāi)招聘生產(chǎn)技術(shù)序列合同員工筆試參考題庫(kù)附帶答案詳解
- 2024四川華豐科技股份有限公司招聘操作崗位140人筆試參考題庫(kù)附帶答案詳解
- 廠房水管搶修方案范本
- 七中期末試卷及答案文科
- 七套試卷作文題目及答案
- 2024高考物理大二輪復(fù)習(xí)專(zhuān)題七鴨部分7.1精練含解析
- 浙江專(zhuān)用2025版高考數(shù)學(xué)一輪復(fù)習(xí)專(zhuān)題8立體幾何與空間向量第54練空間點(diǎn)線(xiàn)面的位置關(guān)系練習(xí)含解析
- 五年級(jí)品德與社會(huì)上冊(cè) 春秋戰(zhàn)國(guó)時(shí)期的思想家教學(xué)設(shè)計(jì) 首師大版
- 家具培訓(xùn)師的專(zhuān)業(yè)發(fā)展與技能提升
- 2024學(xué)年六年級(jí)語(yǔ)文上冊(cè)第五單元17麋鹿教案2蘇教版
- 網(wǎng)絡(luò)零售行業(yè)分析
- 屋頂光伏發(fā)電系統(tǒng)設(shè)計(jì)原則與方案
- 保安上墻制度
- 2025念珠菌病診斷和管理全球指南解讀課件
- 碘對(duì)比劑應(yīng)用護(hù)理安全性
- 第11課《山地回憶》課件-2024-2025學(xué)年統(tǒng)編版語(yǔ)文七年級(jí)下冊(cè)
- 水電站安全生產(chǎn)培訓(xùn)
- 《礦井提升設(shè)備》課件2
- 被迫解除勞動(dòng)合同通知書(shū)電子郵件
- 工具表單-崗位價(jià)值評(píng)估表(海氏)
- DB33T 2515-2022 公共機(jī)構(gòu)“零碳”管理與評(píng)價(jià)規(guī)范
評(píng)論
0/150
提交評(píng)論