请求页式存储管理中常用页面置换算法.docx
- 文档编号:9681233
- 上传时间:2023-05-20
- 格式:DOCX
- 页数:18
- 大小:81.93KB
请求页式存储管理中常用页面置换算法.docx
《请求页式存储管理中常用页面置换算法.docx》由会员分享,可在线阅读,更多相关《请求页式存储管理中常用页面置换算法.docx(18页珍藏版)》请在冰点文库上搜索。
请求页式存储管理中常用页面置换算法
计算机操作系统
实验报告
课程名称
计算机操作系统
实验项目名称
请求页式存储管理中常用页面置换算法模拟
学号
20111214034
班级
计1103
姓名
韩瑶
专业
计算机科学与技术
实验地点
12661实验室
济南大学
信息科学与技术学院
2013年月日
一、实验概述
1.实验名称
请求页式存储管理中常用页面置换算法管理
2.实验目的
(1)了解内存分页管理策略
(2)掌握调页策略
(3)掌握一般常用的调度算法
(4)学会各种存储分配算法的实现方法。
(5)了解页面大小和内存实际容量对命中率的影响
3.实验内容
(1)采用页式分配存储方案,通过分别计算不同算法的命中率来比较算法的优劣,同时也考虑页面大小及内存实际容量对命中率的影响;
(2)实现算法(最优置换算法) 、算法() 、算法()的模拟;
(3)使用某种编程语言模拟页面置换算法。
二、实验环境
C语言
三、实验过程
1.设计思路和流程图
选择置换算法,先输入所有页面号,为系统分配物理块,依次进行置换
将页号放入物理块中,编号加1
引用串编号大于物理块数?
载入页号序列,从第0个得到页号
开始
页号在物理块中?
根据选择的置换算法完成置换
页号序列载完?
结束
是
否
是
是
是
是
2.算法实现
(1)基本思想:
是用一维数组[]存储页面号序列,[]是存储装入物理块中的页面。
数组[]记录物理块中对应页面的最后访问时间。
每当发生缺页时,就从物理块中找出最后访问时间最大的页面,调出该页,换入所缺的页面。
(2)基本思想:
是用队列存储内存中的页面,队列的特点是先进先出,与该算法是一致的,所以每当发生缺页时,就从队头删除一页,而从队尾加入缺页。
或者借助辅助数组[]记录物理块中对应页面的进入时间,每次需要置换时换出进入时间最小的页面。
(3)基本思想:
是用一维数组[]存储页面号序列,[]是存储装入物理块中的页面。
数组[10]标记页面的访问时间。
每当使用页面时,刷新访问时间。
发生缺页时,就从物理块中页面标记最小的一页,调出该页,换入所缺的页面。
3.源程序并附上注释
<>
<>
/*全局变量*/
;/*物理块数*/
;/*页面号引用串个数*/
[10]={0};/*物理块中的页号*/
[100]={0};/*页面号引用串*/
[100][10]={0};/*辅助数组*/
/*置换算法函数*/
();
();
();
/*辅助函数*/
(t);
();
();
();
/*主函数*/
()
{
;
("0A");
();
("┃请按任意键进行初始化操作...┃\n");
("┗━━━━━━━━━━━━━━━━━━━━━━━━━┛\n");
(">>>");
();
("");
("0B");
("请输入物理块的个数(M<=10):
");
("");
("请输入页面号引用串的个数(P<=100):
");
("");
("请依次输入页面号引用串(连续输入,无需隔开):
");
(0<)
("%1d"[i]);
();
("");
("0E");
{
("输入的页面号引用串为:
");
(0<=
(1)/20)
{
(20*k;(i<)(i<20*
(1)))
{
((
(1)%200)((
(1)%20)
(1)))
("\n"[i]);
(""[i]);
}
}
("***********************\n");
("*请选择页面置换算法:
\t\t\t*\n");
("**\n");
("*1.先进先出()2.最近最久未使用()*\n");
("*3.最佳()4.退出*\n");
("***********************\n");
("请选择操作:
[]\b\b");
("");
()
{
1:
();
;
2:
();
;
3:
();
;
4:
("");
("0A");
();/*显示设计者信息后退出*/
("┃谢谢使用页面置换算法演示器!
正版授权㊣┃\n");
("┗━━━━━━━━━━━━━━━━━━━━━━━━━┛\n");
(0);
:
("输入错误,请重新输入:
");
}
("按任意键重新选择置换算法:
>>>");
();
("");
}(4);
();
}
/*载入数据*/
()
{
i;
("0D");
("╔════════════╗\n");
("║正在载入数据,请稍候!
!
!
║\n");
("╚════════════╝\n");
("...\n");
("O");
(0<51)
("\b");
(0<50)
{
(()/2);
(">");
}
("\.\n载入成功,按任意键进入置换算法选择界面:
>>>");
();
}
/*设置延迟*/
()
{
i;
(>0)
{
(0<124)
{
("\b");
}
}
}
/*显示设计者信息*/
()
{
("┏━━━━━━━━━━━━━━━━━━━━━━━━━┓\n");
("┃课题三:
页面置换算法┃\n");
("┃学号:
20111214034┃\n");
("┃姓名:
韩瑶┃\n");
("┣━━━━━━━━━━━━━━━━━━━━━━━━━┫\n");
}
(t)
{
;
;
(0<=
(1)/20)
{
(20*k;(i<)(i<20*
(1)))
{
((
(1)%200)((
(1)%20)
(1)))
("\n"[i]);
(""[i]);
}
(0<)
{
(20*k;(i<20*k)(i<))
{
(i>)
(""[i][j]);
("||");
}
(20*k;(i<)(i<20*
(1)))
{
(00<)
([i][l][1][l])
;
()/*页面在物理块中*/
("");
(""[i][j]);
}
/*每行显示20个*/
(200)
;
("\n");
}
}
("\n");
("缺页次数:
\t\t");
("缺页率:
\n");
("置换次数:
\t\t");
("访问命中率:
\n",(())*100);
("\n");
}
/*计算过程延迟*/
()
{
i;
("正在进行相关计算,请稍候");
(1<20)
{
(15);
(40)
("\b\b\b\b\b\b\b\b\b\b\b\b");
("Θ");
}
(0<30("\b"));
(0<30(""));
(0<30("\b"));
}
/*先进先出页面置换算法*/
()
{
[10]={0};
[10]={0};/*记录进入物理块的时间*/
;
0;/*记录换出页*/
0;/*记录置换次数*/
/*前个数直接放入*/
(0<)
{
[i][i];
[i];
(0<)
[i][j][j];
}
(<)
{
/*判断新页面号是否在物理块中*/
(00<)
{
([j][i])
;
}
()/*如果不在物理块中*/
{
;
/*计算换出页*/
[0]<[1]?
0:
1;
(2<)
([m]<[])
;
[][i];
[];/*记录该页进入物理块的时间*/
(0<)
[i][j][j];
}
{
(0<)
[i][j][j];
}
}
();
();
}
/*最近最久未使用置换算法*/
()
{
[10]={0};
[10]={0};/*记录页面的访问时间*/
;
0;/*记录换出页*/
0;/*记录置换次数*/
/*前个数直接放入*/
(0<)
{
[i][i];
[i];
(0<)
[i][j][j];
}
(<)
{
/*判断新页面号是否在物理块中*/
(00<)
{
([j][i])
;
[j];/*刷新该页的访问时间*/
}
()/*如果不在物理块中*/
{
;
/*计算换出页*/
[0]<[1]?
0:
1;
(2<)
([m]<[])
;
[][i];
[];/*记录该页的访问时间*/
(0<)
[i][j][j];
}
{
(0<)
[i][j][j];
}
}
();
();
}
/*最佳置换算法*/
()
{
[10]={0};
[10]={0};/*记录下一次访问时间*/
;
;/*记录换出页*/
0;/*记录置换次数*/
/*前个数直接放入*/
(0<)
{
[i][i];
(0<)
[i][j][j];
}
(<)
{
/*判断新页面号是否在物理块中*/
(00<)
{
([j][i])
;
}
()/*如果不在物理块中*/
{
;
/*得到物理快中各页下一次访问时间*/
(0<)
{
(1<)
([m][l])
;
[m];
}
/*计算换出页*/
[0]>[1]?
0:
1;
(2<)
([m]>[])
;
/*下一次访问时间都为,则置换物理块中第一个*/
[][i];
(0<)
[i][j][j];
}
{
(0<)
[i][j][j];
}
}
();
();
}
6.程序运行时的初值和运行结果
1.按任意键进行初始化:
2.载入数据:
3.进入置换算法选择界面:
4.运算中延迟操作
5.三种算法演示结果:
四、实验体会
掌握了一般的调度算法,了解了页面大小和内存实际容量对命中率的影响
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 请求 存储 管理 常用 页面 置换 算法