欢迎来到尧图网

客户服务 关于我们

您的位置:首页 > 教育 > 锐评 > 【计算机操作系统】第八章、磁盘存储器管理:从外存组织到可靠性技术

【计算机操作系统】第八章、磁盘存储器管理:从外存组织到可靠性技术

2025/5/15 10:47:42 来源:https://blog.csdn.net/ChiaWei_Lee/article/details/146568651  浏览:    关键词:【计算机操作系统】第八章、磁盘存储器管理:从外存组织到可靠性技术

前言

在计算机系统中,磁盘存储器是数据存储的核心组件。它不仅负责存储操作系统和应用程序,还保存了用户的所有重要数据。因此,磁盘存储器的管理对于系统的性能和可靠性至关重要。今天,我们就来深入探讨磁盘存储器管理的各个方面,包括外存的组织方式、文件存储空间管理、提高磁盘 I/O 速度的途径以及磁盘的可靠性技术。

一、外存的组织方式:文件的物理存放

文件在外存中的存储方式直接影响文件的访问效率和存储空间的利用率。常见的外存组织方式有三种:连续分配、链接分配和索引分配。

(一)连续分配:顺序式文件结构

连续分配是最简单的外存组织方式。它将文件存储在磁盘上连续的盘块中。这种方式的优点是顺序访问速度快,适合于大文件的读写操作。然而,它也有明显的缺点:首先,它要求有连续的存储空间,这可能导致存储空间的浪费;其次,文件的大小必须在创建时确定,这限制了文件的动态增长。
例如,假设我们有一个文件需要存储,系统会查找一个足够大的连续空间来存放这个文件。如果文件在使用过程中需要扩展,但周围没有足够的连续空间,那么文件就无法扩展,或者需要重新分配到其他位置。

(二)链接分配:链接式文件结构

链接分配通过将文件存储在多个离散的盘块中,并通过链接指针将这些盘块连接起来。这种方式的优点是可以消除外部碎片,文件的大小可以动态增长,不需要事先知道文件的大小。
链接分配有两种形式:隐式链接和显式链接。隐式链接在每个盘块中存储指向下一个盘块的指针,而显式链接则使用一个单独的表(如文件分配表 FAT)来存储所有盘块的链接信息。
例如,在 MS-DOS 系统中,文件分配表(FAT)记录了每个文件的盘块链接信息。这种方式使得文件的读写操作更加灵活,但也可能导致随机访问效率较低。

(三)索引分配:索引式文件结构

索引分配通过一个索引表来管理文件的盘块。索引表中存储了文件所有盘块的地址信息。这种方式的优点是可以支持高效的直接存取,适合于大文件的随机访问。
索引分配也有多种形式,包括单级索引、多级索引和混合索引。单级索引为每个文件分配一个索引表,多级索引则通过多层索引表来管理大文件,混合索引则结合了直接地址、单级索引和多级索引的优点。
例如,UNIX 系统中的 inode 结构使用混合索引分配,它结合了直接地址、一级索引、二级索引和三级索引,可以高效地管理大文件。

二、文件存储空间管理:如何分配和回收磁盘空间

文件存储空间管理是磁盘存储器管理的重要组成部分。它涉及到如何为新创建的文件分配存储空间,以及如何回收不再使用的存储空间。常见的管理方法包括空闲表法、空闲链表法、位示图法和成组链接法。

(一)空闲表法和空闲链表法

空闲表法适用于连续分配方式。系统维护一张空闲表,记录所有空闲区的起始盘块号和空闲盘块数。分配时,系统查找满足要求的空闲区,并更新空闲表。回收时,系统将回收的盘块合并到空闲表中。
空闲链表法则通过链表来管理空闲盘块或空闲盘区。分配时,从链表头部取出一个空闲盘块;回收时,将盘块添加到链表尾部。

(二)位示图法

位示图法使用一个二进制位来表示每个盘块的使用情况。系统维护一个位示图,其中的每一位对应一个盘块。分配时,系统查找值为“0”的位,并将其设置为“1”;回收时,系统将对应的位设置为“0”。

(三)成组链接法

成组链接法将空闲盘块分成若干组,每组的空闲盘块数和盘块号记录在前一组的第一个盘块中。分配时,系统从当前组中取出一个盘块;回收时,系统将盘块号记录在当前组中。

三、提高磁盘 I/O 速度的途径:让数据传输更快

磁盘 I/O 速度是影响系统性能的关键因素之一。提高磁盘 I/O 速度的方法包括磁盘高速缓存、提前读、延迟写、优化物理块分布和虚拟盘等。

(一)磁盘高速缓存

磁盘高速缓存是利用内存空间来暂存从磁盘读出的数据。当访问磁盘时,系统首先检查数据是否在高速缓存中。如果在,就可以直接从缓存中读取,从而减少磁盘访问次数。
磁盘高速缓存的实现需要解决三个问题:数据交付方式、置换算法和数据写回磁盘的时机。数据交付方式包括直接交付和指针交付;置换算法常用 LRU、NRU 和 LFU 等;数据写回磁盘的时机可以通过周期性调用 SYNC 系统调用来实现。

(二)其他方法

提前读:在顺序访问文件时,系统可以提前读取下一个盘块,从而减少访问延迟。
延迟写:系统可以将需要写入的数据暂时存储在缓存中,直到缓存满时再写入磁盘,从而减少写操作的次数。
优化物理块分布:尽量将属于同一文件的盘块安排在同一磁道上,减少磁头移动时间。
虚拟盘:利用内存仿真硬盘,提高数据访问速度。

四、磁盘的可靠性技术:保护数据安全

磁盘的可靠性技术是防止数据丢失和损坏的重要手段。常见的可靠性技术包括双目录、热修复重定向、磁盘镜像、磁盘双工、双机备份和后备系统。

(一)第一级容错技术 SFT-Ⅰ

双份目录和双份文件分配表:在磁盘上存放两份目录表和文件分配表(FAT),一份为主,一份为备份。如果主表损坏,可以使用备份表恢复。
热修复重定向和写后读校验:通过热修复重定向区替代坏的盘块,并在写操作后进行读校验,确保数据的正确性。

(二)第二级容错技术 SFT-Ⅱ

磁盘镜像:使用两块磁盘,数据同时写入主磁盘和备份磁盘,确保数据的冗余。
磁盘双工:使用两个磁盘控制器同时进行相同的操作,防止控制器故障导致数据丢失。

(三)基于集群技术的容错

双机热备份:两台服务器通过网络连接,一台为主服务器,一台为备份服务器。备份服务器监视主服务器的运行,一旦主服务器出现故障,备份服务器接替工作。
双机互为备份:两台服务器均在线工作,互为备份。
公用磁盘:多台计算机连接到一套公共的磁盘系统上,提高系统的可靠性。

(四)后备系统

后备系统用于存储暂时不用但需要长期保留的数据,防止系统故障或病毒导致数据丢失。常见的后备系统包括磁带机、磁盘和光盘。

五、总结

磁盘存储器管理是操作系统中的一个重要组成部分。通过合理选择外存的组织方式、文件存储空间管理方法、提高磁盘 I/O 速度的途径以及磁盘的可靠性技术,可以显著提高系统的性能和可靠性。
希望这篇文章能够帮助你更好地理解和掌握磁盘存储器管理的相关知识,为考试做好充分的准备。如果你对操作系统感兴趣,或者在学习过程中遇到了困难,欢迎随时交流和讨论。让我们一起探索计算机科学的奥秘,共同进步!

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com

热搜词