文档库 最新最全的文档下载
当前位置:文档库 › 用位示图管理磁盘空间的分配与回收

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

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

课程设计报告

( 2016--2017年度第二学期)

课程名称:操作系统实验

课设题目: 用位示图管理磁盘空间的分配与回收

院系:控制与计算机工程学院

班级:信安1401

姓名:黄竞昶

指导教师:贾静平

设计周数: 一周

成绩:

2015年7月9 日

一、需求分析

要求打印或显示程序运行前和运行后的位示图,以及分配和回收磁盘的物理地址过程。

(1)假定现有一个磁盘组,共40个柱面。每个柱面4个磁道,每个磁道又划分成4个物理记录。磁盘的空间使用情况用位示图表示。位示图用若干个字构成,每一位对应一个磁盘块。1表示占用,0表示空闲。为了简单,假定字长为16位,其位示图如图9—1所示。系统设一个变量S,记录磁盘

(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所示.

图1 磁盘空间分配框图 图2 磁盘空间回收框图

三、编程实现

import java.awt.*; import java.awt.event.*;

import javax.swing.*;

public class bitmap extends JFrame implements ActionListener{ JTable table; JScrollPane sp1,sp2;

JTextArea ta;

JLabel l1,l2,l3,l4,l5;

JTextField tf1,tf2,tf3;

JButton b1,b2,b3,b4;

JPanel p1,p2,p3,p4,p5,p6,p7;

String data [][];

String colum[];

int sp[];//存放(相对)可用块

int used[];//存放(相对)已用块数

int A,H;//S为可用块数,T为已用块数

bitmap(){

super("“位示图管理磁盘空间的分配与回收”系统模拟");

data = new String[40][16];

colum = new String[16];

sp = new int[640];

used = new int[640];

A = 0;

H = 0;

for(int i=0; i<16; i++)

{

colum[i]=""+i;

}

table = new JTable(data,colum);

sp1 = new JScrollPane(table);

tf1 = new JTextField(6);

tf2 = new JTextField(6);

tf3 = new JTextField(6);

ta = new JTextArea(10,20);

sp2 = new JScrollPane(ta);

p1 = new JPanel(new BorderLayout());

p2 = new JPanel(new FlowLayout());

p3 = new JPanel(new BorderLayout());

p4 = new JPanel(new FlowLayout());

p5 = new JPanel(new FlowLayout());

p6 = new JPanel(new BorderLayout());

p7 = new JPanel(new FlowLayout());

l1 = new JLabel("位示图如下:");

b1 = new JButton("位示图初始化");

b1.addActionListener(this);

b2 = new JButton("回收全部磁盘块");

b2.addActionListener(this);

p2.add(b1);p2.add(b2);

p1.add(l1,"North");

p1.add(sp1,"Center");

p1.add(p2,"South");

l2 = new JLabel("运行状况: ");

l5 = new JLabel("空闲块数量:");

p7.add(l5);p7.add(tf3);

p3.add(l2,"North");

p3.add(p7,"South");

p3.add(sp2,"Center");

l3 = new JLabel("请输入需要分配的块数:"); l4 = new JLabel("请输入要回收的盘块号:");

b3 = new JButton("确认分配");

b3.addActionListener(this);

b4 = new JButton("确认回收");

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(new BorderLayout());

this.add(p1,"West");

this.add(p3,"Center");

this.add(p6,"South");

this.pack();

this.setVisible(true);

}

public void init()//功能:初始化

{

int k;

for(int i=0;i<40;i++)

for(int j=0;j<16;j++)

{

k = (int)(Math.random()*2);//0与1两数中进行随机

data[i][j]=""+k;

table.setValueAt(""+k,i,j);

}

}

public void getavail()//功能:得出可用块号与不可用块号的集合 {

int a;

int b=0,c=0;

A = 0;

H = 0;

for(int i=0;i<40;i++)

for(int j=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++;//写入不可用块号集合

}

}

}

public void allrec()//全部回收 {

ta.setText("");

String str="回收结果: \n";

for(int i=0;i

{

int a = used[i]/16;

int b = used[i]%16/4;

int c = used[i]%16%4;

data[a][4*b+c]="0";

table.setValueAt("0",a,4*b+c);//位示图相应位置置零

str+="柱面"+a+"磁道"+b+"扇区"+c+"盘块号:

"+used[i]+"\n";

used[i]=0;//位示图相应位置置零

}

for(int i=0;i<40;i++)

for(int j=0;j<16;j++)

{

table.setValueAt("0",i,j);

}

H=0;

getavail();

ta.append(str);

}

public static void main(String[] args) {

new bitmap();

}

