第一范文网 - 专业文章范例文档资料分享平台

请求页式管理缺页中断模拟设计--FIFO、OPT

来源:用户分享 时间:2025/8/17 9:13:35 本文由loading 分享 下载这篇文档手机版
说明:文章内容仅供预览,部分内容可能不全,需要完整文档或者需要复制内容,请下载word后使用。下载word有问题请添加微信号:xxxxxxx或QQ:xxxxxx 处理(尽可能给您提供完整文档),感谢您的支持与谅解。

武汉理工大学《计算机操作系统教程》课程设计报告书

本科生课程设计成绩评定表

班级:物联网1001 姓名:张灏 学号:0121010340714 序号 1 2 3 4 5 6 评分项目 学习态度认真、遵守纪律 设计分析合理性 设计方案正确性、可行性、创造性 设计结果正确性 设计报告的规范性 设计验收 满分 10 10 20 40 10 10 总得分/等级 实得分 评语: 注:最终成绩以五级分制记。优(90-100分)、良(80-89分)、中(70-79分)、

及格(60-69分)、60分以下为不及格

指导教师签名:

2013年 月 日

12

12

武汉理工大学《计算机操作系统教程》课程设计报告书

附录: F1参考文献

[1]张尧学,史美林编著.计算机操作系统教程(第三版).清华大学出版社.2006 [2]闵联营,何克右主编.C++程序设计教程.武汉理工大学出版社.2005

F2源代码

以下文件在control.h中 #include

#include//格式化输出 #include//随机数的头文件 using namespace std; struct page{ };

class control{ public:

control();//构造函数 ~control();//析构函数

void init();//初始化函数,对页表,物理块进行初始化 void FIFO(); void OPT();

void print();//输出在物理块中当前存在的页号 int page_num; //////页面号

int memory_num; /////页面对应的内存物理块号 int is_in_memory; /////状态标志,判断页面是否在内存

private: };

void control::init(){

page page_table[10];//创建页表大小有10项

int page_size,memory_size;//输入的页面数和内存物理块数

int *page_array,*memory;//请求页面的输入序列,和模拟内存用来存放序列号

for(int i=0;i<10;i++){

13

13

武汉理工大学《计算机操作系统教程》课程设计报告书

}

}

page_table[i].page_num=i; page_table[i].memory_num=-1; page_table[i].is_in_memory=0;

for(int i=0;i

memory[i]=-1;

control::control(){

int select1 ,select2;////////分别指示是随机产生序列或用户输入和选择哪种替换算法 char choice;

cout<<\输入给定的页面数:\ cin>>page_size;

cout<<\输入给作业分配内存的物理块数\ cin>>memory_size; page_array=new int[page_size];memory=new int[memory_size];

loop: cout<<\ -------------------------------------\

cout<<\ 0.用户输入请求序列 1.随机生成请求序列\

cout<<\ -------------------------------------\

cin>>select1; if(select1==1){ }

else if(select1==0){

int temp2;

cout<<\输入\个请求页面号(0-10)\

14

cout<<\随机生成页面请求序列(0-10)\int temp1;

for(int i=0;i

cout<

temp1=rand(); cout<

14

武汉理工大学《计算机操作系统教程》课程设计报告书

}

for(int i=0;i

cin>>temp2; page_array[i]=temp2;

else exit(0);

cout<<\请选择使用那种替换算法:0、退出 1、FIFO 2、OPT\cin>>select2;

if(select2==1) control::FIFO(); else if(select2==2) control::OPT(); else exit(0);

cout<<\是否继续?(Y/y or N/n)\ }

control::~control(){

delete []page_array; delete []memory; }

cin>>choice;

if(choice=='Y' || choice=='y') goto loop; else exit(0);

void control::print(){ }

void control::FIFO(){

for(int q=0;q

cout<

cout<<\control::init();

int *save=new int[page_size]; int count=0;

int times=0;//记录缺页次数

int first_inMemory=0;//记录最先被占用的物理块号,装有最先进入内存的页面号

15

15

请求页式管理缺页中断模拟设计--FIFO、OPT.doc 将本文的Word文档下载到电脑,方便复制、编辑、收藏和打印
本文链接:https://www.diyifanwen.net/c498vh9583b9acj39pw7b_4.html(转载请注明文章来源)
热门推荐
Copyright © 2012-2023 第一范文网 版权所有 免责声明 | 联系我们
声明 :本网站尊重并保护知识产权,根据《信息网络传播权保护条例》,如果我们转载的作品侵犯了您的权利,请在一个月内通知我们,我们会及时删除。
客服QQ:xxxxxx 邮箱:xxxxxx@qq.com
渝ICP备2023013149号
Top