- 33
- 0
- 约6.04千字
- 约 9页
- 2015-09-26 发布于重庆
- 举报
操作系统实验报告 页面置换
实验三 内存页面置换算法的设计实习内容
实习目的
本实习要求学生通过请求页式存储管理中页面置换算法模拟设计,了解虚拟存储技术的技术特点,掌握请求页式存储管理的页面置换算法。
LINUX中,为了提高内存利用率,提供了内外存进程对换机制,内存空间的分配和回收均以页为单位进行,一个进程只需将其一部分(段或页)调入内存便可运行,还支持请求调页的存储管理方式。
当进程在运行中需要访问某部分程序和数据时,发现其所在页面不在内存,就立即提出请求(向CPU发出缺中断),由系统将其所需页面调入内存。这种页面调入方式叫请求调页。
当CPU接收到缺页中断信号,中断处理程序先保存现场,分析中断原因,转入缺页中断处理程序。该程序通过查找页表,得到该页所在外存的物理块号。如果此时内存未满,能容纳新页,则启动磁盘I/O将所缺之页调入内存,然后修改页表。如果内存已满,则须按某种置换算法从内存中选出一页准备换出,是否重新写盘由页表的修改位决定,然后将缺页调入,修改页表。利用修改后的页表,去形成所要访问数据的物理地址,再去访问内存数据。整个页面的调入过程对用户是透明的。
实习实习struct pageInfor
{
int content;//页面号
int timer;//被访问标记
};
class PRA
{
public:
PRA(void);
int findSpace(void); //查找是否有空闲内存
int findExist(int curpage); //查找内存中是否有该页面
int findReplace(void); //查找应予置换的页面
void display(void); //显示
void FIFO(void); //FIFO算法
void LRU(void); //LRU算法
void BlockClear(void);//BLOCK清空,以便用另一种方法重新演示
pageInfor * block; //物理块
pageInfor * page; //页面号串
private:
};
FIFO页面置换算法
当需要访问一个新的页面时,首先调用findExist(i)函数来查看物理块中是否就有这个页面,若要查看的页面物理块中就有,则调用display函数直接显示,不需要替换页面;如果要查看的页面物理块中没有,就需要寻找空闲物理块放入,若存在有空闲物理块,则将页面放入;若没有空闲物理块,则调用findReplace函数替换页面。并将物理块中所有页面timer++。
LRU页面置换算法
当需要访问一个新的页面时,首先调用findExist(i)函数来查看物理块中是否就有这个页面
OPT页面置换算法
当需要访问一个新的页面时,也首先调用findExist(i)函数来查看物理块中是否就有这个页面寻找应予置换页面函数findReplace
比较三个物理块中的时间标记timer,找到时间最久的。
程序流程图
源程序结构分析
——程序结构
程序共有以下九个部分:
int findSpace(void);//查找是否有空闲内存
int findExist(int curpage);//查找内存中是否有该页面
int findReplace(void);//查找应予置换的页面
void display(void);//显示
void FIFO(void);//FIFO算法
void LRU(void);//LRU算法
void OPT(void);//OPT算法;
void BlockClear(void);//BLOCK清空,以便用另一种方法重新演示
int main() //主程序
源程序代码
#include iostream.h
#define Bsize 3
#define Psize 20
struct pageInfor
{
int content;//页面号
int timer;//被访问标记
};
class PRA
{
public:
PRA(void);
int findSpace(void);//查找是否有空闲内存
int findExist(int curpage);//查找内存中是否有该页面
int findReplace(void);//查找应予置换的页面
void display(void);//显示
void FIFO(void);//FIFO算法
void LRU(void);//LRU算法
void Optimal(void);//OPTIMAL算法
void BlockClear(void);//BLOCK恢复
pageInfor * block;//物理块
pageInfor * page;//页面号串
private:
};
PRA::PRA(vo
您可能关注的文档
- 很实用的pads技巧.doc
- 循环系统考试题.doc
- 循环链队列+课程设计.doc
- 循环队列的基本操作.doc
- 循证医学与经验医学的区别.pdf
- 微云API获取库视图支持的类型.pdf
- 微分中值定理应用的新研究.pdf
- 微安级数控恒流源的设计.pdf
- 微囊藻毒素合成机理的研究进展.pdf
- 微小RNA在宫颈癌中的研究进展.pdf
- 2型糖尿病性溃疡疾病防治指南解读.docx
- 2026四川乐山市峨眉山旅游股份有限公司招聘专业人才4人备考题库及完整答案详解一套.docx
- 2026四川乐山市峨眉山旅游股份有限公司招聘专业人才4人备考题库及答案详解一套.docx
- 2026四川乐山市峨眉山旅游股份有限公司招聘专业人才4人备考题库及完整答案详解1套.docx
- 2026四川乐山市峨眉山旅游股份有限公司招聘专业人才4人备考题库及完整答案详解.docx
- 2026四川乐山市峨眉山旅游股份有限公司招聘专业人才4人备考题库及参考答案详解1套.docx
- 2026四川乐山市峨眉山旅游股份有限公司招聘专业人才4人备考题库及一套完整答案详解.docx
- 2型糖尿病性毛细管间性肾小球硬化症(基-威氏综合征)疾病防治指南解读.docx
- 2026四川乐山市峨眉山旅游股份有限公司招聘专业人才4人备考题库及一套答案详解.docx
- 1月信用债策略月报:费率新规落地,信用债布局好时机.docx
最近下载
- 九上期末考试数学模拟.pdf VIP
- 2025年体育用品绿色技术专利行业报告.docx
- 2025年内蒙古呼和浩特市政府采购评审专家考试真题(附含答案).docx VIP
- 2023-2025中考化学真题分类汇编:专题05 元素考点01 元素及元素周期表.docx VIP
- 2025年内蒙古呼和浩特市政府采购评审专家考试真题含答案.docx VIP
- 98浙J30 卷帘门-标准图集.docx VIP
- 三年(2019-2021)中考真题化学-考点08原子结构(全国通用).docx VIP
- 2025年内蒙古呼和浩特市政府采购评审专家考试测试题及答案.docx VIP
- 二零二五版合同Amazon店铺代运营协议模板.docx VIP
- 《膝关节教学》课件.ppt VIP
原创力文档

文档评论(0)