public void actionPerformed(ActionEvent e) {

if(e.getSource()==b1){

init();

getavail();

String str6=""+A;

ta.append("初始化完成!\n");

tf3.setText(str6);

}

if(e.getSource()==b2){

if(A==640)

{

ta.setText("");

String str7="没有资源可回收";

ta.append(str7);

}

else

allrec();

String str8=""+A;

tf3.setText(str8);

}

if(e.getSource()==b3){

int n;

System.out.println(tf1.getText());

n=Integer.parseInt(tf1.getText());

tf1.setText("");

if(A

{

ta.setText("");

String str1="空闲块不足\n";

//ta.append(str1);

JOptionPane.showMessageDialog(null,"空闲块不足","提示",JOptionPane.PLAIN_MESSAGE);

return;

}

else

{

int j,k;

ta.setText("");

String str="分配结果 \n";

int x=H;

for(int i=0;i

{

j = sp[i]/16;

k = sp[i]-j*16;

used[x+i]=sp[i];//可用块相对地址转为已用块相对地址

data[j][k]="1";

table.setValueAt("1",j,k);//将位示图对应位置写1

str+="柱面"+sp[i]/16+" 磁道"+(sp[i]%16)/4+" 扇区"+(sp[i]%16)%4+"盘块号:"+sp[i]+" \n";

A--;

H++;

}

for(int t=0;t

{

sp[t]=sp[t+n];//删除可用块中的已用块

}

ta.append(str);

}

String str2=""+A;

tf3.setText(str2);

tf1.setText("");

}

if(e.getSource()==b4){

int num;

num=Integer.parseInt(tf2.getText());

ta.setText("");

String str="";

int j,k = 0;

int a=num/16;//柱面

int b=num%16/4;//磁道

int c=num%16%4; //扇区

if(data[a][4*b+c].equals("0"))

{

JOptionPane.showMessageDialog(null,"不可回收空闲块","提示",JOptionPane.PLAIN_MESSAGE);

//tf2.setText(" ");

return;

}

else

{

data[a][4*b+c]="0";

table.setValueAt("0",a,4*b+c);

str+="柱面"+a+"磁道"+b+"扇区"+c+"盘快号:

"+num+"\n";

A++;

H--;

for(int i=0;i

{

if(used[i]==num)

{

k=i;

break;

}

}

for( j=k;j

used[j]=used[j+1];//将回收的块号从“已用”中删除

ta.append("回收结果: \n");

ta.append(str);

}

getavail();

String str5=""+A;

tf3.setText(str5);

tf2.setText("");

}

}

}

四、使用说明

程序运行后的运行界面如图3所示:

图3程序运行界面

单击“初始化”按扭初使化程序。初使化后位示图分配情况图如图4所示。

图4初使化后位示图分配情况图

输入所需分配的块数并单击“确认分配”按钮,系统从第一个盘块到最后一个盘块,寻找第一个不为1的盘块,并为用户连续分配相应个数盘块,并显示分配情况和位示图情况,如图5所示(以分配量20为例)。

图5点击分配按钮后信息

输入回收的盘块号,单击“确认回收”按钮,系统回收已分配给用户的盘块,如图6所示

图6回收的提示信息

当空闲块不足时,会弹出提示信息,如图7所示。

图7提示信息

单击“全部回收”按钮,所有盘块在位示图上位置置“0”,表示已经回收,如图8所示

单击“确认回收”,若该块已经处于回收状态,则弹出对话框进行提醒,如图9所示

五、结果分析

基本满足要求,位示图初始化、单个分配、单个回收、全部回收等功能均可实现。

第9章文件管理

第9章文件管理 一、填空 1.一个文件的文件名是在时给出的。 2.所谓“文件系统”,由与文件管理有关的、被管理的文件以及管理所需要的数据结构三部分组成。 3.是辅助存储器与内存之间进行信息传输的单位。 4.在用位示图管理磁盘存储空间时,位示图的尺寸由磁盘的决定。 5.采用空闲区表法管理磁盘存储空间,类似于存储管理中采用方法管理内存储器。 6.操作系统是通过感知一个文件的存在的。 7.按用户对文件的存取权限将用户分成若干组,规定每一组用户对文件的访问权限。这样,所有用户组存取权限的集合称为该文件的。 8.根据在辅存上的不同存储方式,文件可以有顺序、和索引三种不同的物理结构。 9.如果把文件视为有序的字符集合,在其内部不再对信息进行组织划分,那么这种文件的逻辑结构被称为。 10.如果用户把文件信息划分成一个个记录,存取时以记录为单位进行,那么这种文件的逻辑结构称为。 二、选择 1.下面的不是文件的存储结构。 A.索引文件B.记录式文件 C.串联文件D.连续文件 2.有一磁盘,共有10个柱面,每个柱面20个磁道,每个盘面分成16个扇区。采用位示图对其存储空间进行管理。如果字长是16个二进制位,那么位示图共需字。 A.200 B.128 C.256 D.100 3.操作系统为每一个文件开辟一个存储区,在它的里面记录着该文件的有关信息。这就是所谓的。 A.进程控制块B.文件控制块 C.设备控制块D.作业控制块 4.文件控制块的英文缩写符号是。 A.PCB B.DCB C.FCB D.JCB 5.一个文件的绝对路径名总是以打头。 A.磁盘名B.字符串C.分隔符D.文件名6.一个文件的绝对路径名是从开始,逐步沿着每一级子目录向下,最后到达指定文件的整个通路上所有子目录名组成的一个字符串。 A.当前目录B.根目录 C.多级目录D.二级目录

模拟UNIX系统成组链接法实现磁盘存储空间的管理组织

要求:模拟UNIX系统的空闲块成组链接法,实现磁盘存储空间的管理。 [提示]: (1) 假定磁盘存储空间已被划分成长度为n的等长块,共有M块可供使用。UNIX系统中采用空闲块成组链接的方法来管理磁盘存储空间,将磁盘中的每N个空闲块(N

开始时,空闲块号是顺序排列的,但经若干次的分配和归还操作后,空闲块的链接就未必按序排列了。 用二维数组A:array [0…M-1] of array [0…n-1]来模拟管理磁盘空间,用A[i]表示第I块,第0块A[0]作为专用块。 (3) 成组链接的分组情况记录在磁盘物理块中,为了查找链接情况,必须把它们读入主存,故当磁盘初始化后,系统先将专用块内容复制到主存中。定义一个数组MA存放专用块内容,即MA: =A[0]。申请一块磁盘空间时,查MA,从中找出空闲块号,当一组的空闲块只剩第一块时,则应把该块中指出的下一组的空闲块数和块号复制到专用块中,然后把该块分配给申请者。当一组的空闲块分配完后则把专用块内容(下一组链接情况)复制到主存,再为申请者分配。分配算法如下图。

采用成组链接的分配算法 (4) 归还一块时给出归还的块号,若当前组不满规定块数时,将归还块登记入该组;若当前组已满,则另建一新组,这时归还块作为新一组的第一块,应把主存中登记的一组链接情况MA复制到归还块中,然后在MA重新登记一个新组。归还一块的算法如下图。

操作系统磁盘管理(借鉴资料)

1.需求分析 (1)设计内容和要求(包括原始数据、技术参数、条件、设计要求等)设计内容: 1)采用空白文件目录结构管理磁盘空间,实现磁盘空间的分配和回收; 2)采用空白块成组链接结构实现磁盘空间的分配和回收; 3)采用位示图结构实现磁盘空间的分配和回收。 基本要求: 1)具有创建文件、空间分配、删除文件、释放空间等基本功能; 2)把文件目录、磁盘空间管理的数据结构变化情况显示出来。 (2)需求分析内容 1)空白文件目录是管理磁盘空间的一种方法,该方法将文件存储设备上的每个连续空闲区看作一个空白文件,系统为所有空白文件单独建立一个目录,每个空白文件在这个目录中占一个表目.表目的内容至少包括第一个空白块的地址(物理块号),空白块的数目。 2)位示图是另一种常用的管理磁盘空间的方法,该方法通过建立一张位示图来表示为l 时表示该块已分配,当某位为0时表示该块空闲。 3)位示图是利用二进制的一位来表示磁盘中的一个盘块的使用情况。当其值为“0”时,表示对应的盘块空闲;为“1”时,表示已经分配。有的系统把“0”作为盘块已分配的标记,把“1”作为空闲标志(它们的本质上是相同的,都是用一位的两种状态标志空闲和已分配两种情况)磁盘上的所有盘块都有一个二进制位与之对应,这样,由所有盘块所对应的位构成一个集合,称为位示图。 1.1小组分工 温庭栋任务为:采用空白文件目录结构管理磁盘空间; 魏子育任务为:采用空白块成组链接结构实现磁盘空间的分配和回收; 卫虹任务为:采用位示图结构实现磁盘空间的分配和回收; 2.总体设计 (1)磁盘存储空间管理是文件系统的重要内容 采用空白文件目录结构管理磁盘空间,实现磁盘空间的分配和回收空白文件目录法进行空间分配时,需要建立相关的数据结构,记录目前空白区域和已使用区域,假设开始时全部区域空闲。当有文件需要存储时,先检查空白文件目录,找到适合区域立即分配,并修改空

