- 1、本文档共9页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
页面置换算法源程序实验汇报
页面置换
一.目的和要求
(一)目的
存储管理的主要功能之一是合理地分配空间。请求页式管理是一种常用的虚拟存储管理技术。
本实验的目的是通过请求页式管理中页面置换算法的模拟设计,来了解虚拟存储技术的特点,掌握请求页式管理的页面置换算法。
(二)要求
模拟页式虚拟存储管理中硬件的地址转换和缺页中断,并用先进先出调度算法(FIFO)处理缺页中断。
二.实验内容
(1)为了装入一个页面而必须调出一页时,如果被选中调出的页面在执行中没有修改过,则不必把该页写到磁盘上。因此,在页表中可以增加是否修改过的标志,当执行“存”指令 “写”指令是把对应页的修改标志置“1”表示该页修改过,为“0”表示该页没有修改过。
(2)设计一个地址转换程序来模拟硬件的地址转换和缺页中断。当访问的页在主存时则形成绝对地址??但不去模拟指令的执行,可用输出转换后的绝对地址来表示一条指令已完成。当访问的页不在主存时则输出“*该页页号”来表示硬件产生了一次缺页中断。调用模拟地址转换程序。
(3)编制一个FIFO页面调试程序。FIFO页面调试算法总是先调出作业中最先进入主存的那一页,因此,可以用一个数组来构成页号队列。数组中每个元素是该作业已在主存的页面好,假定分配给作业的主存块数为m,且该作业开始的m页已装入主存,则数组可有m个元素组成:P[0],P[1],…,P[m-1] 她们的初值为:P[0]:=0,P[1]:=1,…,P[m-1]:=m-1
用一指针k指示当要装入新页时应调出的页在数组的位置,k的初值为0。当产生缺页中断后,操作系统总是选择P[k]所指出的页面调出,然后执行:
P[k]:=要装入的新页页号
K:=(k+1)mod m
(4)假定主存的每块长度为1024个字节,现有一个共7页的作业,其副本也已在磁盘上.系统为该作业分配了4块主存块,且该作业的第0页至第3页已经装入主存,其余3页尚未装入主存,该作业的页表如下:
页号标志主存块号修改标志在磁盘上的位置0150011118001221900133110021400002250000236000121
假设该作业依次执行的指令如下:
操作页号页内地址+0070+1050*2015存3021取0056-6040
三.实验流程图
开始
取一条指令
取指令中访问的页号=L
查 页 表
页标记=1?
形成绝对地址
是“存”指令?
置L页修改标记“1”
输出绝对地址
输出“*页号”
有后继指令?
取一条指令
结 束
J:=P[k]
J页的修改标记=1?
输出“OUTj”
输出“INL”
P[k]:=L k:=(k+1) mod m
修改页面
是
否
是
否
否(产生缺页中断)
是
否
四.实验程序
#include iostream
#include iostream.h
#include iomanip.h
#include ctype.h
#define N 6//实验中假定的页表长度
#define M 4 //主存物理块数
struct
{int lnumber; //页号
int flag; //表示该页是否在主存,1表示在主存,0表示不在主存
int pnumber; //该页所在主存块的块号
int write; //该页是否被修改过,1表示修改过,0表示没有修改过
int dnumber; //该页存放在磁盘上的位置,即磁盘块号
}page[N]; //页表定义
int p[M]; //用数组模拟]FIFO算法中的队列(使用循环队列)
int head;
void initial(void);
int do_mmap(int); //模拟地址转换
void do_page_fault(int); //缺页中断处理程序
void run_first_instructon(int); //执行进程的第一条指令
void run_a_instruction(int); //CPU执行一条指令
void print_page_and_fifoqueue(void); //输出页表和FIFO队列
main()
{
int laddress, paddress; //逻辑地址,物理地址
int lnumber, ad, pnumber; //页号,页内地址和物理块号
initial();
print_page_and_fifoqueue(); //输出页表和FIFO队列
您可能关注的文档
- 青岛市建筑工程脚手架和模板支撑系统安全管理规定secret.doc
- 青岛市建筑市场主体考核办法文件考试试卷1.doc
- 青岛市新建改建居住区指标[终稿].doc
- 青岛市机动车维修小企业质量信誉考核申请表.doc
- 青岛市洗染业等级评定和服务规范.doc
- 青岛市重点小学概况更最新.docx
- 青岛快速路24#桥施工的方案[条形基本梁跨为H型钢]sss.doc
- 青岛海尔资本成本案例.doc
- 青岛海尔集团财务报表剖析.doc
- 青岛汽车音响3菱劲炫汽车音响改装分享.doc
- 2025年广西百色边境管理支队招聘辅警10人笔试高频难、易错点备考题库及参考答案详解1套.docx
- 2025年工业和信息化部电子第五研究所招聘应届毕业生(第二批)笔试高频难、易错点备考题库及参考答案详.docx
- 2025年山东聊城江北水城旅游度假区教育事业单位选聘教师6人笔试高频难、易错点备考题库含答案详解.docx
- 2025年山东青岛市市南区所属事业单位招聘56人笔试备考题库及答案详解一套.docx
- 2025年广州市社会科学院高层次和急需紧缺人才招聘笔试高频难、易错点备考题库及完整答案详解1套.docx
- 2025年新疆伊犁师范大学引进高层次人才70人笔试备考题库带答案详解.docx
- 2025年新疆维吾尔自治区赴高校引才招聘1301人笔试高频难、易错点备考题库及完整答案详解1套.docx
- 2025年江苏常州工业职业技术学院招聘教师22人笔试备考题库带答案详解.docx
- 2025年山东菏泽鲁西新区教育系统引进高层次人才55人笔试备考题库附答案详解.docx
- 2025年新疆医科大学新疆国际医疗中心(新疆国际医院)招聘183人笔试高频难、易错点备考题库参考答案.docx
最近下载
- 第六章煤层气钻井完井工艺技术.ppt VIP
- WI-PM-004ALL100烧录器操作规范.doc VIP
- 2025年国企审计部内部招聘试题.pdf VIP
- 文稿传输otn原理及设备介绍.pptx VIP
- BS EN 50600-2-2-2019 信息技术.数据中心设施和基础设施.第2-2部分:供电和配电.pdf VIP
- 中医护理方案2017解读.pptx VIP
- 标准图集-08CJ17快速软帘卷门 透明分节门 滑升门 卷帘门.pdf VIP
- 驭胜s350及电路图n351第三阶段2013-11-13分动器.pdf VIP
- 2025年安全生产考试题库(林业行业安全规范)试题集.docx VIP
- 检验科质量与安全管理制度培训学习资料.pptx VIP
文档评论(0)