### 操作系统(武汉大学版)相关知识点解析 #### 一、磁盘空闲空间的表示及磁盘空间分配和回收 **实验内容概述:** 本次实验主要关注于磁盘空闲空间的表示方法,以及如何模拟实现磁盘空间的分配和回收。这涉及到操作系统中的磁盘管理技术,尤其是文件系统层面对磁盘空间的有效利用。 **实验目的详解:** 磁盘格式化过程中,系统将磁盘存储空间分为多个磁道,每个磁道又被划分为若干扇区(即块)。利用Fdisk命令对硬盘进行分区,即使是单一分区也需要通过此命令完成。分区的主要目的是创建文件卷,从而构建文件系统。文件卷通常包括引导扇区、文件系统管理区和文件数据区三部分,其中文件数据区用于存储系统文件和用户文件。 用户可以通过文件系统的API创建、打开并读写文件。当不再需要某个文件时,应该将其删除,释放占用的空间。文件在磁盘上的组织形式可以是连续文件、链接文件或索引文件等。因此,磁盘空间的分配方法主要有两种:连续空间分配和非连续空间分配(动态分配)。 **实验内容详细解析:** 1. **连续磁盘存储空间的分配和回收:** - 在建立顺序文件时,需将逻辑记录按照一定的顺序存储在连续的磁盘空间中。磁盘初始化时,存储空间被划分为多个等长的块,并根据柱面号和盘面号进行编号。随着文件的创建与删除,磁盘空间会分割成多个区域,有些区域存储文件,有些则为空闲。 - 实验中采用空闲区表来记录磁盘上未被占用的空间。表中记录了每个空闲区的起始空闲块号、空闲块数量和状态。当需要分配空间给新文件时,从表中查找满足条件的空闲区,并更新其信息;删除文件后,释放的空间也需记录到空闲区表中。 - 物理地址的计算方法是基于柱面号、磁道号和物理记录号。假设磁盘上有200个柱面,每个柱面有20个磁道,每个磁道被分为6个等长的物理记录,则空闲块号与物理地址之间的转换公式为:物理记录号 = m (mod 6),磁道号 = (M mod 20),柱面号 = [M / (20 * 6)]。 - 删除文件时,从文件目录表中获取文件的起始地址和逻辑记录数量,然后计算出归还的起始空闲块号和块数,更新到空闲区表中。 2. **用位示图管理磁盘存储空间:** - 位示图是一种高效的磁盘空间管理方法,通过位的“0”或“1”状态来表示磁盘块是否被占用。“1”表示占用,“0”表示空闲。 - 申请磁盘空间时,分配程序通过查找位示图中的“0”,找到空闲的磁盘块,然后将其标记为占用状态。例如,假设有一个磁盘组包含8个柱面,每个柱面有20个磁道,每个磁道分为6个物理记录,则位示图的大小至少为240比特。 - 位示图不仅可以用于管理磁盘空间,还可以应用于主存储器或其他存储介质的空间管理。 **实验示例:** - 假设初始空闲区表如下所示: | 序号 | 起始空闲块号 | 空闲块个数 | 状态 | |------|-------------|------------|------| | 1 | 5 | 6 | 未分配 | | 2 | 14 | 3 | 未分配 | | 3 | 21 | 30 | 未分配 | | 4 | | | 空表目 | - 当一个文件需要占用10块空间时,分配程序查找空闲区表,发现第1个区满足条件(起始空闲块号为5,空闲块数为6)。由于需要10块空间,不足以完全占用第一个空闲区的所有块,因此剩余的6-10=-4块为空,需更新表中信息。 - 假设有文件被删除,其占用的磁盘空间为1号柱面2号磁道,0号物理记录开始的4块。根据转换公式,可以计算出起始空闲块号为\(2 * 20 + 2\) * 6 + 0 = 242,空闲块数为4,然后更新空闲区表。 通过以上实验,学生能够深入了解磁盘空间管理的基本原理和技术细节,为进一步学习操作系统中的高级磁盘管理技术打下坚实的基础。
- 粉丝: 0
- 资源: 5
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助