项目现场管理组织机构网络图及人员职责

项目现场管理组织机构网络图

项目经理岗位职责 1.项目经理就是公司在该工程项目的代理人,代表公司对工程项目全面负责,就是安全生产与工程质量的第一责任人。 2.认真贯彻执行公司质量管理体系标准。 3.遵守国家与地方政府的政策法规,执行公司的规章制度与指令。在该项目中代表公司履行合同执行中的有关技术、工程进度、现场管理、质量检验、结算与支付等方面工作。 4.主持制定项目的施工组织设计、质量计划,编制年、季、月施工进度计划。 5.深入施工现场,处理矛盾,解决问题。不断完善经济制度,正确处理工期、质量与效益的关系。 6.搞好施工现场管理与精神文明建设,关心职工生活,确保安全生产,抓好消防保卫,保障职工人身、财产的安全。依法参与涉及职工利益的重大决策,维护职工利益,做好困难补助工作,并对病、伤、残职工的慰问。 7.做好项目的基础管理工作,保证文件、资料、数据与信息等准确及时地传递与反馈,及时进行工程结算、清算。 8.完成公司交办的其她工作。 技术负责人岗位职责 1.贯彻执行国家有关技术政策及上级技术管理制度,对项目技术工作全面负责。 2.组织施工技术人员学习并贯彻执行各项技术政策、技术规程、规范、标准与技术管理制度。贯彻执行质量管理体系标准。组织技术人员熟悉合同文件与施工图纸,参加施工调查、图纸会审与设计交底。 3.负责制定施工方案、编制施工工艺组织设计,并向有关技术人员进行交底。 4.组织项目各项规划、计划的制定,协助项目经理对工程项目的成本、安全、工期及现场文明施工等日常管理工作。 5.组织项目部的质量检查工作,督促检查生产班组开展自检、互检与交接检,开展创优质工程活动。 6.负责整理变更设计报告、索赔意向报告及索赔资料。 7.参加建设单位组织的各种施工生产、协调会,编制年、季、月施工进度计划。

工厂组织架构图及岗位职责说明

工厂组织框架图及岗位职责说明

1 目的 为了质量管理体系的有效运行,规定组织内部各职能部门和各级人员的岗位质量职责和适任条件,以便于对人力资源的管理、信息的交流、加强沟通、增进理解、协调行动。 2 适用范围 适用于公司内对质量管理体系的管理层、各职能部门和各级有关人员的岗位质量职责、权限的规定,以及各岗位的适任条件。 3职责 总经理: 1. 贯彻执行国家有关法律、法规和有关质量方面的方针政策; 2. 主持制订公司质量方针和质量目标,对质量承诺并确保实施; 3. 坚持满足顾客要求的重要观念,建立质量管理体系; 4. 任命企业相关负责人,确定各级机构和人员并明确规定各级职责、权限和相互关系,确保组织内的沟通有效性; 5. 负责定期组织管理评审、确保质量管理体系持续的适宜、充分和有效; 6. 审批重大质量政策及质量改进决策; 7. 授权质管部质量管理人员独立行使对产品质量进行监视、测量和报告的职能和权限。 业务副总 一、管理工作 1、负责制订年度、月度营销目标计划; 2、负责跟进目标计划的实施; 3、负责营销实绩的管理,并督导所属文员进行统计、归类并存档; 4、负责监督所属部门对于营销目标的执行情况,并制订月度营销实绩报告; 二、市场信息管理 1、负责市场调查及预测工作的实施,制订应对准备策略; 2、负责做好交易往来客户名簿的登记管理制度,并指导实施; 3、负责做好竞争对手调查名簿的登记管理制度,并指导实施; 4、负责依据市场状况和公司发展宗旨,对本行业市场信息及营销进行整合;

三、绩效管理 1、根据营销目标计划,制订月度考核计划,并配合行政部进行考核的实施; 2、负责制订本部门的岗位责任制,辅助提升全体营销人员的业务素质水平; 3、负责按计划完成每月货款回笼; 4、负责收集产品信息,不定期征求客户对产品质量要求和其他质量信息,并反馈给公司质检部; 5、负责监控营销项目的实施,督导下属工作的高效达成; 6、负责在本部门推行目标管理模式,以推动公司经营的发展; 四、对外、公关管理 1、负责制订营销外务公关的管理制度,并推行; 2、负责根据市场状况,整合市场信息,并提出相关措施; 3、负责加强完善经销商合同,监控各类合约的签订、建档工作; 4、负责对大中型客户的沟通与管理,做好服务跟踪; 五、其他管理 1、参与或主持相关的工作会议; 2、负责在本部门推行企业文化管理体制; 3、负责处理营销杂务,并做好营销策略参谋; 4、负责所属人员的考核考评工作的实施; 财务副总 1.根据国家财务制度和财经法规,结合公司实际情况,制定适用的财务管理办法。 2.按照国家统一的会计制度设置和使用会计科目。除会计制度允许变动的以外,不得任意增减或者合并会计科目。 3.围绕公司的经营发展规划和工作计划,负责编制公司财务计划和费用预算,有效地筹划和运用公司资金。 4.做好公司各项资金的收取与支出管理。 5.定期汇总管理处的经济运作情况,提出合理化建议,为公司发展决策提供参考依据。 6.做好财务统计和会计账目、报表及年终结算工作,并妥善保管会计凭证,账簿、报表和其他档案资料。 7.定期检查财务计划、费用预算执行情况,监督各部门的财务活动,分析存在问题,查明原因,及时解决。 8.统一归口管理公司各种票据和账目,杜绝管理处资金流失。 9.负责财务人员的业务培训和考核监督工作。 10.保守公司管理处机密,维护公司利益。

