- 1、本文档共6页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
页式存储管理实验报告
页式存储管理
一、实验目的:
掌握分页式存储管理的基本概念和实现方法。要求编写一个模拟的分页式管理程序,并能对分页式存储的页面置换算法进行编写和计算各个算法的缺页率。
二、程序设计:
首先创建页面链指针数据结构,并设计页面映像表,采用数组的方法给定页面映像。
申请缓冲区,将一个进程的逻辑地址空间划分成若干个大小相等的部分,每一部分称做页面或页。每页都有一个编号,叫做页号,页号从0开始依次编排,如0,1,2……。设置等大小的内存块。初始状态:将数据文件的第一个页面装入到该缓冲区的第0块。
设计页面置换算法,这里分别采用最佳页面置换算法OPT和最近最久未使用置换算法LRU,并分别计算它们的缺页率,以比较它们的优劣。
三、算法说明:
执行程序时,当主存没有可用页面时,为了选择淘汰主存中的哪一页面,腾出1个空闲块以便存放新调入的页面。淘汰哪个页面的首要问题是选择何种置换算法。该程序采用人工的方法选择,依置换策略选择一个可置换的页,并计算它们的缺页率以便比较。
/*分页式管理实验-源程序*/
#includestdio.h
#define N 16
#define num 5 /*进程分配物理块数目*/
int A[N]={1,2,3,4,5,6,7,8,5,2,3,2,7,8,1,4}; /*页表映像*/
typedef struct page
{ int address; /*页面地址*/
struct page *next;
}page;
struct page *head,*run,*rear;
void jccreat() /*进程分配物理块*/
{ int i=1;
page *p,*q;
head=(page *)malloc(sizeof(page)); p=head;
for(i=1;i=num;i++) { q=(page *)malloc(sizeof(page));
p-next=q; q-address=0; q-next=NULL; p=q; }
rear=p;}int search(int n){
page *p;
int i=0;
p=head;
while(p-next)
{
if(p-next-address==n)
{
printf(Get it at the page %d\n,i+1);
run=p;
return 1;}
p=p-next;
i++;
}
return 0;
}
void changeOPT(int n,int position)
{
int i;
int total=0;
int flag=1;
int distance[num];
int MAX;
int order=0;
page *p,*q;
p=head-next;
q=head-next;
for(i=0;inum;i++)
distance[i]=100;
i=0;
while(p)
{
if(p-address==0)
{flag=0;
break;}
p=p-next;
i++;
}
if(!flag)
{p-address=n;
printf(Change the page %d\n,i+1);
}
else
{
while(q)
{
for(i=position;iN;i++)
{if(q-address==A[i])
distance[total]=i-position;}
total++;
q=q-next;
}
MAX=distance[0];
for(i=0;inum;i++)
{
if(distance[i]MAX)
{
MAX=distance[i];
order=i;
}
}
printf(Change the page %d\n,order+1);
i=0;
while(p)
{
if(i==order)
p-address=n;
i++;
p=p-next;
}
}
}
void changeLRU(int n)
{
int i=0;
int flag=1;
page *p,*delect;
p=h
您可能关注的文档
- 1山东省青岛第五十八中2016届高三12月月考英语试题.doc
- 英语选词填空题和3选1.docx
- 英国文学试题34.doc
- 国贸实务 案例分析 Case Studies.doc
- 牛津8B unit 5单元检测.doc
- 合肥工业大学数据结构试验一实验报告.doc
- 北京市西城区2015届高三上学期期末考试英语试题.doc
- 必修3-unit3-表语从句.docx
- 新时代条件下的合理避税.doc
- 考研英语阅读资料-科技类4.docx
- 企业反担保合同(通用33篇).docx
- 2024-2025学年小学心理健康六年级下册北师大版(2021)教学设计合集.docx
- 2024-2025学年小学体育与健康三至四年级(水平二)人教版教学设计合集.docx
- 2024-2025学年小学信息技术(信息科技)第三册粤教版(李师贤主编)教学设计合集.docx
- 2024-2025学年上海市复旦大学附属中学高一上学期11月期中物理试题(B)含答案.docx
- 2024-2025学年小学信息技术(信息科技)三年级上册黔科版教学设计合集.docx
- 工作承诺书合集6篇.docx
- 2024-2025学年小学科学五年级上册教科版(2024)教学设计合集.docx
- 2024-2025学年小学科学一年级下册大象版(2024)教学设计合集.docx
- 运输服务合同(包车)(精选31篇).docx
文档评论(0)