




版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、武漢理工大學(xué)操作系統(tǒng)課內(nèi)實(shí)踐說(shuō)明書(shū)學(xué)生學(xué)號(hào)實(shí)踐課成績(jī) 課 內(nèi) 實(shí) 踐 實(shí) 踐 內(nèi) 容 請(qǐng)求頁(yè)式內(nèi)存管理的分配與回收 開(kāi) 課 學(xué) 院 計(jì)算機(jī)科學(xué)與技術(shù)學(xué)院 指導(dǎo)老師姓名 學(xué) 生 姓 名 學(xué)生專業(yè)班級(jí) 學(xué)年 第 一 學(xué)期目錄1設(shè)計(jì)目的、功能與要求21.1設(shè)計(jì)目的、功能21.2要求22問(wèn)題的詳細(xì)描述、需求分析22.1問(wèn)題的詳細(xì)描述22.2 需求分析33數(shù)據(jù)結(jié)構(gòu)、功能設(shè)計(jì)(功能與框圖、功能模塊說(shuō)明)33.1 算法分析33.2 數(shù)據(jù)結(jié)構(gòu)33.3模塊說(shuō)明43.3.1 主函數(shù)43.3.2 功能函數(shù)54開(kāi)發(fā)工具及源程序的主要部分(需對(duì)主要代碼段附文字注釋)54.1開(kāi)發(fā)平臺(tái)54.2 源程序的主要部分55測(cè)試用例
2、、運(yùn)行結(jié)果與運(yùn)行情況分析85.1測(cè)試方法85.2測(cè)試結(jié)果86自我評(píng)價(jià)與總結(jié)117參考文獻(xiàn)11請(qǐng)求頁(yè)式內(nèi)存管理的分配與回收1設(shè)計(jì)目的、功能與要求1.1設(shè)計(jì)目的、功能 模擬實(shí)現(xiàn)內(nèi)存管理的分配與回收功能,掌握內(nèi)存管理的相關(guān)內(nèi)容,對(duì)內(nèi)存的分配與回收有深入的理解。1.2要求 (1)任選一種計(jì)算機(jī)高級(jí)語(yǔ)言編程實(shí)現(xiàn) (2)選擇一種內(nèi)存管理方案:動(dòng)態(tài)分區(qū)式、請(qǐng)求頁(yè)式、段式、段頁(yè)式等 (3)能夠輸入給定的內(nèi)存大小,進(jìn)程的個(gè)數(shù),每個(gè)進(jìn)程所需內(nèi)存空間大小 (4)能夠選擇分配 / 回收操作 (5)能夠顯示進(jìn)程在內(nèi)存的存儲(chǔ)地址、大小等 (6)顯示每次完成內(nèi)存分配或回收后內(nèi)存空間的使用情況2問(wèn)題的詳細(xì)描述、需求分析2.1
3、問(wèn)題的詳細(xì)描述 利用c+語(yǔ)言設(shè)計(jì)程序,模擬頁(yè)式內(nèi)存管理的過(guò)程。頁(yè)式管理是一種內(nèi)存空間存儲(chǔ)管理的技術(shù),頁(yè)式管理分為靜態(tài)頁(yè)式管理和動(dòng)態(tài)頁(yè)式管理?;驹硎菍⒏鬟M(jìn)程的虛擬空間劃分成若干個(gè)長(zhǎng)度相等的頁(yè),頁(yè)式管理把內(nèi)存空間按頁(yè)的大小劃分成片或者頁(yè)面,然后把頁(yè)式虛擬地址與內(nèi)存地址建立一一對(duì)應(yīng)頁(yè)表,并用相應(yīng)的硬件地址變換機(jī)構(gòu),來(lái)解決離散地址變換問(wèn)題。頁(yè)式管理采用請(qǐng)求調(diào)頁(yè)或預(yù)調(diào)頁(yè)技術(shù)實(shí)現(xiàn)了內(nèi)外存存儲(chǔ)器的統(tǒng)一管理。 靜態(tài)分頁(yè)管理的第一步是為要求內(nèi)存的作業(yè)或進(jìn)程分配足夠的頁(yè)面。系統(tǒng)通過(guò)存儲(chǔ)頁(yè)面表、請(qǐng)求表以及頁(yè)表來(lái)完成內(nèi)存的分配工作。頁(yè)表指的是內(nèi)存中的一塊固定存儲(chǔ)區(qū)。頁(yè)式管理時(shí)每個(gè)進(jìn)程至少有一個(gè)頁(yè)表。請(qǐng)求表指的是用
4、來(lái)確定作業(yè)或進(jìn)程的虛擬空間的各頁(yè)在內(nèi)存中的實(shí)際對(duì)應(yīng)位置;另外整個(gè)系統(tǒng)有一個(gè)存儲(chǔ)頁(yè)面表,描述了物理內(nèi)存空間的分配使用狀況。2.2 需求分析 模擬設(shè)計(jì)頁(yè)式內(nèi)存管理的分配與回收要求能夠滿足如下的要求:(1) 輸入給定的內(nèi)存大小、當(dāng)前進(jìn)程的大小、分配的頁(yè)面數(shù)量及頁(yè)面的執(zhí)行順序,能夠選擇分配 / 回收操作;(2) 使用內(nèi)存管理方案:請(qǐng)求頁(yè)式管理;(3) 要求當(dāng)進(jìn)程提出申請(qǐng)空間的大小后,顯示能否滿足申請(qǐng),顯示每次完成內(nèi)存分配或回收后內(nèi)存空間的使用情況。3數(shù)據(jù)結(jié)構(gòu)、功能設(shè)計(jì)(功能與框圖、功能模塊說(shuō)明)3.1 算法分析 首先,請(qǐng)求表給出進(jìn)程或作業(yè)要求的頁(yè)面數(shù)。然后,由存儲(chǔ)頁(yè)面表檢查是否有足夠的空閑頁(yè)面,如果沒(méi)
5、有,則本次無(wú)法分配。如果有則首先分配設(shè)置頁(yè)表,并請(qǐng)求表中的相應(yīng)表項(xiàng)后,按先來(lái)先服務(wù)算法搜索出所要求的空閑頁(yè)面,并將對(duì)應(yīng)的頁(yè)好填入頁(yè)表中。3.2 數(shù)據(jù)結(jié)構(gòu)頁(yè)式管理把內(nèi)存空間按頁(yè)的大小劃分成片或者頁(yè)面,再按照一定的規(guī)律建立起頁(yè)表,并通過(guò)請(qǐng)求表將分配內(nèi)容顯示出來(lái),將頁(yè)表和請(qǐng)求表的內(nèi)容使用結(jié)構(gòu)體定義如下: typedef struct int use;/0表示沒(méi)被用 int name;/name表示被哪個(gè)進(jìn)程占用 node; typedef struct int size;/表示進(jìn)程的大小 int name;/表示進(jìn)程號(hào) progress;定義內(nèi)存總大?。簊ize定義當(dāng)前進(jìn)程大小:pro.size 定
6、義內(nèi)存頁(yè)面數(shù):int pagenum 定義塊的數(shù)量:kuai定義進(jìn)程個(gè)數(shù):int pnum定義進(jìn)程的編號(hào):num定義刪除進(jìn)程的編號(hào):shanchunum框圖如下:3.3模塊說(shuō)明 3.3.1 主函數(shù) 整個(gè)程序由兩個(gè)函數(shù)組成,主函數(shù)運(yùn)行了程序中的功能函數(shù),包含對(duì)整個(gè)內(nèi)存基本信息的輸入,并實(shí)現(xiàn)了內(nèi)存的分配與回收。 3.3.2 功能函數(shù) 功能函數(shù):void action(int a,int b,int num),使用先進(jìn)先出頁(yè)面淘汰算法(FIFO)對(duì)頁(yè)面進(jìn)行置換。4開(kāi)發(fā)工具及源程序的主要部分(需對(duì)主要代碼段附文字注釋)4.1開(kāi)發(fā)平臺(tái)(1) 使用系統(tǒng):Windows 7(2) 使用語(yǔ)言:C+(3) 開(kāi)發(fā)
7、工具:Visual Studio 20104.2 源程序的主要部分 主函數(shù)部分代碼:cout << "該進(jìn)程已經(jīng)被分為" << pronum.size << "個(gè)頁(yè)面,請(qǐng)輸入頁(yè)面的執(zhí)行順序:" << endl;cin>>pagenum0;for(i=1;pagenumi-1!=0;i+)cin>>pagenumi;count=i-1;action(pagenum, kuai, count);for(i=0;i<30;i+)pagenumi=0;tem = pronum.size
8、;for (i = 0; i < size; i+)if (tem != 0)if (neicuni.use = 0)neicuni.use = 1; = num;tem-;elsecontinue;elsebreak; num+;cout << "內(nèi)存占用情況為:" << endl;cout << "內(nèi)存號(hào) 進(jìn)程號(hào)" << endl;功能函數(shù):void action(int a,int b,int num) /使用先進(jìn)先出頁(yè)面淘汰算法對(duì)頁(yè)面進(jìn)行置換int i,count=2;
9、bool flag=true;cout << "執(zhí)行順序?yàn)椋?quot; << endl;for (i = 0; i < 3; i+) /只使用三塊物理內(nèi)存塊bi = ai;cout << "1 2 3" << endl;cout << b0 << endl;cout << b0 << " " << b1 << endl;cout << b0 << " " << b
10、1 <<" "<<b2<< endl;for (i = 3; i < num; i+)flag=true;for(int j=0;j<3;j+)if(bj=ai)flag=false;break;if(flag=false)cout << b0 << " " << b1 << " " << b2 << endl;continue;elsecount=count+1;bcount%3 = ai;cout <<
11、; b0 << " " << b1 << " " << b2 << endl;5測(cè)試用例、運(yùn)行結(jié)果與運(yùn)行情況分析5.1測(cè)試方法 假定內(nèi)存的大小為100,輸入第一個(gè)進(jìn)程的大小為30,采用先進(jìn)先出淘汰算法進(jìn)行置換,輸出頁(yè)面執(zhí)行順序。輸入第二個(gè)進(jìn)程大小為50,并同樣采用先進(jìn)先出算法置換,當(dāng)輸入第三個(gè)進(jìn)程大小為30時(shí),顯示進(jìn)程分配失敗。5.2測(cè)試結(jié)果 6自我評(píng)價(jià)與總結(jié) 本次課內(nèi)實(shí)踐旨在模擬實(shí)現(xiàn)內(nèi)存管理的分配與回收功能,掌握內(nèi)存管理的相關(guān)內(nèi)容,對(duì)內(nèi)存的分配與回收有深入的理解。通過(guò)本次課內(nèi)實(shí)踐,我不僅加深了
12、對(duì)頁(yè)式管理的理解,也提高了自己的編程能力。編程是個(gè)長(zhǎng)久的過(guò)程,平時(shí)要多去動(dòng)手實(shí)踐,提高自己分析問(wèn)題、發(fā)現(xiàn)問(wèn)題、解決問(wèn)題的能力。做了這么多次的課內(nèi)實(shí)踐,大致的過(guò)程都熟悉了,每次的動(dòng)手實(shí)踐,都調(diào)動(dòng)了我主動(dòng)學(xué)習(xí)的積極性,并引導(dǎo)我根據(jù)實(shí)際編程要求,訓(xùn)練自己實(shí)際分析問(wèn)題的能力及編程能力,養(yǎng)成良好的編程習(xí)慣。 在編寫(xiě)程序的過(guò)程中,我還翻閱了一些課外資料,并更加詳細(xì)的閱讀了課本,保證在頁(yè)式管理基本原理透徹了解情況下進(jìn)行設(shè)計(jì),事半功倍,讓我認(rèn)識(shí)到磨刀不誤砍柴工的道理。7參考文獻(xiàn)(1) 計(jì)算機(jī)操作系統(tǒng)教程(第3版) 張堯?qū)W 史美林 張高編著(2) C+ Primer第六版 B.Lippman著(3) 深入解析Windows操作系統(tǒng) M.Russunovich著 潘愛(ài)民譯本科
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 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ì)用戶上傳內(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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 預(yù)防接種課件幻燈片
- 預(yù)防小學(xué)生近視教案課件
- 預(yù)防傳染主題班會(huì)課件
- 音樂(lè)課件兒童歌曲
- 2025年基因工程亞單元疫苗項(xiàng)目合作計(jì)劃書(shū)
- 屋面雨水排水系統(tǒng)安裝監(jiān)理指南
- 2025年建筑用天然石料項(xiàng)目合作計(jì)劃書(shū)
- 文化遺產(chǎn)傳承與現(xiàn)代化
- 衛(wèi)生部《手足口病預(yù)防控制指南版》
- 安全設(shè)施使用管理制度培訓(xùn)
- 2025至2030中國(guó)寵物垃圾袋行業(yè)發(fā)展趨勢(shì)分析與未來(lái)投資戰(zhàn)略咨詢研究報(bào)告
- 兒童腺病毒肺炎課件
- 水資源論證管理制度
- 學(xué)校規(guī)定違禁品管理制度
- 麻醉中的人文關(guān)懷
- 2025年云南省時(shí)事政治考試試卷帶解析附完整答案(考點(diǎn)梳理)
- 2025春季學(xué)期國(guó)開(kāi)電大本科《經(jīng)濟(jì)學(xué)(本)》一平臺(tái)在線形考(形考任務(wù)1至6)試題及答案
- CJ/T 30-2013熱電式燃具熄火保護(hù)裝置
- 車子刮擦協(xié)議書(shū)
- 2025年山東省普通高校招生(春季高考)全省統(tǒng)一考試語(yǔ)文試題
- 詩(shī)歌鑒賞|蘇軾《鶴嘆》注釋+賞析+試題
評(píng)論
0/150
提交評(píng)論