实验五动态页式存储管理实现过程的模拟

实验五动态页式存储管理实现过程的模拟 一、实验目的与要求 在计算机系统中,为了提高主存利用率,往往把辅助存储器(如磁盘)作为主存储器的扩充,使多道运行的作业的全部逻辑地址空间总和可以超出主存的绝对地址空间。用这种办法扩充的主存储器称为虚拟存储器。通过本实验帮助学生理解在分页式存储管理中怎样实现虚拟存储器;掌握物理内存和虚拟内存的基本概念;掌握重定位的基本概念及其要点,理解逻辑地址与绝对地址;掌握动态页式存储管理的基本原理、地址变换和缺页中断、主存空间的分配及分配算法;掌握常用淘汰算法。 二、实验环境 VC++6.0集成开发环境或java程序开发环境。 三、实验内容 模拟分页式虚拟存储管理中硬件的地址转换和缺页中断,以及选择页面调度算法处理缺页中断。 四、实验原理 1、地址转换 (1)分页式虚拟存储系统是把作业信息的副本存放在磁盘上,当作业被选中时,可把作业的开始几页先装入主存且启动执行。为此,在为作业建立页表时,应说明哪些页已在主存,哪些页尚未装入主存,页表的格式如图10所示: 图10 页表格式 其中,标志----用来表示对应页是否已经装入主存,标志位=1,则表示该页已经在主存,标志位=0,则表示该页尚未装入主存。 主存块号----用来表示已经装入主存的页所占的块号。

在磁盘上的位置----用来指出作业副本的每一页被存放在磁盘上的位置。 (2)作业执行时,指令中的逻辑地址指出了参加运算的操作存放的页号和单元号,硬件的地址转换机构按页号查页表,若该页对应标志为“1”,则表示该页已在主存,这时根据关系式: 绝对地址=块号×块长+单元号 计算出欲访问的主存单元地址。如果块长为2的幂次,则可把块号作为高地址部分,把单元号作为低地址部分,两者拼接而成绝对地址。若访问的页对应标志为“0”,则表示该页不在主存,这时硬件发“缺页中断”信号,有操作系统按该页在磁盘上的位置,把该页信息从磁盘读出装入主存后再重新执行这条指令。 (3)设计一个“地址转换”程序来模拟硬件的地址转换工作。当访问的页在主存时,则形成绝对地址,但不去模拟指令的执行,而用输出转换后的地址来代替一条指令的执行。当访问的页不在主存时,则输出“* 该页页号”,表示产生了一次缺页中断。该模拟程序的算法如图11。 图11 地址转换模拟算法 2、用先进先出(FIFO)页面调度算法处理缺页中断。

模拟实现用位示图法管理文件存储空间的分配与回收

合肥学院 计算机科学与技术系课程设计报告 20011~2012 学年第1 学期 课程名称操作系统原理 课程设计名称模拟实现用位示图法管理文件存储空间的分配与回收 专业班级 学生姓名 学生学号 指导教师 20011 年11 月

实验题目模拟用位示图法管理文件存储空间的分配与回收 一、实验目的: 1)理解文件存储空间的分配与回收的基本概念,掌握产生文件存储空间的分配与回收 的几种方法,体会位示图算法是管理文件存储空间的分配与回收的一种行之有效的 方法。 2)通过编写程序实现位示图算法,进一步理解位示图算法的原理和执行过程,掌握位 示图算法的描述和应用,进一步熟练掌握文件存储空间的分配与回收的方法。二、实验内容: (1)首先对位示图算法原理进行深刻的理解和掌握; (2)程序首先要给出位示图初态。分配时,参数为文件名及需要分配的块数。回收时,参数为文件名。 (3)回答信息:分配时,能够分配时,给出文件名和分配的具体块号。否则,给出无法分配的信息。显示位示图。 (4)回收时:给出回收的具体块号。显示位示图。 三、实验环境 Windows系统,在C++的环境下来运行这儿程序 四、实验主要步骤 1、初始化及使用数据结构 对数组WST[]元素初始化为0。定义以下3个链表并初始化。空闲区结构体定义free_link、申请空间作业结构体定义office、相关位示图操作的结构体定义work。 位示图算法是利用二进制的一位来表示磁盘中的一个盘块的使用情况。在外存上建立一张位示图(bitmap),记录文件存储器的使用情况。每一位仅对应文件存储器上的一个物理块,取值0和1分别表示空闲和占用。文件存储器上的物理块依次编号为:0、1、2、…。定义为一维数组WST[],操作起来更为方便。下表号与盘块号对应。在输出的时候控制输出为二维形式。 2、申请空间算法 首先要输入文件名和大小,查找与已存在的文件是否重名。没有,则比较空闲区中空闲块数是否大于欲分配的块数。有的话分配。 分配的时候该作业要记录下自己所占盘块的其实盘号和所占用的盘快数。并修改对应盘块的位示图的值。 m=r->start_location;//空闲区的起始地址 s->begin_location=r->start_location;//作业从空闲区的起始地址开始分配 r->start_location=r->start_location+s->office_number;//改变空闲区空闲块数的起始地址r->free_number=r->free_number-s->office_number;//改变空间区块数的大小

空闲磁盘存储空间的管理_OS课程设计

OS课程设计 空闲磁盘存储空间的管理 1、课程设计任务、要求、目的 我们组选的题目是第17题:空闲磁盘存储空间的管理:简单方法。 具体要求如下: ●建立相应的数据结构; ●磁盘上建立一个文件,文件长度设为10MB,用该文件来模拟一个磁盘,磁盘的物理块 大小为512字节。 ●建立进程的数据结构; ●时间的流逝可以用下面几种方法模拟:(a)按键盘,每按一次可认为过一个时间单位; (b) 响应WM_TIMER; ●将一批进程对磁盘的请求的情况存磁盘文件,以后可以读出并重放; ●使用两种方式产生进程对磁盘的请求:(a) 自动产生(b) 手工输入 ●显示每次磁盘的请求和空间释放后的相关数据结构的状态; ●显示每次磁盘的请求和空间释放后状态; ●支持的管理方法:空闲表法、空闲链表法、位示图法、UNIX成组链接法。 该课程设计的目的: 磁盘初始化时把磁盘存储空间分成许多块(扇区),这些空间可以被多个用户共享。用户作业在执行期间常常要在磁盘上建立文件或把已经建立在磁盘上的文件删去,这就涉及到磁盘存储空间的分配和回收。一个文件存放到磁盘上,可以组织成顺序文件(连续文件)、链接文件(串联文件)、索引文件等,因此,磁盘存储空间的分配有两种方式,一种是分配连续的存储空间,另一种是可以分配不连续的存储空间。怎样有效地管理磁盘存储空间是操

