目录
1.设计目的 2
2.课设要求 2
3.系统分析. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
4.系统设计. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .3
4 1问题分析. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
.2程序整体框图
4.3 I算法 5
4.4 LR算法
.5 T算法
5功能与测试. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .8
5. 1开始界面 8
2 FIO算法
5 3 LRU算法 10
5.4 P算法 1
6结论 1
7.附录 1
1.设计目的
1、存储管理的主要功能之一是合理地分配空间。请求页式管理是一种常用的虚拟存储管理技术。本次设计的目的是通过请求页式存储管理中页面置换算法模拟设计 了解虚拟存储技术的特点掌握请求页式管理的页面置换算法。
2、提高自己的程序设计能力、 提高算法设计质量与程序设计素质;
2.课设要求
设计一个请求页式存储管理方案。并编写模拟程序实现之。要求包含
1.过随机数产生一个指令序列,共20条指令。其地址按下述原则生成
①5 %的指令是顺序执行的
②2%的指令是均匀分布在前地址部分
③25%的指令是均匀分布在后地址部分;
具体的实施方法是:
在[0 3 9的指令地址之间随机选区一起点M;
顺序执行一条指令 即执行地址为M+1的指令;
在前地址[0 M+1]中随机选取一条指令并执行,该指令的地址为M’ ;
顺序执行一条指令,其地址为’ 1
在后地址[M’ +2,3 ]中随机选取一条指令并执行
重复A—E,直到执行3 次指令。
2.指令序列变换成页地址流
设 (1)页面大小为1K
用户内存容量为4页到2页;
用户虚存容量为2。
在用户虚存中,按每K存放1 条指令排列虚存地址,即 0条指令在虚存中的存放方式为:
第0条—第9条指令为第页(对应虚存地址为[0 9] ;
第1 条—第19条指令为第1页对应虚存地址为 , 19] ;
。 。 。 。 。 。 。 。 。 。 。 。 。 。 。 。 。 。 。 。 。
第310条—第319条指令为第31页对应虚存地址为[31 19 )
按以上方式,用户指令可组成32页。
3.计算并输出下述各种算法在不同内存容量下的命中率。
FIO先进先出的算法
LRU最近最少使用算法
PT最佳淘汰算法(先淘汰最不常用的页地址)
.系统分析
在多道程序环境下,要使程序运行,必须先为之创建进程。而创建进程的第一步是将程序和数据装入内存。存储器实现的功能主要是内存分配等功能,本模拟系统所要实现的就是将进程的程序和数据装入内存物理块。具体需要实现的功能如下:
1、读入进程大小,进行分页,确定每一页的指令地址范围
2、读入一个指令,确定其所在页面读入内存物理块中。物理块空闲直接读入物理块已满指向下步操作。
3、物理块已满,将要淘汰原来首先进入到内存中的页面,即换出;然后将现在的指令地址页面读入物理块中 即换入。
4.系统设计
4.1问题分析
分页存储管理是将一个进程的逻辑地址空间分成若干个大小相等的片,称为页面或页并为各页加以编号。相应地,也把内存空间分成与页面相同大小的
若干个存储块,称为物理块在为进程分配内存时,以块为单位将进程中的若干个页分别装入到多个可以不相邻接的物理块中
系统为每个进程建立一个页表,页表给出逻辑页号和具体内存块号相应的关系。一个页表中包含若干个表目,表目的自然序号对应于用户程序中的页号,表目中的块号是该页对应的物理块号。
请求页式存储管理方式是一种实现虚拟存储器的方式,是指在进程开始运行之前不是装入全部页面而是装入一个或零个页面,之后根据进程运行的需要,动态装入其它页面。当内存空间已满而又需要装入新的页面时,则根据某种算法淘汰某个页面,以便装入新的页面。
请求页式存储管理主要需要解决以下问题:
系统如何获知进程当前所需页面不在主存;当发现缺页时如何把所缺页面调入主存;当主存中没有空闲的页框时,为了要接受一个新页,需要把老的一页淘汰出去,根据什么策略选择欲淘汰的页面。
4.2程序整体框图
图-1 程序整体框图
由于该算法规模较小,可以将该系统划分为三块分别是: FIFO算法模块、 LRU算法模块、 算法模块。
4.3 FIFO算法
基于程序总是按线形顺序来访问物理空间这一假设,总是淘汰最先调入主存的页面 即淘汰在主存中驻留时间最长的页面。
.4 RU算法
L置换算法是根据页面调入内存后的使用情况进行决策的。 由于无法预测各页面将来的使用情况,只能利用“最近的过去”作为“最近的将来”的近似,因此,LRU置换算法是选择最近最久未使用的页面予以淘汰。该算法赋予每个
页面一个访问字段,用来记录一个页面自上次被访问以来所经历的次数 unt 当须淘汰一个页面时,选择现有页面中其count值最大的,即最近最久未使用的页面予以淘汰。
. O算法
当要调入一页而必须淘汰旧页时,应该淘汰以后不再访问的页或距现在最长时间后要访问的页。它所产生的缺页数最少。这只是一种理想的情况。
图4 O算法程序流程图
.功能与测试
5 界面
用户进入系统之后,会有一个选择算法的界面,如下图所示:
选择内存容量,然后点击“随机生成页地址流”按钮,生成页地址流与页面走向,如下图所示:
图5-1 选择界面
5 2 FI算法
韩国服务器怎么样?韩国云服务器租用推荐?韩国服务器距离中国近,有天然的地域优势,韩国服务器速度快而且非常稳定!有不少有亚洲市场的外贸公司选择韩国服务器开拓业务,韩国服务器因自身的优势也受到不少用户的青睐。目前的IDC市场上,韩国、香港、美国三个地方的服务器几乎占据了海外服务器的百分之九十以上。韩国服务器相比美国服务器来说速度更快,而相比香港机房来说则带宽更充足,占用市场份额非常大。那么,韩国服务器...
Hostodo又发布了几款针对7月4日美国独立日的优惠套餐(Independence Day Super Sale),均为年付,基于KVM架构,采用NVMe硬盘,最低13.99美元起,可选拉斯维加斯或者迈阿密机房。这是一家成立于2014年的国外VPS主机商,主打低价VPS套餐且年付为主,基于OpenVZ和KVM架构,产品性能一般,支持使用PayPal或者支付宝等付款方式。商家客服响应也比较一般,推...
我们先普及一下常识吧,每年9月的第一个星期一是美国劳工节。于是,有一些服务商会基于这些节日推出吸引用户的促销活动,比如RackNerd有推出四款洛杉矶和犹他州独立服务器,1G带宽、5个独立IP地址,可以配置Windows和Linux系统,如果有需要独立服务器的可以看看。第一、劳工节促销套餐这里有提供2个套餐。两个方案是选择犹他州的,有2个方案是可以选择洛杉矶机房的。CPU内存SSD硬盘配置流量价格...