第26讲 文件管理之文件的外存分配方式
外存的分配方式

6.3.1. 连续分配
✓ 连续分配方式
• 采用连续分配方式时,可把逻辑文件中的记录顺序地存 储到相邻的各物理盘块中,这样所形成的文件结构称为 顺序文件结构,此时物理文件称作顺序文件;
• 为了能使系统找到文件存放的地址,在目录中应记录该 文件第一个盘块号和文件长度
• 如内存的动态分区分配,随着文件建立时的空间分配和 文件删除时的空间回收,将使磁盘空间被分割成许多小 块,这些较小的连续区(碎片)很难用来存储文件,可 以采用“紧凑”的方法,将盘上的所有文件紧靠在一起, 把所有的碎片拼接成一个大片连续的存储空间。
链接方式存在问题(1)不能支持高效直接存取(2)FAT需 占用较大的内存空间。
1. 单级索引分配:
为每个文件分配一个集中存放的索引块(表),包含文件的所 有物理块号,因而索引块实质就是磁盘块地址数组,其中第i项 存放指向文件的第i块盘块号。在该文件的目录项中存储了指 向该索引块的指针。
第六章 文 件 管 理
第六章 文 件 管 理
1. 连续分配 目 录
file start length
count 0 2
tr
15 3
mail 21 6
list 29 3
count
0
1
2
3
f
4
5
6
7
8
9
10
11
tr
12
13
14
15
f
72
16
17
18
19
20
21
22
23
Байду номын сангаас
✓ 连续分配方式的优缺点 • 优点
24
文件存储空间管理方法

文件存储空间管理方法文件存储空间是操作系统中的一个重要资源,对于有效管理文件存储空间,可以提高系统的性能和可靠性。
下面将介绍几种常见的文件存储空间管理方法。
一、连续分配连续分配是最简单的文件存储空间管理方法之一。
它将文件存储空间划分为固定大小的块,并按照顺序分配给文件。
当文件需要存储时,系统会为其分配连续的空闲块。
这种方法的优点是实现简单,读写效率高。
然而,连续分配也存在一些问题,比如文件大小不能超过一块的大小,造成了空间的浪费。
而且,删除文件后会产生碎片,使得存储空间不连续,影响了文件的存储效率。
二、链接分配链接分配是一种通过链接将文件存储空间连接起来的方法。
每个文件都有一个指向下一个块的指针,从而将文件的各个块连接在一起。
这种方法的优点是可以有效地利用存储空间,文件的大小可以动态变化。
然而,链接分配的缺点是需要额外的空间存储指针,而且读写效率较低,因为需要依次访问每个块。
三、索引分配索引分配是一种通过索引表来管理文件存储空间的方法。
每个文件有一个对应的索引表,其中记录了文件所占用的块的位置。
索引表中的每一项都指向一个块,通过这些指针可以找到文件的所有块。
这种方法的优点是可以快速定位文件的块,读写效率较高。
然而,索引分配也存在一些问题,比如需要额外的索引表空间,而且索引表的大小限制了文件的最大大小。
四、位图分配位图分配是一种使用位图来管理文件存储空间的方法。
位图中的每一位对应一个块,用来表示该块的使用状态(已分配或空闲)。
当文件需要存储时,系统会查找位图中的空闲位,并将其标记为已分配。
这种方法的优点是实现简单,可以快速地找到空闲块。
然而,位图分配也存在一些问题,比如位图本身需要占用一定的存储空间,而且当存储空间较大时,位图的大小会变得很大,占用了大量的存储空间。
文件存储空间管理方法有连续分配、链接分配、索引分配和位图分配等。
每种方法都有其优点和缺点,可以根据实际需求选择适合的方法。
当然,还有其他一些高级的文件存储空间管理方法,比如哈希分配、树状分配等,但这些方法相对较为复杂,需要更多的计算和存储开销。
外存组织方式

