实验四-面置换算法代码(一)

上传人:新** 文档编号:486696155 上传时间:2022-12-20 格式:DOC 页数:17 大小:42.50KB
返回 下载 相关 举报
实验四-面置换算法代码(一)_第1页
第1页 / 共17页
实验四-面置换算法代码(一)_第2页
第2页 / 共17页
实验四-面置换算法代码(一)_第3页
第3页 / 共17页
实验四-面置换算法代码(一)_第4页
第4页 / 共17页
实验四-面置换算法代码(一)_第5页
第5页 / 共17页
点击查看更多>>
资源描述

《实验四-面置换算法代码(一)》由会员分享,可在线阅读,更多相关《实验四-面置换算法代码(一)(17页珍藏版)》请在金锄头文库上搜索。

1、实验四 页面置换算法模拟(2)一题目规定:设计一种虚拟存储区和内存工作区,编程序演示下述算法的具体实现过程,并计算访问命中率:规定设计主界面以灵活选择某算法,且如下算法都要实现1) 最佳置换算法(P):将后来永不使用的或许是在最长(将来)时间内不再被访问的页面换出。2) 先进先出算法(FFO):裁减最先进入内存的页面,即选择在内存中驻留时间最久的页面予以裁减。3)近来最久未使用算法(R):裁减近来最久未被使用的页面。4) 最不常常使用算法(LFU)二实验目的:、用C语言编写PT、IFO、LRU,LFU四种置换算法。2、熟悉内存分页管理方略。3、理解页面置换的算法。4、掌握一般常用的调度算法。5

2、、根据方案使算法得以模拟实现。6、锻炼知识的运用能力和实践能力。三有关知识:1虚拟存储器的引入: 局部性原理:程序在执行时在一较短时间内仅限于某个部分;相应的,它所访问的存储空间也局限于某个区域,它重要表目前如下两个方面:时间局限性和空间局限性。2虚拟存储器的定义: 虚拟存储器是只具有祈求调入功能和置换功能,能从逻辑上对内存容量进行扩大的一种存储器系统。3.虚拟存储器的实现方式: 分页祈求系统,它是在分页系统的基本上,增长了祈求调页功能、页面置换功能所形成的页面形式虚拟存储系统。 祈求分段系统,它是在分段系统的基本上,增长了祈求调段及分段置换功能后,所形成的段式虚拟存储系统。4页面分派: 平均

3、分派算法,是将系统中所有可供分派的物理块,平均分派给各个进程。 按比例分派算法,根据进程的大小按比例分派物理块。 考虑优先的分派算法,把内存中可供分派的所有物理块提成两部分:一部分按比例地分派给各进程;另一部分则根据个进程的优先权,合适的增长其相应份额后,分派给各进程。.页面置换算法:常用的页面置换算法有P、FIFO、LRU、Clok、LFU、PBA等。四设计思想: 选择置换算法,先输入所有页面号,为系统分派物理块,依次进行置换:OPT基本思想:是用一维数组agpSIZE存储页面号序列,memerymSIZE是存储装入物理块中的页面。数组xmSIE记录物理块中相应页面的最后访问时间。每当发生缺

4、页时,就从物理块中找出最后访问时间最大的页面,调出该页,换入所缺的页面。【特别声明】若物理块中的页面都不再使用,则每次都置换物理块中第一种位置的页面。FIFO基本思想:是用队列存储内存中的页面,队列的特点是先进先出,与该算法是一致的,因此每当发生缺页时,就从队头删除一页,而从队尾加入缺页。或者借助辅助数组timeSE记录物理块中相应页面的进入时间,每次需要置换时换出进入时间最小的页面。LRU基本思想:是用一维数组pgeSE存储页面号序列,memerymSI是存储装入物理块中的页面。数组flag10标记页面的访问时间。每当使用页面时,刷新访问时间。发生缺页时,就从物理块中页面标记最小的一页,调出

5、该页,换入所缺的页面。五.流程图:如下页所示将页号放入物理块中,编号加1引用串编号不小于物理块数?载入页号序列,从第0个得到页号开始页号在物理块中?根据选择的置换算法完毕置换页号序列载完?结束是否是是是是六.源代码:如下页所示【使用C语言】#ncude std.h#inclde#incld/*全局变量*/i SIE; /*物理块数/ pSIZE;页面号引用串个数/stt in memey00; /*物理块中的页号*ttic intpg00=; /*页面号引用串*/stati it emp1001;辅助数组*/*置换算法函数*/oidFIFO();void LU();vid OPT();/*辅助

6、函数*/vid prnt(unsine ntt);id desinB();vod downoad();void mDey(usig nt Delay);/*主函数/vid min() inti,k,cd;sstem(colo 0);desinB();rinf(请按任意键进行初始化操作. n);pif();prnt( );get();ystem(cls);sysem(coor 0B);rntf(请输入物理块的个数(M=10):);anf(,mS);pintf(请输入页面号引用串的个数(P=10):);scanf(%d,pIZE);u(请依次输入页面号引用串(持续输入,无需隔开):);fr(i=0

7、;ipZ;i+) caf(%1d,&paei);dood();system(cs);ystem(colr 0E); do ps(输入的页面号引用串为:);for(k=;(pSIZE-1)0;k+)fr(i=20*k;(p)&();/geth();syem(ls); while (od!=4);gch();/*载入数据oidwnloa()int i;yst(color 0D);pintf(n);ritf(正在载入数据,请稍候 !);rnf();itf(Lodig.n);prin( O);fo(=0;i51;i)pintf(b);for(i0;i);gch();/*设立延迟*/void mely(

8、unsge Delay) usignd nt i; fr(;Delay0;Day-) f(i=0;i2;i) intf(b); /*显示设计者信息oid desinBy()it(n);pintf( 页面置换算法 n);print(n);vidint(nsined it)int i,k,l;itag;or(k=;k=(pSE1)/20;+)for(i=20*k;(ipSIZE)&(i0*(+1));+)if(((i+1)20=)|(((+1))&(=pSIZE1)))rntf(%dn,pgei);elsepin(%d ,pag);for(=0;jmSE;j+)fo(i2*k;(=j)i( %d,tempij);lserint(| );f(i=mSIE+0*;(iSIZ)&(i20*(+);+)o(fla,0;lmSZ;+)(templ=tep-1)flag+;f(fag=

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 办公文档 > 解决方案

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号