实验五 磁盘存储空间的管理 一、实验目的 磁盘格式化时,系统把磁盘存储空间分成许多磁道
每个磁道又分成若干个扇区(又叫做磁盘块)
之后用 fdisk 命令对硬盘进行分区,即使只有一个分区,也必须用 fdisk 命令进行分区
分区的目的,就是制作文件卷,形成文件系统
一个文件卷一般都被划分成引导扇区、文件系统管理区和文件数据区
其中,文件数据区用来存放系统文件和用户文件
用户可以通过文件系统提供的 API,创建、打开、关闭和对文件进行读写
当用户的文件不再需要时,就应该删除
把一个文件放到磁盘上时,可以组织成连续文件、链接文件或索引文件等
因此,磁盘空间的分配方法也有两种,一种是连续空间的分配,一种是不连续空间的分配(又叫动态分配)
如何充分有效地利用磁盘空间,是操作系统应解决的重要课题之一
本实验模拟实现磁盘空间的分配与回收,使学生对磁盘空间的管理有一个较深入的理解
二、实验要求 书写实验报告,应该包括以下几项内容: (1)实验题目; (2)程序中使用的数据结构及主要符号说明; (3)程序流程图和带有详细注释的源程序; (4)执行程序名,并打印程序运行时的初值和运行结果; (5)通过实验后的收获与体验及对实验的改进意见和见解 三、实验内容 (1)假定现有一个磁盘组,共有 40 个柱面
每个柱面4 个磁道,每个磁道又划分成 4个物理记录
磁盘的空间使用情况用位示图表示
位示图用若干个字构成,每一位对应一个磁盘道
“1”表示占用,“0”表示空闲
为了简单,假定字长为16 位,一个字可用来模拟磁盘的一个柱面,其位示图如图5—1 所示
系统设置一个变量 S 记录当前的空闲磁盘块个数
位示图的初始状态由户自己设定
0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 1 1 1 1 1 1 0 1 0 0 1 1 1 1 1 0 图5-1 位示图 (2)申