版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
竭诚为您提供优质文档/双击可除分页存储管理实验报告
篇一:分页存储管理实验报告
操作系统实验三报告
一.实验名称:分页存储管理
二.实验目的:了解分页存储管理在内存空间分配的作用三.实验内容:
分页存储管理是将一个进程的逻辑地址空间分成若干个大小相等的片,称为页面或页,并为各页加以编号,相应的,也把内存空间分成与页面相同大小的若干个存储块,称为物理块或页框,同样加以编号,在为进程分配内存时,以块为单位将进程的若干个也分别装入到多个可以不相邻的物理块中。系统为每个进程建立了一张页面映像表,简称页表。位示图是利用二进制的一位来表示磁盘中的一个盘块的使用情况,这里用位示图来表示内存分配情况。
四.实验代码#includer->next=nuLL;#includereturnhead;#include}typedefintdatatype;voidprint(linklisthead)typedefstructnode{{linklistp;datatypepagenum,blocknum;p=head->next;structnode*next;pri(:分页存储管理实验报告)ntf("\n该页表为:");}linknode;printf("\n页号块号\n");typedeflinknode*linklist;while(p)linklistcreatlinklist(intn){{linklisthead,r,s;printf("%d%7d\n",p->pagenum,p->blocknumintx,y,i=0;);p=p->next;head=r=(linklist)malloc(sizeof(linknode));}
printf("\n");printf("开始创建页表\n");
}printf("请分别输入页表的页号及块号
(-1表示空):\n");/*初始化位示图,将值全置为零,0表示空printf("\n页号块号\n");闲状态*/while(ipagenum=x;{s->blocknum=y;for(j=0;jnext=s;{r=s;g[i][j]=0;i++;}}}
g[n+1][0]=n*n;}
/*对作业的每一个页进行分配对应位示图里的块*/
linklistDis(linklisthead,intg[100][100],intif(p)
{i=p->blocknum/n;j=p->blocknum%n;g[i][j]=0;n,intn){linklistp;inti,j;p=head->next;if(np->blocknum=n*i+j;g[i][j]=1;g[n+1][0]--;
break;}}break;}p=p->next;}returnhead;}}
/*回收已经完成的页*/
linklistRecy(linklisthead,intg[100][100],intn,intn){inti,j;linklistp;p=head->next;while(p}
g[n+1][0]++;p->blocknum=-1;}returnhead;}
/*打印位示图*/
voidprintstr(intg[100][100],intn){inti,j;printf("此时位示图为:\n");for(i=0;ivoidmain(){intn,n,x,y;intgraph[100][100];linklisthead;printf("输入位示图的字长:");scanf("%d",printf("输入作业的页数:");scanf("%d",head=creatlinklist(n);print(head);init(graph,n);
printstr(graph,n);printf("\n现在进行作业分配:");head=Dis(head,graph,n,n);print(head);
printstr(graph,n);printf("是否回收已完成的页,“是”1,{printf("\n请输入您要回收的页号:");scanf("%d",head=Recy(head,graph,y,n);print(head);
“否”0:");scanf("%d",if(x)//判断是否要回收
五.实验截图:
printstr(graph,n);}}
六.实验心得:
通过这次实验,了解到分页存储管理是将一个进程的逻辑地址空间分成若干个大小相等的片,称为页面或页,并为各页加以编号,相应的,也把内存空间分成与页面相同大小的若干个存储块,称为物理块或页框,同样加以编号,在为进程分配内存时,以块为单位将进程的若干个也分别装入到多个可以不相邻的物理块中。
篇二:请求分页管理实验报告
请求分页存储管理模拟实验
1.实验目的
请求页式管理是一种常用的虚拟存储管理技术。本设计通过请求页式存储管理中页面置换算法模拟设计,了解虚拟存储技术的特点,掌握请求页式管理的页面置换算法。
2.实验内容:
通过随机数产生一个指令序列,共320条指令。指令的地址按下述原则生成:①50%的指令是顺序执行的;
②25%的指令是均匀分布在前地址部分;③25%的指令是均匀分布在后地址部分。具体的实施方法是:
①在[0,319]的指令地址之间随机选取一起点m;②顺序执行一条指令;
③在前地址[0,m+1]中随机选取一条指令并执行,该指令的地址为m′;④顺序执行一条指令,其地址为m′+1;
⑤在后地址[m′+2,319]中随机选取一条指令并执行;⑥重复上述步骤②~⑤,直到执行320次指令。将指令序列变换成为页地址流设:①页面大小为1K;
②用户内存容量为4页到32页;③用户虚存容量为32K。
在用户虚存中,按每K存放10条指令排列虚存地址,即320条指令在虚存中的存放方式为:
第0条~第9条指令为第0页(对应虚存地址为[0,9]);第10条~第19条指令为第1页(对应虚存地址为[10,19]);┇┇
第310条~第319条指令为第31页(对应虚存地址为[310,319])。
按以上方式,用户指令可组成32页。
计算并输出下述各种算法在不同内存容量下的命中率。先进先出的算法(FIFo);最近最少使用算法(LRR);最少访问页面算法(LFR);最近最不经常使用算法(nuR)。
3.实验环境
每个学生一台微机,需要安装windows98或windows2000操作系统,配备Vc、Vb、java或c编程语言,每个学生上机时间不少于24个小时。
(1)、分页请求系统
是:
(1)请求分页的页表机制。它是在分页的页表机制上增加若干个项而形成的,作为请求分页的数据结构;
(2)缺页中断机构。每当用户程序要访问的页面尚未调入内存时,便产生一缺页中断,以请求os将所缺的页面调入内存;
(3)地址变换机构。它同样是在分页的地址变换机构的基础上发展形成的。
为了实现请求调页还须得到os的支持,在实现请求调页功能时,石油os将所需的页从外存调入内存;在实现置换功能时,也是由os将内存的某些页调至外存。
为了能实现请求调页和置换功能,系统必须提供必要的硬件支持,其中,最重要的
4.实验提示
提示:A.命中率=1-页面失效次数/页地址流长度
b.本实验中,页地址流长度为320,页面失效次数为每次访问相应指令时,该指令所对应的页不在内存的次数。
c.关于随机数产生方法,采用Tc系统提供函数RAnD()和RAnDomIZe()来产生。
5.算法的理解
㈠FIFo页面置换算法⑴原理简述
①在分配内存页面数(Ap)小于进程页面数(pp)时,当然是最先运行的Ap个页面放入内存。
②这时有需要处理新的页面,则将原来内存中的Ap个页面最先进入的调出(是以称为FIFo),然后将新页面放入。
③以后如果再有新页面需要调入,则都按⑵的规则进行。
算法特点:所使用的内存页面构成一个队列。㈡LRu页面置换算法⑴原理算述
①当分配内存页面数(Ap)小于进程页面数(pp)时,当然是把最先执行的Ap个页面放入内存。
②当需要调页面进入内存,而当前分配的内存页面全部不空闲时,选择将其中最长时间没有用到的那个页面调出,以空出内存来放置新调入的页面(称为LRu)。算法特点:每个页面都有属性来表示有多长时间未被cpu使用的信息。㈢LFu即最不经常使用页置换算法⑴原理简述
要求在页置换时置换引用计数最小的页,因为经常使用的页应该有一个较大的引用次数。但是有些页在开始时使用次数很多,但以后就不再使用,这类页将会长时间留在内存中,因此可以将引用计数寄存器定时右移一位,形成指数衰减的平均使用次数。
LRu算法的硬件支持
把LRu算法作为页面置换算法是比较好的,它对于各种类型的程序都能适用,但1.一个进程在内存中的各个页面各有多久时间未被进程访问;
2.如何快速地知道哪一页最近最久未使用的页面。为此,须利用以下两类支持硬件:实现起来有相当大的难度,因为它要求系统具有较多的支持硬件。所要解决的问题有:
(1)寄存器
(2)栈
可利用一个特殊的栈来保存当前使用的各个页面的页面号。每当进程访问某页面
时,便将该页面的页面号从栈中移出,将它压入栈顶。
算法特点:LFu算法并不能真正反映出页面的使用情况,因为在每一时间间隔内,只是用寄存器的一位来记录页的使用情况,因此,访问一次和访问10000次是等效的。㈣nuR页面置换算法⑴原理简述
所谓“最近未使用”,首先是要对“近”作一个界定,比如cLeAR_peRIoD=50,便是指在cpu最近的50次进程页面处理工作中,都没有处理到的页面。那么可能会有以下几种情况:
①如果这样的页面只有一个,就将其换出,放入需要处理的新页面。
②如果有这样的页面不止一个,就在这些页面中任取一个换出(可以是下标最小的,或者是下标最大的),放入需要处理的页面。
③如果没有一个这样的页面,就随意换出一个页面(可以是下标最小的,或者是下标最大的)。
算法特点:有一个循环周期,每到达这个周期,所有页面存放是否被cpu处理的信息的属性均被置于初始态(没有被访问)。
6.实验流程图
7.实验运行结果
篇三:分页氏存储管理实验报告
分页存储管理实验报告
姓名:何绍金
班级:
学号:20XX03870408
指导教师:张健
20XX年12月30日
一.实验题目
编写程序模拟操作系统的基本分页存储管理方式,进一步理解这种内存分配方式的原理和特点,加深对理论知识的掌握。
二.实验内容
1.实验要求
(1)编写模拟操作系统对内存分页存储管理方式的程序。
(2)程序能正确对主存空间进行“分配”和“回收”。
(3)能接受用户的输入,显示内存的分配情况,并有一定的容错能力。
2.实现功能:
(1)内存初始化
(2)程序应该能接受用户输入的进程信息,并为之分配内存,返回分配结果注意:此处考虑到不合法的输入并进行相应处理。
(3)程序能回收用户指定的进程所占用的内存空间
程序需要为每个进程分配一个唯一的进程号并给出详细的提示信息。
(4)能直观合理地显示内存分配情况
三.实验流程图
四.程序运行结果
运行程序得到如下结果:
五.实验小结
这次实验让我清楚地认识到分页存储管理的基本原理和实现流程,特别是对主存空间的分配与回收的深层次理解,在编制程序是只需使用顺序的地址而不必去考虑如何去分页,因为分页存储管理时作业的地址是连续的。更让我体会了页氏存储管理方式的优点就是没有外部碎片,程序不必连续存放在内存空间,而缺点是程序要全部装入内存。此外,还增强了动手编程和分析解决问题的能力。
附:程序源代码
按流程图编制的源代码如下所示:
#include
#include
#definen100//共有100个内存块
intprocess[n][n+1];//存放每个进程的页表
intblock[n];//内存块状态标志数组,0:空闲,1:使用
intblockcount;//记录当前内存剩余空间
intprocesscount;//记录当前进程数
boolflag=true;
voidinit();
voidoutput();
boolcreateprocess();
boolendprocess();
voidinit()
{
inti,j;
//初始化内存状态标志数组
for(i=0;iblock[i]=0;
for(i=0;iblock[rand()%(n-1)]=1;
blockcount=0;
for(i=0;iif(block[i]==0)
blockcount++;
//初始化存放进程的数组
for(i=0;iprocess[i][0]=0;
for(j=1;jprocess[i][j]=-1;
}
process
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 石河子大学《药物分析实验》2022-2023学年第一学期期末试卷
- 石河子大学《现代教育技术》2023-2024学年第一学期期末试卷
- 石河子大学《纪录片赏析》2023-2024学年第一学期期末试卷
- 沈阳理工大学《自动检测技术》2022-2023学年第一学期期末试卷
- 沈阳理工大学《色彩构成》2021-2022学年第一学期期末试卷
- 沈阳理工大学《建筑力学》2021-2022学年第一学期期末试卷
- 沈阳理工大学《后期特效》2023-2024学年第一学期期末试卷
- 沈阳理工大学《电工与电子技术实验》2021-2022学年期末试卷
- 沈阳理工大学《测量学》2021-2022学年第一学期期末试卷
- 海商法修改船舶融资租赁合同
- 租地种香蕉合同
- 上海市虹口区2024学年第一学期期中考试初三物理试卷-学生版
- 国开(甘肃)2024年春《地域文化(专)》形考任务1-4终考答案
- 档案整理及数字化服务方案(技术标 )
- 水利工程质量与安全监督工作实务PPT课件
- 放射性口腔粘膜炎的发病机制及危险因素
- 加油站特殊作业安全管理制度(完整版)
- 质量风险抵押金管理办法
- 村纪检监督小组工作职责
- 《宏观经济学乘数论》PPT课件.ppt
- 警务监督员表态发言(共4篇)
评论
0/150
提交评论