作系统应解决的一个重要问题,通过这个课程设计可以使我们更好地熟悉掌握磁盘存储管理的原理和分配与回收算法,进一步掌握软件开发方法并提高解决实际问题的能力。 2、原理与算法描述 我们组将题目中所给的方法分为连续存储空间法和链接存储空间法,并选取其中最具代表性的位示图法和UNIX成组链接法(连续存储与链接存储的结合)来进行代码的编写。位示图法原理: 位示图用来指出磁盘块的使用情况,位示图中各个元素的取值只有“0”和“1”两种,其中“1”状态表示相应的磁盘块已经被占用,“0”状态表示该磁盘块空闲。申请磁盘块时,分配函数查询第一个空闲块所属的位置,然后从该位置往后选取对应数目的空闲块进行分配,将相应位置的位示图上相应元素置为“1”。为了编程方便,我们查阅资料,假设一个磁盘有8个柱面,每个柱面有2个磁道,每个磁道有4个物理记录。释放磁盘块时与分配磁盘块是相反的操作,由释放函数找到第一个空闲磁盘块,并从该位置往前一单位将被占用的相应数目的磁盘块释放,将位示图上相应元素置为“0”。 成组链接法原理: 成组链接法常应用于UNIX系统中,其主要思想是将结合顺序表和链表进行择优组合,即定义组内为顺序表,最大值为MAXGROUP,大于MAXGROUP的磁盘块另行分组,构成新的顺序表;但是这些顺序表之间用链表的结构进行连接,相当于添加一个新的节点。 3、开发环境 由于我们只是简单的对磁盘处理进行模拟,所以就在自己的个人PC上进行,用的IDE 是DEV C++(Eclipse上JAVA写的界面被老师打回来了。。。)。

人员组织机构图

人员组织机构图

人员组织机构图 项目 经理 商务经理技术 经理 现场 经理 材料部财务 部 预算 部 技术 资料 部 质安 部 工程 部 土方 施工 队 绿化 施工 队 试验 室 项目 副经 理

部门职责及主要人员数量及分工 1.项目经理岗位职责: 1.1认真学习政府、集团、以及公司内部的方针、政策,行业规范,把握行业动态,努力提高自身的素质、专业,熟悉业务,提高工作效率。 1.2全面负责并指导、督促下属各部门各施工作业班组的施工生产、质量安全、工程进度、文明生产等工作。深入施工现场,随时掌握施工生产情况,及时解决协调所出现的问题。 1.3经常与政府相关部门、建设单位、监理单位取得联系,听取政府相关部门人员、建设方、监理方等对施工项目的要求和情况反映,做好协调工作,保证施工生产的顺利进行。 1.4认真组织编制、审核工程总进度计划、月进度计划、周进度计划,确保工程按期完成。组织每月的施工生产、工程质量、CI形象管理、安全文明的检查评比工作,定期组织召开生产、安全协调会议,认真计划、总结、研究、布置、落实好各项施工任务。 1.5端正工作作风,视质量为生命,安全为保障,效益为中心,增创社会信誉,确保完成公司下达的各项指标,抓好公司的各项管理工作,建立和健全以岗位责任制为中心的各项规章制度,并严格贯彻执行。 1.6负责项目财务工作。 2.项目副经理岗位职责: 2.1协助项目经理组织项目部的正常管理工作,协助项目经理抓好施工安全、质量、进度及责任成本控制。 2.2负责项目的施工管理、安全、质量、环境保护等工作,组织编制项目部的管理办法和文明施工管理规则,并负责贯彻落实。

磁盘空间管理模拟实验

目录 摘要 (2) 前言 (3) 正文 (4) 1. 实验目的 (4) 2. 设计思想 (4) 3. 实验结构图 (5) 4. 各模块的伪码算法 (5) 5. 测试分析 (10) 6. 测试结果 (11) 7. 源程序 (14) 总结 (24) 参考文献 (25) 致谢 (26)

摘要 要把文件信息存放在存储介质上,必须先找出存储介质上可供使用的空闲块。存储介质上某个文件不再需要时,又要收回它所占的存储空间作为空闲块。用户作业在执行期间经常要求建立一个新文件或撤消一个不再需要的文件,因此,文件系统必须要为它们分配存储空间或收回它所占的存储空间。如何实现存储空间的分配和收回,取决于对空闲块的管理方法,主要有两种对磁盘存储空间的分配和收回的方法:位示图法(用一张位示图(简称位图)来指示磁盘存储空间的使用情况),空闲块链接法(在UNIX操作系统中,把磁盘存储空间的空闲块成组链接)。 关键词:磁盘的分配和回收管理;位示图;成组链接。

前言 通过该题目的设计过程,掌握磁盘存储管理的原理、软件开发方法并提高解决实际问题的能力。学习使用位示图管理磁盘空间的分配与回收,了解程序运行前和回收磁盘的物理地址过程。学会用模拟UNIX系统的成组链接法实现磁盘空间的管理。了解UNIX的命令及使用格式,熟悉UNIX/LINUX的常用基本命令,练习并掌握UNIX提供的vi编辑器来编译C程序,学会利用gcc、gdb编译、调试C程序。希望通过本次设计过程可以提高自己的分析问题的能力和实际动手的能力,将学到的知识用于实践中。

正文 1. 实验目的 磁盘格式化时,系统把磁盘存储空间分成许多磁道。每个磁道又分成若干个扇区(又叫做块)。这些空间就是用来存放用户文件的。当用户的文件不再需要时,就应该删除。把一个文件存放到磁盘上时,可以组织成连续文件,链接文件,索引文件等。因此,磁盘空间的分配方法也有两种,一种是连续空间的分配;一种是不连续空间的分配(又叫动态分配)。如何充分有效的利用磁盘空间,是操作系统应解决的重要课题之一。通过本实验,使学生对磁盘空间的分配与回收有一个较深入的理解。 2. 设计思想 位示图法: 一个简单的管理方法是用一张位示图(简称位图)来指示磁盘存储空间的使用情况。一个盘组的分块确定后,根据分配的总块数决定位图由多少个字组成,位图中的每一位与盘组分块一一对应。位示图是一张可以反映磁盘空间是否被占有的模拟图,用一个二维数组表示磁盘的空间,数组内每一个元素表示磁盘内相应的分块,数组元素为“1”表示该块已被占,“0”表示该块为空。数组元素位置与磁盘分块一一对应,即可描述出磁盘空间的利用情况。 成组链接法: 首先定义磁盘分配数组并初始化,9个一维数组分别表示9个空闲块,程序运行时,先将专用块A〔0〕复制到内存中,然后进行功能选择,分配时,查MA,从中找出空闲块号,当一组的空闲块只剩第一块时,应把该块中指出的下一组的空闲块数和块号复制到专用块这,然后把该块分配给申请者,当一组的空

