已閱讀5頁,還剩9頁未讀, 繼續(xù)免費(fèi)閱讀
版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)
文檔簡介
學(xué)號P71514032 專業(yè)計算機(jī)科學(xué)與技術(shù) 姓名 實(shí)驗(yàn)日期2017/11/30 教師簽字 成績實(shí)驗(yàn)報告【實(shí)驗(yàn)名稱】 虛擬存儲管理 【實(shí)驗(yàn)?zāi)康摹磕M請求分頁虛擬存儲管理技術(shù)中的硬件地址變換、缺頁中斷以及頁式淘汰算法,處理缺頁中斷。清楚認(rèn)識請求分頁管理。采用最佳置換算法實(shí)現(xiàn)分頁管理的缺頁調(diào)度。采用先進(jìn)先出算法實(shí)現(xiàn)分頁管理的缺頁調(diào)度。采用LRU算法實(shí)現(xiàn)分頁管理的缺頁調(diào)度。【實(shí)驗(yàn)原理】C語言程序設(shè)計數(shù)據(jù)結(jié)構(gòu)最佳置換算法:其所選擇的淘汰頁面將是以后永不使用的,或許是在最長(未來)時間內(nèi)不再被訪問的頁面。采用最佳置換算法通??杀WC獲得最低的缺頁率。先入先出置換算法:該算法總是淘汰最先進(jìn)入內(nèi)存的頁面。最近最久未被訪問算法:選取過去中最久未被訪問的頁面進(jìn)行替換?!緦?shí)驗(yàn)內(nèi)容】數(shù)據(jù)結(jié)構(gòu)和符號說明a) 數(shù)據(jù)結(jié)構(gòu) struct PAGE_LIST int id;/ 塊號 int flag;/ 自適應(yīng)標(biāo)志 page_listMAX; int N = 0;/ 頁面表大小 int orderMAX;/ 調(diào)用串 / 調(diào)用長度 int M = 0;/ 定義輸出內(nèi)容 int GMAXMAX;/ 輸出置換圖 int I, J;/ 置換圖掃描指針 int LLMAX;/ 缺頁序列 int LI;/ 缺頁序列掃描指針 int RLMAX;/ 置換序列 / 置換序列掃描指針 int RI;函數(shù)說明:void init();/ 初始化函數(shù)void print();/ 輸出函數(shù)void Optimal();/ 最佳置換算法void FIFO()/ 先進(jìn)先出算法void LRU();/ 最近最久未使用算法流程圖最佳置換算法:先進(jìn)先出置換算法:最近最久未被訪問算法:代碼:#include #define MAX 100struct PAGE_LISTint id;/ 塊號int flag;/ 自適應(yīng)標(biāo)志 page_listMAX;int N = 0;/ 頁面表大小int orderMAX;/ 調(diào)用串 / 調(diào)用長度int M = 0;/ 定義輸出內(nèi)容int GMAXMAX;/ 輸出置換圖int I, J;/ 置換圖掃描指針int LLMAX;/ 缺頁序列int LI;/ 缺頁序列掃描指針int RLMAX;/ 置換序列/ 置換序列掃描指針int RI;/ 初始化函數(shù)void init()int i;I = 0;J = 0;LI = 0;RI = 0;for (i = 0; i100; i+)page_listi.id = -1;page_listi.flag = 999;printf(請輸入頁表的大小:);scanf(%d, &N);printf(請輸入調(diào)用長度:);scanf(%d, &M);printf(請輸入調(diào)用串:n);for (i = 0; iM; i+)scanf(%d, &orderi);/ 輸出函數(shù)void display()int i, j;float x;printf(置換圖為:n);for (i = 0; iN; i+)printf(n);for (j = 0; jJ; j+)printf(= );printf(n);for (j = 0; jJ; j+)printf(%3d , Gij);printf(n);printf(n缺頁序列為:n);for (i = 0; iLI; i+)printf(%3d , LLi);printf(n置換序列為:n);for (i = 0; iRI; i+)printf(%3d , RLi);x = (float)J / (float)M;x *= 100;printf(n缺頁率為:n%3.2f%n, x);/ 判斷頁是否在頁表內(nèi)int IsExist(int x)int i;for (i = 0; iN; i+)if (page_listi.id = x)return 1;return 0;/ 最佳置換算法/ 此算法中自適應(yīng)標(biāo)志代表后面序列中是否訪問到了此位置void Optimal()int i, j, k;int cou;init();for (i = 0; iN; i+)page_listi.id = orderi;for (j = 0; jN; j+)GIJ = page_listj.id;I+;I = 0;J+;LLLI = orderi;LI+;for (; iM; i+)if (!IsExist(orderi)cou = 0;for (j = i + 1; jM; j+)if (cou = N - 1)break;for (k = 0; kN; k+)if (page_listk.id = orderj & page_listk.flag != 0)page_listk.flag = 0;cou+;for (j = 0; jN; j+)if (page_listj.flag != 0)page_listj.id = orderi;break;for (j = 0; jN; j+)GIJ = page_listj.id;I+;I = 0;J+;LLLI = orderi;LI+;RLRI = orderi;RI+;for (j = 0; jN; j+)page_listj.flag = 999;/ 先進(jìn)先出算法/ 此算法中自適應(yīng)標(biāo)志不需要使用void FIFO()int i, j;int pos = 0;init();for (i = 0; iM; i+)if (!IsExist(orderi)page_listpos.id = orderi;pos = (pos + 1) % N;for (j = 0; j= N)RLRI = orderi;RI+;/ 最近最久未使用算法/ 此算法中自適應(yīng)標(biāo)志為起未被使用的次數(shù)void LRU()int i, j;int pos, max;init();for (i = 0; iM; i+)if (!IsExist(orderi)pos = 0;max = 0;for (j = 0; j max)pos = j;max = page_listj.flag;page_listpos.id = orderi;page_listpos.flag = 0;for (j = 0; j= N)RLRI = orderi;RI+;elsefor (j = 0; jN; j+)if (page_listj.id = orderi)page_listj.flag = 0;break;for (j = 0; jN; j+)if (page_listj.id = orderi)continue;elsepage_listj.flag+;int main()int select;doprintf( 頁面置換算法n);printf( 1.最佳置換算法(Optimal)n 2.先進(jìn)先出算法(FIFO) n);printf( 3.最近最久未使用算法(LRU)n 4.退出程序 n);printf(請輸入您想要執(zhí)行的操作:);scanf(%d, &select);switch (select)case 1:Optimal();display();break;case 2:FIFO();display();break;case 3:LRU();display();break;case 4:return 0;default:printf(輸入有誤,請重新輸入!n); while (1);return 0;結(jié)果截圖最佳置換算法先進(jìn)先出算法:最近最久未使用算法:【小結(jié)或討論】三種算法的主要區(qū)別是確定替換物理塊的方式不同:1、對于先進(jìn)先出置換算法,設(shè)置一個指針,循環(huán)從block的首元素指到block的尾元素,就是物理塊置換順序2、對于LRU置換算法,遍歷頁表中的頁號,根據(jù)這些頁號最近被引用的順序,找到最久未被引用的頁號,即在輸入序列中向前查找離當(dāng)前頁最遠(yuǎn)的頁號,將其所在的物理塊置換掉。3、對于LRU置換算法,遍歷輸入序列中的頁號,根據(jù)這些頁號將來被引用的順序,找到將來最長時間未被引用的頁號,即在輸入序列中向后查找離
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025年度個人心理咨詢與輔導(dǎo)服務(wù)合同3篇
- 2025年度林業(yè)權(quán)屬林權(quán)登記與林業(yè)碳匯項(xiàng)目實(shí)施合同4篇
- 2025年福建貨運(yùn)從業(yè)資格證新政
- 七夕節(jié)趣味活動策劃方案
- 二零二五年度高速鐵路鋁合金門窗安全檢測與安裝合同4篇
- 二零二五年度0號柴油環(huán)保油品居間服務(wù)合同3篇
- 2025年度個人房產(chǎn)交易過戶手續(xù)辦理協(xié)議3篇
- 二零二五年度土地租賃及經(jīng)營權(quán)轉(zhuǎn)讓合同樣本-@-1
- 二零二五年度離婚房產(chǎn)分割與子女醫(yī)療費(fèi)用承擔(dān)合同3篇
- 二零二五年度企業(yè)員工培訓(xùn)課程版權(quán)購買協(xié)議4篇
- 2024年社區(qū)警務(wù)規(guī)范考試題庫
- 2024年食用牛脂項(xiàng)目可行性研究報告
- 2024-2030年中國戶外音箱行業(yè)市場發(fā)展趨勢與前景展望戰(zhàn)略分析報告
- 家務(wù)分工與責(zé)任保證書
- 消防安全隱患等級
- (新版)國民經(jīng)濟(jì)行業(yè)分類代碼表(八大行業(yè))
- 北京地鐵13號線
- 2023山東春季高考數(shù)學(xué)真題(含答案)
- 為加入燒火佬協(xié)會致辭(7篇)
- 職業(yè)衛(wèi)生法律法規(guī)和標(biāo)準(zhǔn)培訓(xùn)課件
- 高二下學(xué)期英語閱讀提升練習(xí)(二)
評論
0/150
提交評論