用位示图管理磁盘空间的分配与回收

用位示图管理磁盘空间的分配与回收

ID:40117886

大小:498.05 KB

页数:17页

时间:2019-07-21

用位示图管理磁盘空间的分配与回收_第1页
用位示图管理磁盘空间的分配与回收_第2页
用位示图管理磁盘空间的分配与回收_第3页
用位示图管理磁盘空间的分配与回收_第4页
用位示图管理磁盘空间的分配与回收_第5页
资源描述:

《用位示图管理磁盘空间的分配与回收》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库

1、课程设计报告(2016--2017年度第二学期)课程名称:操作系统实验课设题目:用位示图管理磁盘空间的分配与回收院系:控制与计算机工程学院班级:信安1401姓名:黄竞昶指导教师:贾静平设计周数:一周成绩:2015年7月9日17一、需求分析要求打印或显示程序运行前和运行后的位示图,以及分配和回收磁盘的物理地址过程。(1)假定现有一个磁盘组,共40个柱面。每个柱面4个磁道,每个磁道又划分成4个物理记录。磁盘的空间使用情况用位示图表示。位示图用若干个字构成,每一位对应一个磁盘块。1表示占用,0表示空闲。为了简单,假定字长为16

2、位,其位示图如图9—1所示。系统设一个变量S,记录磁盘的空闲块个数。位0123456789101112131415字0111111010011111012....39图9—1位示图(2)申请一个磁盘块时,由磁盘块分配程序查位示图,找出一个为0的位,并计算磁盘的物理地址(即求出柱面号、磁道号(也即磁头号)和扇区号)。由位示图计算磁盘的相对块号的公式如下:相对块号一字号×16+位号之后再将相对块号转换成磁盘的物理地址:由于一个柱面包含的扇区数=每柱面的磁道数×每磁道的扇区数=4×4=16,故柱面号=相对块号/16的商,即柱面

3、号=字号磁道号=(相对块号/16的余数)/4的商,即(位号/4)的商物理块号=(相对块号/16的余数)/4的余数,即(位号/4)的余数(3)当释放一个相对物理块时,运行回收程序,计算该块在位示图中的位置,再把相应位置0。计算公式如下:先由磁盘地址计算相对块号:相对块号=柱面号×16+磁道号×4+物理块号再计算字号和位号:字号=相对块号/16的商,也即字号=柱面号位号=磁道号×物理块数/每磁道+物理块号(4)按照用户要求,申请分配一系列磁盘块,运行分配程序,完成分配。然后将分配的相对块号返回用户,并将相对块号转换成磁盘绝对

4、地址,再显示系统各表和用户已分配的情况。(5)设计一个回收算法,将上述已分配给用户的各盘块释放。并显示系统各表。回收算法框图如图5所示。二、整体功能及设计程序整体主要有四个功能模块,分别是:初始化、分配、单独回收以及全部回收。当点击相应按钮时实现其功能。17程序设计了三个方法,分别是初始化init、分配算法dist、单独回收rec、全部回收allrec。磁盘空间分配框图如图1所示,磁盘空间回收框图如图2所示.开始由磁盘的三维转为磁盘的相对块号由相对块号转换成对应位示图的字位号置位示图相应位为0空闲盘个数+1输出位示图等返

5、回释放一个磁盘块开始申请一个磁盘块还有空闲块?申请者等待返回查位示图找第一个为0的字位号找到了?返回,磁盘已满本次无法分配返回NYYNN由字位号计算相对块号,柱面号,磁道号,物理记录号,并输出这些参数位置示图相应位为1图1磁盘空间分配框图图2磁盘空间回收框图三、编程实现importjava.awt.*;importjava.awt.event.*;importjavax.swing.*;publicclassbitmapextendsJFrameimplementsActionListener{JTabletable;J

6、ScrollPanesp1,sp2;JTextAreata;17JLabell1,l2,l3,l4,l5;JTextFieldtf1,tf2,tf3;JButtonb1,b2,b3,b4;JPanelp1,p2,p3,p4,p5,p6,p7;Stringdata[][];Stringcolum[];intsp[];//存放(相对)可用块intused[];//存放(相对)已用块数intA,H;//S为可用块数,T为已用块数bitmap(){super("“位示图管理磁盘空间的分配与回收”系统模拟");data=newSt

7、ring[40][16];colum=newString[16];sp=newint[640];used=newint[640];A=0;H=0;for(inti=0;i<16;i++){colum[i]=""+i;}table=newJTable(data,colum);sp1=newJScrollPane(table);tf1=newJTextField(6);tf2=newJTextField(6);tf3=newJTextField(6);ta=newJTextArea(10,20);sp2=newJScroll

8、Pane(ta);17p1=newJPanel(newBorderLayout());p2=newJPanel(newFlowLayout());p3=newJPanel(newBorderLayout());p4=newJPanel(newFlowLayout());p5=newJPanel(newFlowLayo

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

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

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