公司组织架构图及岗位职责

公司组织机构图 1、一个上级原则 2、责权一致原则 3、既无重叠又无空白原则 人员编制表

岗位职责 总经理: 主持公司的日常经营管理,负责公司运营,组织实施公司决议 制定、执行、修改和废止公司的基本管理制度和具体规章 设置、调整或撤销公司内部管理机构 依有关规章制度决定公司职工的奖惩、调资、晋级、处分和辞退 负责经营绩效的分析及考核各职能部门的工作 根据每月销项报表及成本报表,制定下月销售计划。 总经理助理岗位职责: 1、在总经理领导下负责办公室的全面工作,努力作好总经理的参谋助手,起到承上启下的作用,认真做到全方位服务。 2、在总经理领导下负责企业具体管理工作的布置、实施、检查、督促、落实执行情况。 3、协助总经理作好经营服务各项管理并督促、检查落实贯彻执行情况。 4、负责各类文件的分类呈送,请集团领导阅批并转有关部门处理。

5、协助总经理调查研究、了解公司经营管理情况并提出处理意见或建议,供总经理决策。 6、做好企业内外文件的发放、登记、传递、催办、立卷、归档工作; 7、负责企业内外的公文办理,解决来信、来访事宜,及时处理、汇报; 人事: 1、负责公司人力资源工作的规划,建立、执行招聘、培训、考勤、劳动纪律等人事程序或规章制度; 2、负责制定和完善公司岗位编制,协调公司各部门有效的开发和利用人力,满足公司的经营管理需要; 3、根据现有的编织及业务发展需求,协调、统计各部门的招聘需求 4、做好各岗位的职位说明书,并根据公司职位调整组要进行相应的变更,保证职位说明书与实际相符; 5、负责办理入职手续,负责人事档案的管理、保管、用工合同的签订; 6、建立并及时更新员工档案 7、制定公司及各个部门的培训计划和培训大纲,经批准后实施; 8、对试用期员工进行培训及考核,并根据培训考核结果建议部门录用; 行政: 管理公司各项合同 采购管理公司办公用品,确保公司日常用品使用的连续性 负责办公室日常办公制度维护、管理。 负责办公室各部门办公后勤保障工作。 负责对全体办公人员(各部门)进行日常考勤。 5、处理公司对外接待工作。 6、组织公司内部各项定期和不定期集体活动。 7、协助总经理处理行政外部事务。

空闲磁盘存储空间的管理:位示图法

空闲磁盘存储的管理:位示图法 1:建立相应的数据结构 2:磁盘上建立一个文件,文件长度设为10MB,为该文件来模拟一个磁盘,磁盘的物理块大小为512字节 3:显示每次磁盘的请求和空间释放后的位示图状态 4显示每次磁盘的请求和空间释放后的全磁盘的状态 5:模拟文件的创建和删除,从而产生磁盘潘快请求和释放,验证以上设计 代码: // OS暑?期ú课?程ì设Θ?计?.cpp : 定¨义?控?制??应畖用?程ì序ò的?入?口ú点?。£ // #include"stdafx.h" #include #include #include using namespace std ; //文?件t类え? class file { public: string name ; int occupy ; int grade_block ; int start ; }; #define MAX_LINE 3 #define MAX_COLUMN 32 int BIT[32][1000]; int byte[MAX_LINE] ; int file_count; int judge[32] ; int judge2[32]; int cycle ; file f[1000]; void init(int line ,int column); void show() ; void set(int now_location, int occupy ); void clear(int now_location, int occupy);

