操作系统中的磁盘管理

2025 年 4 月 30 日 | 阅读 4 分钟

操作系统负责磁盘管理的各种操作。现代操作系统不断扩展其服务和附加功能,所有操作系统都实现了四种基本的操作系统管理功能。这些功能如下:

  1. 进程管理
  2. 内存管理
  3. 文件和磁盘管理
  4. I/O 系统管理

大多数系统都包含辅助存储设备(磁性磁盘)。它是一种低成本、非易失性的数据和程序存储方法。用户数据和程序存储在不同的存储设备中,这些设备被称为文件。操作系统负责根据需要为辅助存储设备上的文件分配空间。

它不保证文件以连续位置保存在物理磁盘驱动器上。它高度依赖于提供的空间。如果磁盘驱动器已满,新文件通常存储在不同的位置。另一方面,操作系统示例文件隐藏了文件被分成多个部分的事实。

操作系统需要跟踪磁盘上每个文件的每个部分的磁盘驱动器位置。在某些情况下,它可能包括跟踪物理磁盘驱动器上的许多文件和文件段。此外,操作系统必须能够识别每个文件,并根据要求对其进行读写操作。因此,操作系统主要负责设置文件系统,确保对辅助存储进行读写活动的安全性、可靠性,并保持访问时间的一致性。

操作系统的磁盘管理包括以下各个方面:

1. 磁盘格式化

一个新的磁性磁盘基本上是一张白板。它是磁记录材料的盘片。在磁盘可以保存数据之前,必须将其分区为可由磁盘控制器读写的扇区。这称为**物理格式化**和**低级格式化**。

**低级格式化**为驱动器上的每个扇区创建唯一的数据结构。扇区的数据结构由一个头部、一个数据区域和一个尾部组成。磁盘控制器使用头部和尾部来存储错误纠正码(ECC)和扇区号等信息。

操作系统需要将其自身的数据结构记录在磁盘驱动器上,才能将其用作文件的存储介质。它分两个阶段完成此操作。最初的步骤是将磁盘驱动器分成一个或多个柱面组。操作系统可以将每个分区视为一个独立的磁盘。例如,一个分区可能包含操作系统可执行代码的副本,而另一个分区可能包含用户文件。分区后的第二阶段是**逻辑格式化**。操作系统在此第二阶段将初始文件系统数据结构存储在磁盘驱动器上。

2. 引导块

当系统开机或重启时,它必须执行一个初始程序。系统的启动程序称为引导程序。它在初始化系统的所有组件后启动操作系统。引导程序的工作原理是:在磁盘上查找操作系统内核,将其加载到内存中,并跳转到初始地址以开始操作系统执行。

引导程序通常保存在大多数计算机系统的只读内存中。它很有用,因为只读内存不需要初始化,并且位于固定的位置,CPU 可以在通电或重置时开始执行。此外,它不受计算机系统病毒的影响,因为 ROM 是只读的。问题在于更新此引导代码需要更换 ROM 硬件芯片。

因此,大多数计算机系统在引导 ROM 中包含小型引导加载程序软件,其主要功能是从磁盘驱动器加载完整的引导程序。完整的引导程序可以轻松修改,并用新版本重写磁盘。引导程序存储在一个分区中,被称为**引导块**。**引导盘**或**系统盘**是一种包含引导分区的磁盘。

3. 坏块

磁盘由于其移动部件和严格的公差而容易发生故障。当磁盘驱动器发生故障时,必须更换它,并使用备份介质将内容传输到更换磁盘。一段时间内,一个或多个扇区会发生故障。大多数磁盘出厂时也带有坏块。这些坏块的处理方式因磁盘和控制器的使用方式而异。

在磁盘上,控制器会维护一个坏块列表。该列表在工厂的低级格式化期间初始化,并在磁盘的使用寿命期间更新。每个坏扇区都可以通过控制器将其替换为备用扇区之一。这个过程被称为扇区备用。