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

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

举报
开通vip

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

用位示图管理磁盘空间的分配与回收
课程设计报告(2016--2017年度第二学期)课程名称:操作系统实验课设题目:用位示图管理磁盘空间的分配与回收院系:控制与计算机工程学院班级:信安1401姓名:黄竞昶指导教师:贾静平设计周数:一周成绩:2015年7月9日一、需求分析要求打印或显示程序运行前和运行后的位示图,以及分配和回收磁盘的物理地址过程。(1)假定现有一个磁盘组,共40个柱面。每个柱面4个磁道,每个磁道又划分成4个物理 记录 混凝土 养护记录下载土方回填监理旁站记录免费下载集备记录下载集备记录下载集备记录下载 。磁盘的空间使用情况用位示图表示。位示图用若干个字构成,每一位对应一个磁盘块。1表示占用,0表示空闲。为了简单,假定字长为16位,其位示图如图9—1所示。系统设一个变量S,记录磁盘的空闲块个数。位0123456789101112131415字0111111010011111012...39.图9—1位示图(2)申请一个磁盘块时,由磁盘块分配程序查位示图,找出一个为0的位,并计算磁盘的物理地址(即求出柱面号、磁道号(也即磁头号)和扇区号)。由位示图计算磁盘的相对块号的公式如下:相对块号一字号×16+位号之后再将相对块号转换成磁盘的物理地址:由于一个柱面包含的扇区数=每柱面的磁道数×每磁道的扇区数=4×4=16,故柱面号=相对块号/16的商,即柱面号=字号磁道号=(相对块号/16的余数)/4的商,即(位号/4)的商物理块号=(相对块号/16的余数)/4的余数,即(位号/4)的余数(3)当释放一个相对物理块时,运行回收程序,计算该块在位示图中的位置,再把相应位置0。计算公式如下:先由磁盘地址计算相对块号:相对块号=柱面号×16+磁道号×4+物理块号再计算字号和位号:字号=相对块号/16的商,也即字号=柱面号位号=磁道号×物理块数/每磁道+物理块号(4)按照用户要求,申请分配一系列磁盘块,运行分配程序,完成分配。然后将分配的相对块号返回用户,并将相对块号转换成磁盘绝对地址,再显示系统各表和用户已分配的情况。(5)设计一个回收算法,将上述已分配给用户的各盘块释放。并显示系统各表。回收算法框图如图5所示。二、整体功能及设计程序整体主要有四个功能模块,分别是:初始化、分配、单独回收以及全部回收。当点击相应按钮时实现其功能。程序设计了三个方法,分别是初始化init、分配算法dist、单独回收rec、全部回收allrec。磁盘空间分配框图如图1所示,磁盘空间回收框图如图2所示.开始开始由字位号计算相对块号,柱面号,磁道号,物理记申请一个磁盘块释放一个磁盘块录号,并输出这些参数位置示图相应位为N图1磁盘空间分配框图1图2磁盘空间回收框图还有空闲块?N由磁盘的三维转为磁盘的三、编程实现相对块号Y申请者importjava.awt.*;查位示图由相对块号转换成对应位返import.*;示图的字位号找第一个为0的字位号importjavax.swing.*;N置位示图相应位为0publicclassbitmapYextendsJFrameimplementsActionListener{找到了?JTabletable;空闲盘个数+1JScrollPanesp1,sp2;返回,磁盘已满本次无法分配JTextAreata;输出位示图等JLabell1,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=newString[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=newJScrollPane(ta);p1=newJPanel(newBorderLayout());p2=newJPanel(newFlowLayout());p3=newJPanel(newBorderLayout());p4=newJPanel(newFlowLayout());p5=newJPanel(newFlowLayout());p6=newJPanel(newBorderLayout());p7=newJPanel(newFlowLayout());l1=newJLabel("位示图如下:");b1=newJButton("位示图初始化");b1.addActionListener(this);b2=newJButton("回收全部磁盘块");b2.addActionListener(this);p2.add(b1);p2.add(b2);p1.add(l1,"North");p1.add(sp1,"Center");p1.add(p2,"South");l2=newJLabel("运行状况:");l5=newJLabel("空闲块数量:");p7.add(l5);p7.add(tf3);p3.add(l2,"North");p3.add(p7,"South");p3.add(sp2,"Center");l3=newJLabel("请输入需要分配的块数:");l4=newJLabel("请输入要回收的盘块号:");b3=newJButton("确认分配");b3.addActionListener(this);b4=newJButton("确认回收");b4.addActionListener(this);p4.add(l3);p4.add(tf1);p4.add(b3);p5.add(l4);p5.add(tf2);p5.add(b4);p6.add(p4,"North");p6.add(p5,"Center");this.setLayout(newBorderLayout());this.add(p1,"West");this.add(p3,"Center");this.add(p6,"South");this.pack();this.setVisible(true);}publicvoidinit()//功能:初始化{intk;for(inti=0;i<40;i++)for(intj=0;j<16;j++){k=(int)(Math.random()*2);//0与1两数中进行随机data[i][j]=""+k;table.setValueAt(""+k,i,j);}}publicvoidgetavail()//功能:得出可用块号与不可用块号的集合{inta;intb=0,c=0;A=0;H=0;for(inti=0;i<40;i++)for(intj=0;j<16;j++){if(data[i][j].equals("0")){a=i*16+j;//得到相对块号sp[b]=a;//写入可用块号集合A++;b++;}else{a=i*16+j;//得到相对块号used[c]=a;H++;c++;//写入不可用块号集合}}}publicvoidallrec()//全部回收{ta.setText("");Stringstr="回收结果:\n";for(inti=0;i
本文档为【用位示图管理磁盘空间的分配与回收】,请使用软件OFFICE或WPS软件打开。作品中的文字与图均可以修改和编辑, 图片更改请在作品中右键图片并更换,文字修改请直接点击文字进行修改,也可以新增和删除文档中的内容。
该文档来自用户分享,如有侵权行为请发邮件ishare@vip.sina.com联系网站客服,我们会及时删除。
[版权声明] 本站所有资料为用户分享产生,若发现您的权利被侵害,请联系客服邮件isharekefu@iask.cn,我们尽快处理。
本作品所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用。
网站提供的党政主题相关内容(国旗、国徽、党徽..)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
下载需要: 免费 已有0 人下载
最新资料
资料动态
专题动态
is_113440
暂无简介~
格式:pdf
大小:319KB
软件:PDF阅读器
页数:10
分类:
上传时间:2021-11-18
浏览量:0