存储管理实验报告一,分区存储管理模拟,二,请求页式存储管理模拟.doc
文本预览下载声明
存储管理实验报告一,分区存储管理模拟,二,请求页式存储管理模拟
int p; //全局变量p是一共有多少地址流
void chushihua()//初始化函数
{
int t;
srand(time(0));//随机产生指令序列
p=12+rand()%32;
cout地址流序列:;
for(int i=0;ip;i++)
{
t=1+rand()%9;
yemianliu[i]=t;//将随机产生的指令数存入页面流
coutt ;
}
coutendl;
}
void FIFO(int n) //FIFO算法,n是M的值
{
int i;
int q=p;
int e;
int queye=0;
int flag;
int fifo[32]={0};
while(q--)
{
flag=0;
e=q;
for(i=0;in;i++)
{
if(fifo[i]==yemianliu[q])
{
flag=1;
break;
}
}
if(flag==0)
{
int m=n-1;
int k=m;
while(m--)
{
fifo[k]=fifo[k-1];
k--;
}
fifo[0]=yemianliu[e];
queye++;
}
}
coutM=n时FIFO的命中率为:(1-((double)queye/p))*100% }
void LRU(int n)//LRU算法
{
int i;
int q=p;
int e;
int queye=0;
int flag;
int flag1,;
int y;
int lru[32]={0};
while(q--)
{
flag=0;
e=q;
for(i=0;in;i++)
{
if(lru[i]==yemianliu[q])
{
flag=1;
flag1=i;
break;
}
}
if(flag==0)
{
int m=n-1;
;
int k=m;
while(m--)
{
lru[k]=lru[k-1];
k--;
}
lru[0]=yemianliu[e];
queye++;
}
else if(flag==1)
{
y=flag1;
while(y--)
{
lru[flag1]=lru[flag1-1];
flag1--;
}
lru[0]=yemianliu[e];
}
}
coutM=n时LRU的命中率为:(1-((double)queye/p))*100%endl; }
void main()
{
chushihua();
for(int i=3;i33;i++)
{
FIFO(i);
LRU(i);
}
}
报告:
××××大学
计算机科学与工程学院实验报告 实验题目: 请求页式存储管理模拟
课程名称: 计算机操作系统
实验类型:□演示性 □验证性 □操作性 □设计性 □综合性 专业:班级:姓名:学号: 实验日期:2012年5月24日 实验地点:实验学时: 实验成绩:
指导教师签字: 年月日
实验题目: 6
实验要求: 6
一、方案设计 7
1.技术方案: 7
(1)先进先出法(First In First Out): 7
(2)最近最久未使用(Least Recently Used): 7
2.功能设计: 7
(1)chushihua()函数的功能: 7
(2)FIFO()的功能: 7
(3)LRU()的功能: 7
二、结构设计 7
1、数据结构设计 7
2、程序结构设计 7
三、程序设计 8
1.FIFO()函数流程图; 8
2.LRU()函数流程图: 9
四、编码调试 10
主要问题及解决方法: 10
五、实验总结 10
六、程序清单 11
源代码: 11
运行结果: 14
篇二:操作系统-请求页式存储管理实验报告
操作系统
实验三
存储管理实验
班级:
学号:
姓名:
目 录
1. 实验目的 2
2. 实验内容 2
(1) 通过随机数产生一个指令序列,共320条指令 2
(2) 将指令序列变换成为页地址流 2
(3) 计算并输出下述各种算法在不同内存容量下的命中率 2
3. 随机数产生办法 3
环境说明 3
4. 程序设计说明 3
4.1. 全局变量 3
4.2. 随机指令序列的产生 4
4.3. FIFO算法 4
4.4. LRU算法 4
4.5. O
显示全部