void bitset(int index ,int temp_block_quantity); void create_file(string temp_name, int temp_occupy ); void delete_file(string name); bool byte_judge(int num,int i); int _tmain(int argc, _TCHAR* argv[]) { string cmd; string file_name ; int file_occupy ; init( MAX_LINE, MAX_COLUMN ) ; //初?始?化ˉwhile ( cin >> cmd ) // { if( "q" == cmd || "Q" == cmd ) { exit(0) ; return 0 ; } cin >> file_name ; if("create" == cmd) { cin >>file_occupy ; create_file(file_name,file_occupy); } else { delete_file(file_name) ; } } return 0; } void show() { for(int i = 0 ; i < MAX_LINE ; i ++) { for(int j = 0 ; j < MAX_COLUMN ; j ++) { //cout<

磁盘存储空间模拟管理系统 位示图方向

******************* 实践教学 ******************* 兰州理工大学 计算机与通信学院 2013年秋季学期 操作系统课程设计 题目:磁盘空间管理模拟实验 专业班级:计算机科学与技术11级4班 姓名:刘文清 学号:11240425 指导教师:李明 成绩:

目录 摘要 (2) 1.设计思想 (3) 2.算法设计 (4) 3.源程序 (6) 4.运行结果 (10) 5.总结 (13) 参考文献 (13)

摘要 要把文件信息存放在存储介质上,必须先找出存储介质上可供使用的空闲块。存储介质上某个文件不再需要时,又要收回它所占的存储空间作为空闲块。用户作业在执行期间经常要求建立一个新文件或撤消一个不再需要的文件,因此,文件系统必须要为它们分配存储空间或收回它所占的存储空间。如何实现存储空间的分配和收回,取决于对空闲块的管理方法,此系统采用的对磁盘存储空间的分配和收回的方法是:位示图法(用一张位示图(简称位图)来指示磁盘存储空间的使用情况)。 此磁盘存储模拟管理系统采用C++语言实现的,其运行环境是Windows xp,Windows 7操作系统。 关键词:磁盘的分配和回收管理;位示图,磁盘存储空间管理。

1.设计思想 在Windows XP,Windows 7等操作系统中对磁盘存储空间的管理是位示图法,位示图法:一个简单的管理方法,是用一张位示图(简称位图)来指示磁盘存储空间的使用情况。一个盘组的分块确定后,根据分配的总块数决定位图由多少个字组成,建筑位图中的每一位与盘组分块1-1对应,“1”状态表示相应块已占用,“0”状态表示该块空闲。在分配时先查看要分配的位置的数值,若其值为0,则分配,否则不予分配,输出此空间已被占用;在释放时分别找到柱面号,磁道号和扇区号所对应的在位示图中的位置,进行释放,若其值为0,则表示为分配,若其值为1,则变为0,回收完成。

文件系统存储空间管理模拟实验报告

课程名称计算机操作系统实验名称文件系统存储空间管理模拟姓名学号 专业班级实验日期 成绩指导老师 一、实验目的 根据提出的文件分配和释放请求,动态显示磁盘空闲空间的 态以及文件目录的变化,以位示图和索引分配为例:每次执行请求后要求显示或打印位示图的修改位置、分配和回收磁盘的物理块地址、更新的位示图、目录。 二、实验原理 用数组表示位示图,其中的每一位对应磁盘一个物理块的状态,0表示、空闲,1表示分配;当请求分配一个磁盘块时,寻找到数组中为0的位,计算相对磁盘块号,并计算其在磁盘中的物理地址(柱面号、磁道号、物理块号),并将其状态由0变到1。当释放某一物理块时,已知其在磁盘中的物理地址,计算其相对磁盘块号,再找到位示图数组中的相应位,将其状态由1变为0。 三、主要仪器设备 PC机(含有VC) 四、实验容与步骤 实验容:1. 模拟文件空间分配、释放过程,可选择连续分配、链式分配、索引分配法;2. 文件空闲空间管理,可采用空白块链、空白目录、位示图法; 步骤如下: 1. 输入磁盘基本信息参数,计算位示图大小,并随机初始化位示图; (1)磁盘基本信息:磁盘柱面数m, 每柱面磁道数p, 每磁道物理块数q; (2)假设采用整数数组存放位示图,则数组大小为: Size= ceil((柱面数*每柱面磁道数*每磁道物理块数)/(sizeof(int)*8))(3)申请大小为size的整数数组map,并对其进行随机初始化。 例如:假设m=2, p=4, q=8, 共有64个磁盘块,若sizeof(int)=2, 则位示图大小为4,map[4]如下: 地址到高地址位上。即map[0]的第0位到第15位分别对应0号磁盘块到15号磁盘块的状态,map[1]的第0位到第15位对应16号磁盘块到31号磁盘块的状

项目组织管理机构及人员配备

项目组织管理机构及人 员配备 文稿归稿存档编号:[KKUY-KKIO69-OTM243-OLUI129-G00I-FDQS58-

项目组织管理机构及人员配备 第一节项目组织管理机构 1.项目管理模式 项目管理是一个全过程、全方位的规划、组织、控制与协调工作,其目的是使项目顺利实现所要求的质量、所规定的时限、所批准的费用预算,因此,对于一个施工项目来说,采取具有程序性、全面性、科学性的项目管理方法,做到“三控制、二管理、一协调”(即进度控制、质量控制、费用控制、合同管理、信息管理、组织协调),是顺利完成施工任务、实现施工工程目标的保证。 本工程由我公司选派最优秀且具备相应资质与业绩要求的项目经理负责组建本工程项目经理部,负责本工程的具体施工管理。同时根据《建设工程项目管理规范》及《珠规建建[2010]48号》的要求,将严格按照“项目法”施工管理模式进行项目管理,项目管理机构实行项目经理负责制,设项目技术负责人、项目副经理,下设施工、质量、安全、造价等管理部门,项目经理对质量、工期、安全、成本及文明施工全面负责。各施工管理职能部门在项目经理的直接指导下做到有计划的组织施工,确保工程质量、工期、安全等方面达到目标要求。施工期间,我公司的骨干力量(项目经理、项目副经理、技术负责人、专业施工员)保持稳定。 由于本工程的重要性和地理位置的特殊性,该工程被列为本公司重点工程,专门设立后方保障部门,从人员、机具、施工物资上为该工程提供充分保证,组织好本工程的计划协调,公司各部门也在各自业务管理范围内制订为本工程提供服务的保证措施,确保工程优质按期完工,及早交付并投入使用。 2.项目组织机构 组织强有力的工程承包项目经理部,根据本工程的特点,项目管理机构由四个层次组成。 (1)决策层——工程指挥部核心层 工程总指挥部是项目施工决策和保护机构,在公司整个范围内,对项目施工所需要的人员、机械、材料、资金等进行统一协调和调配,为项目提供可靠的保障。 (2)指导层——工程指挥部

磁盘配额的概述及管理

磁盘配额的概述及管理 为什么创建磁盘配额 在Linux根分区的磁盘空间耗尽时,Linux将无法再创建新的文件(包括程序运行的临时文件),从而导致服务程序崩溃,系统无法启动等故障现象。 为了避免出现类似问题,可以设置启用磁盘配额功能,对用户在指定文件系统(分区)中使用磁盘空间、文件数量进行限制,以防止个别用户恶意或无意间占用大量磁盘空间,从而保证系统存储空间的稳定性和持续可用性。 使用磁盘配额的前提条件 设置磁盘配额,需要安装quota 软件包,用于配置和管理磁盘配额,在RHEL 6中,系统默认安装了quota 软件包。 磁盘配额的作用范围 quota软件设置的磁盘配额功能,只在指定的文件系统(分区)内有效,用户使用其他未设置配额的文件系统时,将不受限制。 磁盘配额的限制对象 quota 主要针对系统中的指定用户账号、组账号进行限制,没有被设置限额的用户或组将不受影响。对组账号设置配额后,组内所有成员使用的磁盘容量、文件数量的总和不能超过限制。 磁盘配额的限制类型 # 磁盘容量:限制用户能够使用的磁盘空间的大小,默认单位为KB # 文件数量:限制用户能够使用的文件个数 磁盘配额的限制方法 # 软限制:指定一个软性的配额数值(如100MB的磁盘空间、80个文件),在固定的宽限期限(默认为七天)内允许超过这个限制,但系统会给出警告信息

# 硬限制:指定一个硬性的配额数值(如120MB的磁盘空间、100个文件),是绝对禁止用户超过限制值,当达到硬限制值时,系统会给出警告信息并禁止继续写入数据。硬限制的配额值应该大于软限制值,否则软限制将失效 实验: 下面将上篇创建的yang 逻辑卷/dev/ysf/yang 挂载到/mailbox 目录下,然后在该文件中配置实现磁盘配额功能。 1.以支持磁盘配额功能的方式挂载文件系统 将usrquota, grpquota挂载参数写入到“/etc/fstab”文件中。 # chmod 777 /mailbox //为后续测试方便,允许任何用户写入数据 # vim /etc/fstab //修改yang 逻辑卷的挂载配置 /dev/ysf/yang /mailbox ext4 defaules,usrquota,grpquota0 0 //永久性挂载 2.检测磁盘配额并生成配额文件 使用quotacheck命令可以对指定的文件系统进行磁盘配额检测,也可以用来建立配额文件,以便保存用户、组在该分区的配额设置 例如:执行以下操作将扫描系统中的所有文件系统,并在支持配额的文件系统中建立配额文件 # quotacheck -augcv -a 表示扫描所有分区,如果不使用,将必须指定一个分区或挂载点目录作为命令参数 -u 表示检测用户配额信息 -g 表示检测组配额信息 -c 表示创建新的配额文件 -v 表示显示命令执行过程中的细节信息 # ls -l /mailbox/aquota.* 可以看到新建立的配置文件,包括“https://www.wendangku.net/doc/9e17563796.html,er”、“aquota.group”,分别用于保存用户、组的配额设置,配置文件保存在该文件系统根下,默认权限为600

1公司组织机构图与各岗位职责权限

公司组织机构图及各部门 职责管理规程文件编号: Q/HH-ry-01-2017首页,共5页 起草:部门主管审核:生产副总审核:QA批准:管理者代表 签名:签名:签名:签名: 起草日期:审核日期:起草日期:审核日期: 颁发部门: QA部生效日期:替换:——分发部门质量管理部、供销部、生产技术部、行政部、财务部 1.目的 用于规范华护生物责任有限公司组织机构及人员定岗编制的管理。 2.范围 适用于华护生物责任有限公司组织机构管理。 3.职责 3.1 文件起草人负责按本规程的要求进行组织机构及人员定岗编制的制订 / 修订,确保人员定岗编制等符合本规 程要求。 3.2各部门严格按本规程要求执行。 3.3人力资源行政部负责监督本规程的执行,确保颁发执行的文件符合本规程的各项要求 4.程序 4.1本公司的组织机构根据《医疗器械生产质量管理规范(2014 版)》及生产和经营需要设置。 4.1.1设立独立的质量保证部、质量控制部,履行质量保证和质量控制的职责。 4.2本公司组织机构用图示和文字说明方式上报有关部门,并通报公司各部门和员工。 4.3公司生产、质量、经营条件发生变化,必要时应对组织机构进行调整;组织机构的调整应经总经理办 公会议讨论通过。 4.4新的组织机构通过后,人力行政部应编制出新的组织机构图,与组织机构调整通知同时发布。 4.5新的组织机构图注明以下内容 4.5.1组织机构调整的内容。 4.5.2调整的依据及调整后执行日期。 5.6人员配置 5.6.1公司组织机构图图中 1-4 级岗位每个岗位设置 1人, 4 级以下岗位人员编制由各部门根据具体 需要设置,设置前设置人数应报总经理批准后实施。 5.6.2质量保证部长和生产保证部长不得互相兼任。

linux实验五: 磁盘管理含源代码

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

表2 三、实验原理、方法和手段 磁盘初始化时把磁盘存储空间分成许多块(扇区),这些空间可以被多个用户共享。用户作业在执行期间常常要在磁盘上建立文件或把已经建立在磁盘上的文件删去,这就涉及到磁盘存储空间的分配和回收。一个文件存放到磁盘上,可以组织成顺序文件(连续文件)、链接文件(串联文件)、索引文件等,因此,磁盘存储空间的分配有两种方式,一种是分配连续的存储空间,另一种是可以分配不连续的存储空间。 为了表示哪些磁盘空间已被占用,哪些磁盘空间是空闲的,可用位示图来指出。位示图由若干字节构成,每一位与磁盘上的一块对应,“1”状态表示相应块已占用,“0”状态表示该块为空闲。位示图的形式与实习四中的位示图一样,但要注意,对于主存储空间和磁盘存储空间应该用不同的位示图来管理,绝不可混用。 当申请一块磁盘空间时,由分配程序查位示图,找出一个为“0”的位,计算出这一位对应块的磁盘物理地址,且把该位置成占用状态“1”。假设现在有一个盘组共80个柱面,每个柱面有两个磁道,每个磁道分成4个物理记录。那么,当在位示图中找到某一字节的某一位为“0”时,这个空闲块对应的磁盘物理地址为:柱面号=字节号磁道号=[位数/4] 物理记录号={位数/4} 当归还一块磁盘空间时,由回收程序根据归还的磁盘物理地址计算出归还块在位示图中的对应位,把该位置成“0”。归还块在

磁盘管理工具AcronisDiskDirectorSuite图文教程

安装WIN7或者VISTA系统,就要给安装系统区划分一个不少于15到20GB的磁盘空间。划分少了,将来升级不够用;划分多了,也没有多大必要。这种划分,最好是借助于磁盘管理软件。笔者认为在同类软件中,Acronis Disk Director Suite是做得最好的,特点是:功能强大(分割、合并、增加、减少)容易上手,划分快捷,对现有文件无损。 英文原版 + 注册机下载: —— ——这是截至目前笔者用过的最安全、最有效的磁盘分区软件。 有关功能简介: 下载安装后,你会发现:该软件整合了“四大工具包”: 1、Acronis Partition Expert : 这个软件用来更改分区大小,移动硬盘分区,拷贝复制硬盘分区,硬盘分区分割,硬盘分区合并,绝对无损硬盘数据。 2、Acronis OS Selector : 硬盘安装多系统有福了,用它来控制多启动界面。 3、Acronis Recovery Expert : 强悍的工具,用来扫描和恢复丢失的分区。 4、Acronis Disk Editor: 硬盘修复工具,比较专业,允许对硬盘磁盘进行高级操作,利润硬盘引导记录表操作和16进制编辑。 操作使用图示:

安装完后在桌面上会出现Acronis的图标,打开会出现使用界面,这个时候会出现两个选项—— A.自动模式(Automatic Mode): 在置顶菜单的视图(View)里可以切换这两种模式。在自动模式下,能够对硬盘进行的操作很少,这个模式类似我的电脑,可以查看分区内容,增加分区容量等,不推荐用此模式。 B.手动模式(Manual Mode); 在手动模式下可以对硬盘的分区进行删除、创建、移动、切割、更改类型、进行编辑等等。

相关文档
相关文档 最新文档