




版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、西安文理學(xué)院軟件學(xué)院操作系統(tǒng)課程設(shè)計(jì)報(bào)告設(shè)計(jì)名稱: 操作系統(tǒng)課程設(shè)計(jì) 設(shè)計(jì)題目: 頁(yè)面置換算法 學(xué)生學(xué)號(hào): 1402120110 專業(yè)班級(jí): 信息系統(tǒng)開發(fā)1班 學(xué)生姓名: 杜倩 學(xué)生成績(jī): 指導(dǎo)教師(職稱): 孫少波 課題工作時(shí)間: 2014.10.27 至 2014.12.1 說(shuō)明:1、報(bào)告中的任務(wù)書、進(jìn)度表由指導(dǎo)教師在課程設(shè)計(jì)開始前填寫并發(fā)給每個(gè)學(xué)生。2、學(xué)生成績(jī)由指導(dǎo)教師根據(jù)學(xué)生的設(shè)計(jì)情況給出各項(xiàng)分值及總評(píng)成績(jī)。3、所有學(xué)生必須參加課程設(shè)計(jì)的答辯環(huán)節(jié),凡不參加答辯者,其成績(jī)一律按不及格處理。答辯由指導(dǎo)教師實(shí)施。4、報(bào)告正文字?jǐn)?shù)一般應(yīng)不少于3000字,也可由指導(dǎo)教師根據(jù)本門綜合設(shè)計(jì)的情況另
2、行規(guī)定。5、平時(shí)表現(xiàn)成績(jī)低于6分的學(xué)生,取消答辯資格,其本項(xiàng)綜合設(shè)計(jì)成績(jī)按不及格處理。軟件學(xué)院課程設(shè)計(jì)任務(wù)書學(xué)生姓名杜倩學(xué)號(hào)1402120110專業(yè)班級(jí)信息系統(tǒng)開發(fā)1班設(shè)計(jì)題目頁(yè)面置換算法內(nèi)容概要: 系統(tǒng)采用環(huán)境為Visual Studio2012 ,采用c語(yǔ)言程序編寫,程序包含頁(yè)面置換算法中 (1)先進(jìn)先出頁(yè)面置換算法(FIFO) (2)最近最久未使用頁(yè)面置換算法(LRU) (3)最佳置換頁(yè)面置換算法(OPT)文獻(xiàn)資料: 1嚴(yán)蔚敏 吳偉民 數(shù)據(jù)結(jié)構(gòu) 清華大學(xué)出版社 2005 2譚浩強(qiáng). C語(yǔ)言程序設(shè)計(jì). 清華大學(xué)出版社, 2005 3于帆, 趙妮. 程序設(shè)計(jì)基礎(chǔ)(C語(yǔ)言版). 清華大學(xué)出版社
3、, 2006 4湯小丹, 梁紅兵, 哲鳳屏, 湯子瀛. 計(jì)算機(jī)操作系統(tǒng). 西安電子科技大學(xué)出版社, 2014設(shè)計(jì)要求: 編程實(shí)現(xiàn): (1)先進(jìn)先出頁(yè)面置換算法(FIFO) (2)最近最久未使用頁(yè)面置換算法(LRU) (3)最佳置換頁(yè)面置換算法(OPT)設(shè)計(jì)一個(gè)虛擬存儲(chǔ)區(qū)和內(nèi)存工作區(qū),編程序演示以上三種算法的具體實(shí)現(xiàn)過(guò)程,并計(jì)算訪問(wèn)命中率。演示頁(yè)面置換的三種算法。通過(guò)隨機(jī)數(shù)產(chǎn)生一個(gè)指令序列,將指令序列轉(zhuǎn)換成為頁(yè)地址流。計(jì)算并輸出各種算法在不同內(nèi)存容量下的命中率。工作期限:設(shè)計(jì)工作自2011年10月27日至2014年12月1日止。指導(dǎo)教師: 院長(zhǎng): 日 期:2013年12月9日軟件學(xué)院課程設(shè)計(jì)進(jìn)度
4、安排表學(xué)生姓名: 學(xué)號(hào): 專業(yè): 班級(jí): 起止日期內(nèi) 容備注12月9日下達(dá)任務(wù)書,制定進(jìn)度安排計(jì)劃 12月10日12月12日系統(tǒng)整體設(shè)計(jì)和詳細(xì)設(shè)計(jì)12月13日12月17日系統(tǒng)編碼實(shí)現(xiàn)12月18日12月19日系統(tǒng)測(cè)試 12月20日12月23日撰寫課程設(shè)計(jì)報(bào)告 12月25日演示軟件和答辯 指導(dǎo)教師簽名: 2013年12月11日成績(jī)?cè)u(píng)定表學(xué)生姓名: 學(xué)號(hào): 專業(yè): 班級(jí): 類別合計(jì)分值各項(xiàng)分值評(píng)分標(biāo)準(zhǔn)實(shí)際得分合計(jì)得分平時(shí)表現(xiàn)1010按時(shí)參加設(shè)計(jì)指導(dǎo),無(wú)違反紀(jì)律情況。完成情況3020按設(shè)計(jì)任務(wù)書的要求完成了全部任務(wù),能完整演示其設(shè)計(jì)內(nèi)容,符合要求。10能對(duì)其設(shè)計(jì)內(nèi)容進(jìn)行詳細(xì)、完整的介紹,并能就指導(dǎo)教師
5、提出的問(wèn)題進(jìn)行正確的回答。報(bào)告質(zhì)量3510報(bào)告文字通順,內(nèi)容翔實(shí),論述充分、完整,立論正確,結(jié)構(gòu)嚴(yán)謹(jǐn)合理;報(bào)告字?jǐn)?shù)符合相關(guān)要求,工整規(guī)范,整齊劃一。5課題背景介紹清楚,綜述分析充分。5設(shè)計(jì)方案合理、可行,論證嚴(yán)謹(jǐn),邏輯性強(qiáng),具有說(shuō)服力。5符號(hào)統(tǒng)一;圖表完備、符合規(guī)范要求。5能對(duì)整個(gè)設(shè)計(jì)過(guò)程進(jìn)行全面的總結(jié),得出有價(jià)值的結(jié)論或結(jié)果。5參考文獻(xiàn)數(shù)量在2篇以上,格式符合要求,在正文中正確引用。答辯情況2510在規(guī)定時(shí)間內(nèi)能就所設(shè)計(jì)的內(nèi)容進(jìn)行闡述,言簡(jiǎn)意明,重點(diǎn)突出,論點(diǎn)正確,條理清晰。15在規(guī)定時(shí)間內(nèi)能準(zhǔn)確、完整、流利地回答教師所提出的問(wèn)題??傇u(píng)成績(jī): 分 指導(dǎo)教師: (簽字) 日期:2013 年12
6、月 25 日摘 要摘要:介紹操作系統(tǒng)內(nèi)存調(diào)度的算法的概念原理和實(shí)驗(yàn)方法,頁(yè)面置換算法有先進(jìn)先出,最近最久未使用,最佳置換。使用c語(yǔ)言編寫程序?qū)崿F(xiàn)程序的幾種算法,并在vs2012的環(huán)境中運(yùn)行實(shí)現(xiàn),要求實(shí)現(xiàn)的功能為通過(guò)隨機(jī)數(shù)產(chǎn)生指令,轉(zhuǎn)換為頁(yè)地址流,計(jì)算訪問(wèn)的命中率。關(guān)鍵詞:頁(yè)面置換,FIFO,LRU,OPT西安文理學(xué)院軟件學(xué)院 課程設(shè)計(jì)報(bào)告目 錄目 錄I第一章 課題背景(或緒論、概述)11.1 課程設(shè)計(jì)背景11.2 課程設(shè)計(jì)實(shí)現(xiàn)功能1第二章 設(shè)計(jì)簡(jiǎn)介及設(shè)計(jì)方案論述22.1 任務(wù)目標(biāo)(三號(hào)字 黑體)22.2 開發(fā)設(shè)計(jì)思想32.3 實(shí)現(xiàn)功能3第三章 詳細(xì)設(shè)計(jì)43.1 模板設(shè)計(jì)圖43.2 函數(shù)模塊,程
7、序流程53.2.1先進(jìn)先出頁(yè)面置換算法(FIFO)53.2.2最近最久未使用頁(yè)面置換算法(LRU)63.2.3最佳置換頁(yè)面置換算法(OPT)7第四章 設(shè)計(jì)結(jié)果及分析84.1 運(yùn)行8總結(jié)10參考文獻(xiàn)11附錄12- 7 - 第一章 課題背景(或緒論、概述)1.1 課程設(shè)計(jì)背景隨著硬件技術(shù)的發(fā)展,各式各樣的大容量存儲(chǔ)設(shè)備相繼出現(xiàn),一臺(tái)計(jì)算機(jī)上可能存在多種外存儲(chǔ)設(shè)備。不同存儲(chǔ)設(shè)備有著不同的讀寫速度,同一種設(shè)備的讀寫速度有可能也會(huì)相差很大。因此在多種具有不同讀寫速度的外存儲(chǔ)設(shè)備的環(huán)境下,選擇一種合適的頁(yè)面淘汰算法,對(duì)整個(gè)系統(tǒng)的性能會(huì)有很大的提高。1.2 課程設(shè)計(jì)實(shí)現(xiàn)功能 (1)先進(jìn)先出頁(yè)面置換算法(FI
8、FO) (2)最近最久未使用頁(yè)面置換算法(LRU) (3)最佳置換頁(yè)面置換算法(OPT) 第二章 設(shè)計(jì)簡(jiǎn)介及設(shè)計(jì)方案論述2.1 任務(wù)目標(biāo)(三號(hào)字 黑體)1.用c語(yǔ)言編寫FIFO,LRU,OPT三種頁(yè)面置換算法2.掌握內(nèi)存調(diào)度算法的概念原理和實(shí)現(xiàn)方法3.計(jì)算并輸出各種算法在不同內(nèi)存容量下的命中率2.2 開發(fā)設(shè)計(jì)思想2.3 實(shí)現(xiàn)功能編寫程序?qū)崿F(xiàn): (1)先進(jìn)先出頁(yè)面置換算法(FIFO) (2)最近最久未使用頁(yè)面置換算法(LRU) (3)最佳置換頁(yè)面置換算法(OPT) 第三章 詳細(xì)設(shè)計(jì)3.1 模板設(shè)計(jì)圖3.2 函數(shù)模塊,程序流程3.2.1先進(jìn)先出頁(yè)面置換算法(FIFO)是用隊(duì)列存儲(chǔ)內(nèi)存中的頁(yè)面,隊(duì)列
9、的特點(diǎn)是先進(jìn)先出,與該算法是一致的,所以每當(dāng)發(fā)生缺頁(yè)時(shí),就從隊(duì)頭刪除一頁(yè),而從隊(duì)尾加入缺頁(yè)?;蛘呓柚o助數(shù)組timemSIZE記錄物理塊中對(duì)應(yīng)頁(yè)面的進(jìn)入時(shí)間,每次需要置換時(shí)換出進(jìn)入時(shí)間最小的頁(yè)面。3.2.2最近最久未使用頁(yè)面置換算法(LRU) 是用一維數(shù)組pagepSIZE存儲(chǔ)頁(yè)面號(hào)序列,memerymSIZE是存儲(chǔ)裝入物理塊中的頁(yè)面。數(shù)組flag10標(biāo)記頁(yè)面的訪問(wèn)時(shí)間。每當(dāng)使用頁(yè)面時(shí),刷新訪問(wèn)時(shí)間。發(fā)生缺頁(yè)時(shí),就從物理塊中頁(yè)面標(biāo)記最小的一頁(yè),調(diào)出該頁(yè),換入所缺的頁(yè)面。3.2.3最佳置換頁(yè)面置換算法(OPT) 是用一維數(shù)組pagepSIZE存儲(chǔ)頁(yè)面號(hào)序列,memerymSIZE是存儲(chǔ)裝入物理塊
10、中的頁(yè)面。數(shù)組nextmSIZE記錄物理塊中對(duì)應(yīng)頁(yè)面的最后訪問(wèn)時(shí)間。每當(dāng)發(fā)生缺頁(yè)時(shí),就從物理塊中找出最后訪問(wèn)時(shí)間最大的頁(yè)面,調(diào)出該頁(yè),換入所缺的頁(yè)面。第四章 設(shè)計(jì)結(jié)果及分析4.1 運(yùn)行 總結(jié) 通過(guò)這次頁(yè)面置換模擬實(shí)驗(yàn),我對(duì)操作系統(tǒng)這門課程有了更加深刻的了解,自己的編程能力有了一定的提高。把書中的理論知識(shí)和實(shí)踐相結(jié)合,使我的知識(shí)水平在原有的基礎(chǔ)上有了一定的進(jìn)步,能夠熟練的掌握一些關(guān)于內(nèi)存分配管理的一些算法。而在實(shí)現(xiàn)FIFO算法后,由于沒能掌握LRU算法的過(guò)程導(dǎo)致實(shí)現(xiàn)時(shí)花了很多時(shí)間。在調(diào)試的過(guò)程中也出現(xiàn)的大多是關(guān)于內(nèi)存分配和數(shù)組地址越界的問(wèn)題,比如關(guān)于循環(huán)時(shí)各個(gè)數(shù)的遞增,還有就是顯示給個(gè)數(shù)組的內(nèi)容
11、等問(wèn)題。就因?yàn)檫@些問(wèn)題,多次造成了淘汰序列出錯(cuò)。 理論上,三種替換算法的命中率由高到底排列應(yīng)該是OPT>LRU>FIFO。實(shí)際上,從實(shí)驗(yàn)數(shù)據(jù)觀測(cè)得到,存在這種由高到低的趨勢(shì),由page=4時(shí)可以觀測(cè)到,但是效果不是很明顯。一開始做這個(gè)實(shí)驗(yàn)時(shí),首先是看書,先把書上的替換算法知識(shí)點(diǎn)弄明白,要明白各種算法的優(yōu)缺點(diǎn)和相互之間衍生互補(bǔ)關(guān)系。這三個(gè)算法中,難以實(shí)現(xiàn)的是LRU算法,因?yàn)樗婕暗皆L問(wèn)時(shí)間的計(jì)算,而且它的開銷也比較大。OPT算法次難,它需要計(jì)算最近訪問(wèn)時(shí)間,并替換最近訪問(wèn)時(shí)間最大的頁(yè)。而FIFO實(shí)現(xiàn)起來(lái)比較容易,F(xiàn)IFO算法保持先進(jìn)先出,因此需要一個(gè)先進(jìn)先出隊(duì)列。 這次實(shí)驗(yàn)大大提高了
12、我的分析能力、編程能力和綜合能力,找出并改正了自己的許多錯(cuò)誤與不足之處,為在畢業(yè)后在就業(yè)市場(chǎng)上提高自己的競(jìng)爭(zhēng)力打下了堅(jiān)實(shí)的基礎(chǔ)。 參考文獻(xiàn)1嚴(yán)蔚敏 吳偉民 數(shù)據(jù)結(jié)構(gòu) 清華大學(xué)出版社 20052譚浩強(qiáng). C語(yǔ)言程序設(shè)計(jì). 清華大學(xué)出版社, 20053于帆, 趙妮. 程序設(shè)計(jì)基礎(chǔ)(C語(yǔ)言版). 清華大學(xué)出版社, 2006 4湯小丹, 梁紅兵, 哲鳳屏, 湯子瀛. 計(jì)算機(jī)操作系統(tǒng). 西安電子科技大學(xué)出版社, 2014 附錄#include <stdio.h>#include <stdlib.h>#include <string.h>#ifndef _UNISTD_
13、H#define _UNISTD_H#include <IO.H>#include <PROCESS.H>#endif#define TRUE 1#define FALSE 0#define INVALID -1#define total_instruction 320 /指令流長(zhǎng)#define total_vp 32 /虛頁(yè)長(zhǎng)#define clear_period 50 /清周期typedef struct /頁(yè)面結(jié)構(gòu) int pn,/頁(yè)面序號(hào)pfn,/頁(yè)面所在內(nèi)存區(qū)的幀號(hào)counter,/單位時(shí)間內(nèi)訪問(wèn)次數(shù)time;/上次訪問(wèn)的時(shí)間pl_type;pl_type
14、pltotal_vp; /頁(yè)面結(jié)構(gòu)數(shù)組struct pfc_struct /頁(yè)面控制結(jié)構(gòu) int pn,/頁(yè)面號(hào) pfn;/內(nèi)存區(qū)頁(yè)面的幀號(hào) struct pfc_struct *next;/頁(yè)面指針,用于維護(hù)內(nèi)存緩沖區(qū)的鏈?zhǔn)浇Y(jié)構(gòu);typedef struct pfc_struct pfc_type; /主存區(qū)頁(yè)面控制結(jié)構(gòu)別名pfc_type pfctotal_vp, /主存區(qū)頁(yè)面控制結(jié)構(gòu)數(shù)組*freepf_head, /主存區(qū)頁(yè)面控制結(jié)構(gòu)的空閑頁(yè)面頭指針*busypf_head, /主存區(qū)頁(yè)面控制結(jié)構(gòu)的忙頁(yè)面頭指針*busypf_tail; /主存區(qū)頁(yè)面控制結(jié)構(gòu)的忙頁(yè)面尾指針int dise
15、ffect; /頁(yè)錯(cuò)誤計(jì)數(shù)器,初次把頁(yè)面載入主存時(shí)也當(dāng)做頁(yè)錯(cuò)誤int atotal_instruction; /隨即指令流數(shù)組int pagetotal_instruction; /指令對(duì)應(yīng)的頁(yè)面號(hào)int offsettotal_instruction; /指令所在頁(yè)面中的偏移量int initialize(int);/初始化頁(yè)面結(jié)構(gòu)數(shù)組和頁(yè)面控制結(jié)構(gòu)數(shù)組int FIFO(int);/先進(jìn)先出算法int LRU(int);/最近最久未使用算法int OPT(int);/最佳置換算法/*int CLOCK(int);/簡(jiǎn)單時(shí)鐘(鐘表)算法*/int main( ) int s;/隨機(jī)數(shù)inti;
16、 srand(10*getpid(); /*每次運(yùn)行時(shí)進(jìn)程號(hào)不同,用來(lái)作為初始化隨機(jī)數(shù)隊(duì)列的"種子"*/ s = (int)(float)(total_instruction-1)*(rand()/(RAND_MAX+1.0);printf("n-隨機(jī)產(chǎn)生指令流-n"); for (i=0; i<total_instruction; i+=4) /產(chǎn)生指令隊(duì)列 ai=s; /任選一指令訪問(wèn)點(diǎn)m ai+1=ai+1; /順序執(zhí)行一條指令 ai+2=(int)(float)ai*(rand()/(RAND_MAX+1.0); /執(zhí)行前地址指令m'
17、; ai+3=ai+2+1; /順序執(zhí)行一條指令 printf("%6d%6d%6d%6dn", ai,ai+1,ai+2,ai+3); s = (int)(float)(total_instruction-1)-ai+2)*(rand()/(RAND_MAX+1.0) + ai+2; printf("-n");for (i=0;i<total_instruction;i+) /將指令序列變換成頁(yè)地址流 pagei=ai/10; offseti=ai%10; printf("n-不同頁(yè)面工作區(qū)各種替換策略的命中率表-n"); p
18、rintf("Paget FIFOt LRUt OPTn"); for(i=4;i<=32;i+) /用戶內(nèi)存工作區(qū)從個(gè)頁(yè)面到個(gè)頁(yè)面 printf(" %2d t",i); FIFO(i); LRU(i); OPT(i); printf("n"); return 0;/初始化頁(yè)面結(jié)構(gòu)數(shù)組和頁(yè)面控制結(jié)構(gòu)數(shù)組/total_pf; 用戶進(jìn)程的內(nèi)存頁(yè)面數(shù)int initialize(int total_pf) int i; diseffect=0; for(i=0;i<total_vp;i+)pli.pn=i;pli.pfn=IN
19、VALID; /置頁(yè)面所在主存區(qū)的幀號(hào)為-1.表示該頁(yè)不在主存中pli.counter=0;/置頁(yè)面結(jié)構(gòu)中的訪問(wèn)次數(shù)為pli.time=-1;/置頁(yè)面結(jié)構(gòu)中的上次訪問(wèn)的時(shí)間為-1for(i=0;i<total_pf-1;i+)pfci.next=&pfci+1; /建立pfci-1和pfci之間的鏈接pfci.pfn=i; /初始化主存區(qū)頁(yè)面的幀號(hào)pfctotal_pf-1.next=NULL;pfctotal_pf-1.pfn=total_pf-1;freepf_head=&pfc0;/主存區(qū)頁(yè)面控制結(jié)構(gòu)的空閑頁(yè)面頭指針指向pfc0return 0;/最近最久未使用算法
20、/int total_pf; 用戶進(jìn)程的內(nèi)存頁(yè)面數(shù)int LRU (int total_pf) int MinT;/最小的訪問(wèn)時(shí)間,即很久沒被訪問(wèn)過(guò)int MinPn;/擁有最小的訪問(wèn)時(shí)間的頁(yè)的頁(yè)號(hào)int i,j;int CurrentTime;/系統(tǒng)當(dāng)前時(shí)間 initialize(total_pf);/初始化頁(yè)面結(jié)構(gòu)數(shù)組和頁(yè)面控制結(jié)構(gòu)數(shù)組 CurrentTime=0;diseffect=0;for(i=0;i<total_instruction;i+)if(plpagei.pfn=INVALID) /頁(yè)面失效diseffect+;/頁(yè)錯(cuò)誤次數(shù)加 if(freepf_head=NULL)
21、 /無(wú)空閑頁(yè)面 MinT=100000; for(j=0;j<total_vp;j+) /找出time的最小值,表明該頁(yè)很久沒被訪問(wèn)過(guò) if(MinT>plj.time&&plj.pfn!=INVALID) MinT=plj.time; MinPn=j; freepf_head=&pfcplMinPn.pfn; /最久沒被訪問(wèn)過(guò)的頁(yè)被釋放 plMinPn.pfn=INVALID; /最久沒被訪問(wèn)過(guò)的頁(yè)被換出主存 plMinPn.time=-1;/最久沒被訪問(wèn)過(guò)的頁(yè)的訪問(wèn)時(shí)間置為無(wú)效 freepf_head->next=NULL; plpagei.pfn
22、=freepf_head->pfn; /有空閑頁(yè)面,把相應(yīng)的頁(yè)面換入主存,并把pfn改為相應(yīng)的幀號(hào) plpagei.time=CurrentTime;/令訪問(wèn)時(shí)間為當(dāng)前系統(tǒng)時(shí)間 freepf_head=freepf_head->next; /減少一個(gè)空閑頁(yè)面elseplpagei.time=CurrentTime; /命中則刷新該單元的訪問(wèn)時(shí)間CurrentTime+; /系統(tǒng)當(dāng)前時(shí)間加 printf("%6.3ft",1-(float)diseffect/320);return 0;/最佳置換算法/int total_pf; 用戶進(jìn)程的內(nèi)存頁(yè)面數(shù)int OPT
23、(int total_pf)int i,j;int MaxD;/將來(lái)最近一次訪問(wèn)的距離的最大值(以時(shí)間單元度量)int MaxPn;/將來(lái)最近一次訪問(wèn)的距離的最大值的頁(yè)號(hào)int dis;/距離計(jì)數(shù)器int disttotal_vp;/距離數(shù)組,保存距離上一次訪問(wèn)的時(shí)間差距個(gè)數(shù)initialize(total_pf);/初始化頁(yè)面結(jié)構(gòu)數(shù)組和頁(yè)面控制結(jié)構(gòu)數(shù)組diseffect=0;for(i=0;i<total_instruction;i+)if(plpagei.pfn=INVALID)/頁(yè)面失效diseffect+;/頁(yè)錯(cuò)誤次數(shù)加if(freepf_head=NULL)/無(wú)空閑頁(yè)面for(
24、j=0;j<total_vp;j+)if(plj.pfn!=INVALID)/如果該頁(yè)在主存中distj=100000;/ 該頁(yè)關(guān)聯(lián)的距離值改為最大值elsedistj=0;/如果不在該頁(yè)主存中,該頁(yè)關(guān)聯(lián)的距離值改為dis=1;/初始距離值為for(j=i+1;j<total_instruction;j+) /從要替換的指令的下一條算起,if(plpagej.pfn!=INVALID &&plpagej.counter=0)/如果該頁(yè)在主存中,并且是將要最近訪問(wèn)的頁(yè)/if(plpagej.pfn!=INVALID && distpagej=10000
25、0) /此條語(yǔ)句原理與上相同distpagej=dis;/距離值改為displpagej.counter=1;/使訪問(wèn)次數(shù)標(biāo)志加,區(qū)別第一次訪問(wèn)和第二次訪問(wèn)dis+;MaxD=-1;for(j=0;j<total_vp;j+)plj.counter=0;/重置訪問(wèn)次數(shù)為if(MaxD<distj)/查找將來(lái)最近一次訪問(wèn)的距離的最大值及其序號(hào)MaxD=distj;MaxPn=j;freepf_head=&pfcplMaxPn.pfn; /替換將來(lái)一段時(shí)間最久訪問(wèn)的頁(yè)freepf_head->next=NULL;plMaxPn.pfn=INVALID;plpagei.pfn=freepf_head->pfn; /把當(dāng)前頁(yè)換入主存中,并且把當(dāng)前頁(yè)的pfn改為換入頁(yè)的幀號(hào),freepf_head=freepf_head->next; /減少一個(gè)空閑頁(yè)面/if/forprintf(&qu
溫馨提示
- 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ù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025年計(jì)算機(jī):IT.程序員職業(yè)技能資格知識(shí)考試題與答案
- 主題婚禮策劃與流程
- 全科醫(yī)學(xué)轉(zhuǎn)崗培訓(xùn)課件
- 宣傳信息工作培訓(xùn)
- 個(gè)人能力培訓(xùn)教程課件
- 物業(yè)安全人員崗前培訓(xùn)
- 園林景觀設(shè)計(jì)與施工培訓(xùn)課件
- 車輛維修報(bào)賬合同協(xié)議
- 《金融投資機(jī)構(gòu)介紹》課件
- 《臨床診斷膽石癥現(xiàn)象》課件
- GA/T 1556-2019道路交通執(zhí)法人體血液采集技術(shù)規(guī)范
- 作業(yè)現(xiàn)場(chǎng)安全監(jiān)督檢查卡(配電)
- 幼兒園繪本故事:《小熊不刷牙》
- 安全生產(chǎn)會(huì)議記錄(12個(gè)月)
- 旅行管家實(shí)務(wù)全套ppt課件最全電子教案完整版教學(xué)教程整套全書課件ppt
- 做好孩子的引路人課件
- 麗聲北極星分級(jí)繪本第一級(jí)上My Noisy Schoolbag教學(xué)設(shè)計(jì)
- (完整版)管理經(jīng)濟(jì)學(xué)題庫(kù)
- 畢業(yè)設(shè)計(jì)粗飼料粉碎機(jī)的設(shè)計(jì)全套CAD圖紙
- 植物基酸奶項(xiàng)目說(shuō)明(范文模板)
- 鈑金報(bào)價(jià)計(jì)算表(強(qiáng))
評(píng)論
0/150
提交評(píng)論