2.显式链接 Explicit Link
• 把用于链接文件物理块的指针放在内存的一张链接表中。 整个磁盘仅设置一张。
• 表的序号是物理盘块号。在每个表项中,存放链接指针。 • 凡是属于某一文件的第一个盘块号,均作为文件地址被 填入相应文件的FCB的“物理地址”字段中。
此表为文件分配表FAT(File Allocation Table) 。
8.1.2
链接组织方式 Linked Allocation
• 链接组织方式消除了外部碎片,故可以显著地提高 外存空间的利用率,且无需事先知道文件长度。此 外,文件的插入、删除,也十分方便。 • 这样形成的物理文件称为链接文件。 • 链接方式又可分为隐式链接和显式链接两种方式。
8.1.2
链接组织方式
1. 隐式链接 Implicit Link
• • 在文件目录的每个目录项中,都须含有指向连接 文件第一个盘块和最后一个盘块的指针。 在每个盘块中都含有一个指向下一个盘块的指针。
1. 隐式链接
目录
0 4 8
12
1 16 20 24
28
1 5 16 9 13 17 21 -1 25 29
10
2 6 25 10 14 18 22 26 30
•可随机存取,不要求连续存储空间,无需知道文件长 度。 •文件较小时浪费存储空间。
4
8 12 16 20 24 list 28
25 29
26 30
27
31 图8-1 磁盘空间的连续组织
8.1.1
连续组织方式
•主要优点: ① 顺序访问容易。 ② 支持直接存取。 ③ 访问速度快。 •主要缺点: ① ② ③ ④ 要求有连续的存储空间。 必须事先知道文件的长度。 不能灵活地删除和插入记录。 不利于动态增长的文件。
文件存储空间的管理与分配方式

文件存储空间的管理与分配方式1. 简介在当今信息化时代,文件存储空间的管理和分配方式变得尤为重要。
无论是个人用户还是企业组织,都需要有效地管理和分配文件存储空间,以提高工作效率和数据安全性。
本文将探讨文件存储空间的管理与分配方式,帮助读者更好地理解和应用相关知识。
2. 文件存储空间的重要性文件存储空间是指用来存放文件和数据的物理或逻辑空间。
随着信息量的不断增加,文件存储空间的重要性日益凸显。
良好的文件存储空间管理与分配方式可以提高工作效率,降低成本,保障数据安全,确保信息的可靠性和完整性。
3. 文件存储空间的管理方式文件存储空间的管理方式包括以下几种:- 分布式存储管理:将文件和数据分布在多个存储设备上,以提高数据的可靠性和可用性。
- 虚拟化存储管理:通过虚拟化技术,将多个物理存储设备虚拟化为一个统一的存储资源,实现更灵活的存储管理。
- 数据备份与恢复管理:通过定期备份文件和数据,以应对意外情况和数据丢失风险。
- 存储资源优化管理:通过动态调整存储资源的分配,以满足不同文件和数据的存储需求。
- 存储性能调优管理:通过性能调优的方式,提高存储系统的响应速度和处理能力。
4. 文件存储空间的分配方式文件存储空间的分配方式包括以下几种:- 容量分配:根据文件和数据的大小,动态分配存储空间,以确保每个文件和数据都能得到足够的存储空间。
- 权限分配:根据用户和角色的不同,对文件和数据的访问权限进行分配,以确保数据安全和保密性。
- 存储策略分配:根据文件和数据的特性,制定不同的存储策略,以满足不同的存储需求。
5. 文件存储空间管理与分配的最佳实践文件存储空间的管理与分配并非一成不变的,需要根据实际情况进行动态调整和优化。
在实践中,可以采取以下最佳实践:- 建立完善的存储管理制度,明确文件存储空间管理的责任和流程。
- 定期对文件存储空间进行评估和调优,及时发现和处理存储资源的不足和过剩。
- 使用专业的存储管理工具,对文件存储空间进行监控和管理,提高管理效率和精度。
文件的存取方法和存储分配方法

