操作系统位示图实验报告.doc

操作系统位示图实验报告.doc

ID:53725103

大小:18.83 KB

页数:8页

时间:2020-04-06

操作系统位示图实验报告.doc_第1页
操作系统位示图实验报告.doc_第2页
操作系统位示图实验报告.doc_第3页
操作系统位示图实验报告.doc_第4页
操作系统位示图实验报告.doc_第5页
资源描述:

《操作系统位示图实验报告.doc》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、操作系统位示图磁盘管理一、实验目的怎样有效地管理磁盘存储空间是操作系统应解决的一个重要问题,通过本实习使学生掌握磁盘存储空间的分配和回收算法。二、实验内容模拟磁盘空闲空间的表示方法,以及模拟实现磁盘空间的分配和回收。本实习模拟用位示图管理磁盘存储空间的管理方法。设计申请一块磁盘空间和归还一块磁盘空间的程序。要求能显示或打印程序运行前和运行后的位示图;分配时把分配到的磁盘空间的物理地址显示或打印出来,归还时把归还块对应于位示图的字节号和位数显示或打印出来。假定已有如表1的磁盘空间被占用了,现在要申请

2、五块磁盘空间,运行分配程序,显示或打印运行的结果。然后再归还如表2的空间,运行回收程序,显示或打印运行结果。表1柱面号磁道号物理记录号001002010013100112 表2柱面号磁道号物理记录号002010101三、实验步骤本实验在VisualC++6.0编程平台下进行编程实现,详见实验内容。1.算法设计流程,及源代码;算法思想,及算法流程:磁盘存储空间的分配有两种方式,一种是分配连续的存储空间,另一种是可以分配不连续的存储空间。为了表示哪些磁盘空间已被占用,哪些磁盘空间是空闲的,可用位示图来

3、指出。位示图由若干字节构成,每一位与磁盘上的一块对应,“1”状态表示相应块已占用,“0”状态表示该块为空闲。当申请一块磁盘空间时,由分配程序查位示图,找出一个为“0”的位,计算出这一位对应块的磁盘物理地址,且把该位置成占用状态“1”。假设现在有一个盘组共80个柱面,每个柱面有两个磁道,每个磁道分成4个物理记录。那么,当在位示图中找到某一字节的某一位为“0”时,这个空闲块对应的磁盘物理地址为:柱面号=字节号磁道号=[位数/4]物理记录号={位数/4}当归还一块磁盘空间时,由回收程序根据归还的磁盘物理

4、地址计算出归还块在位示图中的对应位,把该位置成“0”。归还块在位示图中的位置计算如下:字节号=柱面号位数=磁道号´4+物理记录号源程序:#include#include#include#defineA10#defineB2#defineC4intkoko[A][B][C];intM,N;inti,j,k;charch;voidi_koko(){for(i=0;i

5、;k++){koko[i][j][k]=1;}}}}voidDispense(){do{cout<<"请输入字节号:"<<'t';cin>>M;cout<<"请输入位数:"<<'t';cin>>N;i=M;j=N/4;k=N%4;koko[i][j][k]=0;cout<<"是否继续输入(Y/N):"<<'t';cin>>ch;}while(ch=='Y'

6、

7、ch=='y');}voidRecycle(){do{cout<<"请输入柱面号"<<'t';cin>>i;cout<<"请输入磁盘

8、号"<<'t';cin>>j;cout<<"请输入逻辑记录号"<<'t';cin>>k;koko[i][j][k]=1;cout<<"是否继续输入(Y/N):"<<'t';cin>>ch;}while(ch=='Y'

9、

10、ch=='y');}voidDisplay(){inti,j,k;intflag=0;cout<<"**位示图**"<

11、i=0;i

12、for(k=0;k

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。