版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、精选优质文档-倾情为你奉上操作系统实验报告 请求页式存储管理算法班级:计1009 学号:姓名:*二零一二年十二月一、实验目的 通过一个简单的内存页面调度算法的实现,理解内存页面的机理。掌握几种页面置换算法的实现方法,通过实验比较各种调度算法的优劣。二、实验内容问题描述 设计一个请求页式存储管理方案,为简单起见。页面淘汰算法采用 FIFO页面淘汰算法,并且在淘汰一页时,只将该页在页表中修改状态位。而不再判断它是否被改写过,也不将它写回到辅存。基本要求 页面尺寸1K,输入进程大小(例如5300bytes),对页表进行初始化,页表结构:页 号物理块号状态位02Tr
2、ue (在主存)112False (在辅存)304False (在辅存)5False (在辅存)系统为进程分配3 个物理块(页框),块号分别为0、1、2,页框管理表(空闲块表):物理块号是否空闲0true1true2true任意输入一个需要访问的指令地址流(例如:3635、3642、1140、0087、1700、5200、4355,输入负数结束),打印页表情况。每访问一个地址时,首先要计算该地址所在的页的页号,然后查页表,判断该页是否在主存如果该页已在主存,则打印页表情况;如果该页不在主存且页框未满 ,则调入该页并修改页表,打印页表情况;如果该页不在主存且页框已满,则按 FIFO页面淘汰算法淘
3、汰一页后调入所需的页,修改页表,打印页表情况; 存储管理算法的流程图如下:打印页表淘汰一页后调入所需的页,修改页表调入该页并修改页表页框未满 该页已是否在主存计算页号, 查页表结束0<=地址<=进程大小输入要访问的地址开始输入进程大小,对页表进行初始化是是是三、程序及运行情况#include<stdio.h>#include<stdlib.h>#define k 1024 /页面尺寸#define X 10#define Y 10int H; / 用于接收进程的大小int h;typedef struct formint page;int pno;int s
4、tate;Form;typedef struct Pformint pno;int state;PForm;Form formX;PForm pformY;void initForm() /初始化int i;printf("请输入进程的大小:");scanf("%d",&H);h=H/k;h-;if(h%k!=0)h=h+1;for(i=0;i<=h;i+) /初始化页表formi.page=i;formi.pno=-1; /页表内物理块为-1,表示为分配物理块formi.state=0; /页表初始状态为0,表示页表不在内存for(i=0
5、;i<3;i+) /初始化页框pformi.pno=i;pformi.state=0; /页框初始状态为0,表示物理块空闲void input()int b, i,n;int m=0,p=0;printf("请输入要访问的地址:");scanf("%d",&b);if( (b<0) | (b>H) )exit(0);elsei=b/k; /求要访问的地址为第几页if(b%k=0)i-; /因为页号从0开始printf("该地址所在页号为:%dn",i);if(formi.state=0) /若该页不在主存wh
6、ile(m<3) /查看物理块是否有空闲if(pformm.state=1)m+;p+;elsepformm.state=1;formi.pno=pformm.pno;formi.state=1;break;if(p=3) /若页框已满,则回收最早拥有物理块的页号所分配的物理块for(m=0;m<h;m+)if(formm.pno=0)formm.pno=-1;formm.state=0;if(formm.pno=1)formm.pno=0;if(formm.pno=2)formm.pno=1;formi.pno=2;formi.state=1;printf("页号 物理
7、块 状态位n");for(m=0;m<=h;m+)printf("%d %d %dn",m,formm.pno,formm.state);printf("是否继续访问?1、是 2、否n");scanf("%d",&n);if(n=1)input();elseexit(0); void main() int i; initForm(); printf("页表初始化:n"); printf("页号 物理块 状态位n"); for(i=0;i<=h;i+) printf("%d %d %dn",formi.page,formi.pno,formi.state); printf("页框初始化:n"); printf("物理块 状态位n"); for(i=0;i<3;i+) printf("
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 国家开发银行秋招面试题及答案
- 贵州盐业集团校招面试题及答案
- 2026年特种设备(压力容器)应急演练总结
- 【2026年】国际商务英语一级考试练习题附参考答案【b卷】
- 库存调整需求传递函5篇
- 安全生产检查与隐患整改流程
- 2026年工业废水处理工技能考试真题及答案
- 2026年标准公路水运安全员b证考试题库及答案
- 2026年化工安全环保考试冲刺试卷
- 深度学习技术相关研发承诺书5篇范文
- 商品批次管理办法
- 冷弯薄壁型钢-石膏基砂浆复合墙体技术规程(修订稿)
- 武汉大学奖学金管理办法
- 养老机构利器管理办法
- 2025年山东省中考道德与法治试卷真题(含答案)
- 村委会党员春训活动方案
- QGDW11451-2015架空输电线路标识及安装规范
- 征兵心理测试题目及答案
- ASTM G154-23译本 中文版【后附英文官方原版 可复制可检索】
- 加装电梯可行性研究报告范文
- 十堰市茅箭区教育局所属学校招聘考试真题2024
评论
0/150
提交评论