文件的存取方法和存储分配方法
文件的存取方法和存储分配方法是计算机存储管理中的重要概念。
文件的存取方法指的是如何访问文件中的数据,包括顺序存取和随机存取两种方式。
顺序存取是按照文件中数据的顺序进行读写,而随机存取则可以直接访问文件中的任意位置。
而存储分配方法则是指如何分配计算机存储器中的存储空间。
通常有三种方法:连续分配、链式分配和索引分配。
连续分配是将文件存储在一段连续的存储空间中,适用于文件较小的情况;链式分配则是通过链表将文件存储在多个不连续的存储空间中,适用于文件较大的情况;索引分配则是通过索引表来记录文件存储的位置,适用于文件数量众多的情况。
不同的存取方法和存储分配方法有不同的优缺点,因此需要根据具体情况来选择最适合的方法。
同时,一些新兴的存储技术如云存储、分布式存储等也在不断推进,将对存储管理带来更多的变革。
- 1 -。
操作系统-文件存储空间的管理

操作系统-文件存储空间的管理操作系统文件存储空间的管理在计算机的世界里,操作系统就如同一位有条不紊的管家,负责管理着各种资源,其中文件存储空间的管理是至关重要的一项任务。
想象一下,如果没有有效的管理,文件可能会混乱无序地存储,导致空间浪费、查找困难,甚至系统崩溃。
那么,操作系统是如何巧妙地管理文件存储空间的呢?首先,我们来了解一下文件存储空间管理的基本概念。
文件存储空间可以简单理解为计算机硬盘或其他存储设备中用于存放文件的区域。
就像一个大仓库,需要合理地划分和组织,以便高效地存储和检索货物(文件)。
操作系统通常采用两种主要的方法来管理文件存储空间:空闲表法和空闲链表法。
空闲表法就像是一个详细的库存清单。
操作系统会创建一张表格,记录着存储空间中哪些区域是空闲的,以及它们的位置和大小。
当需要存储新文件时,系统会在这张表中查找合适的空闲区域。
这种方法简单直观,但对于大型的存储系统,表格可能会变得非常庞大,管理起来会有些复杂。
空闲链表法则像是把空闲的区域串成了一条链子。
这些空闲区域通过指针连接起来,形成一个链表。
当有新文件需要存储空间时,就从链表中摘下合适大小的空闲区域分配给它。
空闲链表法又分为空闲盘块链表和空闲盘区链表两种。
空闲盘块链表是将一个个小的盘块连接起来,适合存放较小的文件;而空闲盘区链表则是把较大的连续空闲区域连接起来,更适合存储较大的文件。
除了上述两种方法,还有位图法。
位图就像是一张巨大的地图,其中的每个位(bit)代表一个存储单元的状态,0 表示空闲,1 表示已被占用。
通过查看位图,操作系统能够快速了解存储空间的使用情况。
这种方法的优点是占用的存储空间较少,并且能快速找到连续的空闲区域。
接下来,我们看看文件存储空间的分配策略。
常见的有连续分配、链接分配和索引分配。
连续分配是将文件连续地存储在磁盘的一片连续区域中。
这种方式的优点是读写文件的速度快,因为磁头不需要频繁移动。
但它的缺点也很明显,那就是容易产生外部碎片,即存储空间被分割成了许多不连续的小片段,难以被利用。
外存分配方式

… 25
物理块号 …
多重索引结构- 多重索引结构-图示
⋮
outer-index index table file
多重索引结构-举例- Unix的索引节点 多重索引结构-举例- Unix的索引节点
为了加速对文件目录的查找, 系统中, 为了加速对文件目录的查找,在Unix系统中,将文件 系统中 名和其它文件说明信息分开, 名和其它文件说明信息分开,由文件说明信息形成一 个称为索引节点的数据结构, 个称为索引节点的数据结构,而相应的文件目录项只 由文件名和对应的索引节点号组成。 由文件名和对应的索引节点号组成。 文件名 i节点号
i节点中包含 个字节的地址信息, 这个地址信息被组织成 节点中包含39个字节的地址信息 节点中包含 个字节的地址信息, 13个3字节的地址或指针。 字节的地址或指针。 个 字节的地址或指针 个表目是直接索引, 个数据块。 前10个表目是直接索引, 指向文件最初的 个数据块。 个表目是直接索引 指向文件最初的10个数据块 当文件大小小于10块时 可以直接定位到这10个块 块时, 个块; 当文件大小小于 块时,可以直接定位到这 个块; 个表目是一级索引表, 第 11个表目是一级索引表, 指向磁盘中包含下一部分索 个表目是一级索引表 引的块。 引的块。 第12个表目是二级索引表, 个表目是二级索引表, 个表目是二级索引表 个表目是三级索引表; 第13个表目是三级索引表; 个表目是三级索引表 对比: 在许多文件系统中, 对比 : 在许多文件系统中 , 如 MS-DOS中, 使用文件分配表 - 中 FAT来管理文件的物理盘块: 来管理文件的物理盘块: 来管理文件的物理盘块 使用FAT的主要问题 : 整个磁盘的所有文件登记在同一个 的主要问题: 使用 的主要问题 FAT表中。因此,即使仅打开一个文件,也要使用整个 表中。 表中 因此,即使仅打开一个文件,也要使用整个FAT 来查找该文件所所分配的盘块,浪费时间。 来查找该文件所所分配的盘块,浪费时间。
简述外存空闲空间管理的方法

外存空闲空间管理是指在计算机系统中,有效地管理外部存储设备(如硬盘驱动器)中的空闲空间,以便于文件的存储和检索。
以下是几种常见的外存空闲空间管理方法:
位图法(Bit-Map):位图法使用一个位图来表示外存空间中的每个块的使用情况,其中每个位对应一个块。
位图中的0表示空闲块,1表示已分配块。
通过对位图进行操作,可以快速地找到空闲块并进行分配。
空闲链表法(Free List):空闲链表法使用一个链表来存储空闲块的地址信息。
链表中的每个节点记录一个空闲块的起始地址和长度。
当需要分配空闲块时,从链表中选择合适大小的节点,并将其从链表中移除。
当空闲块被释放时,将其插入链表合适的位置。
空闲区域表法(Free Space Table):空闲区域表法将外存空间划分为多个区域,并使用一个表来记录每个区域的起始地址和长度。
当需要分配空闲块时,遍历空闲区域表,找到满足大小需求的空闲区域并进行分配。
当空闲块被释放时,将其合并到相邻的空闲区域,更新空闲区域表。
分区管理(Partitioning):分区管理将外存空间划分为固定大小的分区,每个分区独立管理。
每个分区可以采用不同的管理方法,如位图法、空闲链表法等。
通过分区管理,可以提高外存空间的利用率和文件存取的效率。
在实际应用中,不同的文件系统和操作系统可能采用不同的外存空闲空间管理方法,以适应不同的需求和性能要求。
综合考虑空间利用率、分配速度、碎片化等因素,选择合适的外存空闲空间管理方法对于有效管理外部存储设备是至关重要的。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
第二十六讲文件管理之文件的外存分配方式
1 引言
用户对不同的文件采用不同的存储方式,以便于对文件进行各种操作。
因此,如何有效利用外存空间和如何提高对文件的访问速度?是这讲的主要内容
2 文件物理结构
物理块:一个文件存储介质,格式化后就分成许多大小相等的单位--存储块(物理盘块),
在现代计算机系统中,一般来说,每个物理块是一个磁盘的扇区,512字节。
并给每个存储块有个编号,称为物理块号。
逻辑块:一般把文件信息也划分成与物理块大小相等的逻辑块。
文件的物理结构:是指文件在存储设备上的存放方式。
因文件的物理结构和外存分配方式直接有关,因此主要的三种分配形式分别形成不同的文件物理结构:
连续分配形成连续文件结构形成连续文件
链接分配形成链接文件结构形成链接文件
索引分配分别对形成索引文件结构形成索引文件。
1 连续分配
连续分配方式:是把一个在逻辑上连续的文件信息顺序的存放在各邻接的物理块中。
优点:速度快,节省空间。
缺点:长度变化困难。
不利于文件动态扩充。
存在外部碎片。
说明:该方式可把逻辑文件中的记录,顺序的存储到邻接的各物理块中,这样所形成的文件
结构称为顺序文件结构,此时的物理文件称为顺序文件。
这种分配方式保证了逻辑文件中的记录顺序与存储器中文件占用盘块的顺序的一致性。
随着文件的建立与删除不断进行,将产生很多外碎片,利用紧凑方法也可消除碎片。
适用于:变化不大的顺序访问的文件
U NIX系统:仍保留了连续文件结构。
2 链接分配
2.1 概述
链接分配是一种离散分配方式,可将文件装到多个离散的盘块中,可通过在每个盘块上的链接指针,将同属于一个文件的多个离散盘块链接成一个链表。
这样形成的物理文件就是链接文件。
链接方式分为:隐式链接、显式链接
磁盘空间的链接式分配:如图
2.2 隐式链接
说明:
●一个串联文件结构是按顺序由串联的块组成的,即文件的信息按存于若干块中。
●每个物理块的最末一个字(或第一个字)作为链接字,它指出后继块的物理地址。
链
首指针存放在该文件目录中。
文件的结尾块的指针为“∧”。
●这种文件结构不要求连续存放。
●对于记录式文件一块中可包含一个逻辑记录或多个逻辑记录,也可以若干物理块包
含一个逻辑记录。
隐式链接块如图:
链接文件结构图如下:
优点:
1、无外部碎片,没有磁盘空间浪费
2、无需事先知道文件大小。
文件动态增长时,可动态分配空闲块。
对文件的增、删、改十分方便。
缺点:
1、不能支持高效随机/直接访问,仅对顺序存取特有效顺序存取效率高,随机存取效率太低,如果访问文件的最后的内容,实际上是要访问整个文件。
2、需为指针分配空间。
解决方法将几个盘块组成一个簇
3、可靠性较低(指针丢失/损害)因此引入显示链接解决此问题
2.3 显式链接
DOS、WINDOWS系统就采用了显式结构。
概念:是指把用于链接文件各物理块的指针,显示地存放在内存的一张连接表中。
该表在整
个磁盘就一张。
此表就是文件分配表
⏹用于链接文件各物理块的链接指针,显式地存放在内存的一张链接表中。
⏹该表在整个磁盘仅设置一张。
⏹表序号为整个磁盘的物理块号(0---(n-1)),n是盘块总数。
⏹表项存入链接指针,即下一个块号。
⏹文件的首块号存入相应文件的FCB中。
⏹查找在内存的FAT中,故提高了检索速度,同时又减少磁盘的访问次数。
⏹被MS-DOS、OS/2、Windows采用。
见课本图6-9
3 索引分配
3.1 引言
事实上,在打开某个文件时,只需把该文件占用的盘块的编号调入内存即可,完全没有必要调入整个FAT。
为此应将每个文件所对应的盘块号集中在一起。
索引分配方法:就是基于上述想法所形成的一种分配方法。
它为每个文件分配一个索引块
(表),再把分配给该文件的所有盘块号,都记录在该索引块中,因而该索引块就是一个含有许多盘块号的数组。
在建立一个文件时,便须在为之建立的文件目录项中填上指向该索引块(表)的指针。
索引表:索引结构要求为每个文件建立一个索引表,表中每个表目包括:逻辑块号,物理块号与该逻辑块号对应的物理块号。
索引表位置:文件目录中,文件的开头等。
3.2 单级索引分配
只有一级索引的分配方式。
3.3 多极索引分配
当OS为一个大文件分配磁盘空间时,如果所分配出去的盘块的盘块号已经装满一个索引块时,OS便为该文件分配另一个索引块,用于将以后继续为之分配的盘块号记录于其中。
以此类推,再通过链指针将各索引按序链接起来。
显然当文件太大时索引块太多,此方法低效。
此时应为索引块再建立一级索引,这样便形成了两级索引分配方式。
如果文件非常大时,还可用三级四级索引方式。
如图
3.4 混合索引分配方式
混合索引分配方式:是指将多种索引分配方式结合而形成的一种分配方式。
UNIX(每个块4K字节)如下图
当文件<40K时,10个直接地址;
当文件<4M+40K时,一次间接(假定每个盘块号占4个字节);当文件<4G+4M+40K时,二次间接;
当文件<4T+4G+4M+40K时,三次间接;
优点:
既适应于顺序访问,也适应于随机访问。
UNIX系统是使用索引结构成功的例子。
缺点:
需要用于索引表的空间开销和文件索引的时间开销。
3.5 总结
3.5.1 文件类型与文件存储器、存取方法的关系。