文章目录
第九章、文件管理
9.1、文件和文件系统概述
9.1.1、文件的定义
文件是由若干信息项有序构成的。
- 信息项可以是字节,可以是结构化数据。
-
用户通过读写指针来存取文件的信息项。
-
文件具有文件名,用户通过文件名来存取文件。
9.1.2、文件的分类
不同的分类标准有不同的文件类型。
- 分类标准1:文件的用途
-
分类标准2:文件的操作权限
-
分类标准3:文件的性质
我们可以通过windows里面的文件资源管理器来观察。
9.1.3、文件的属性
文件的属性就是用来保存文件的某些重要的信息、基本信息的。
- 指定文件的类型、操作特性和存取保护等的一组信息。
- 文件属性存放在文件所在目录的目录文件中。
- MS-DOS系统中,文件属性占目录项的一个字节。
- 00000001:只读属性
- 00000010:隐藏属性
9.1.4、文件系统
文件系统就是用来管理文件的机构。功能是——负责文件的创立、撤销、读写、修改、复制和存取控制等,并管理存放文件的存储设备。它的目标是实现用户以用户名来存取文件。
9.1.5、文件的结构
文件在结构上,我们可以划分为逻辑结构和物理结构。
- 逻辑结构
- 用户的观点
- 为用户提供逻辑结构清晰、使用方便的文件
- 强调文件信息项的构成方式和用户的存取方式
- 物理结构
- 系统的观点
- 文件在存储设备(如硬盘)上的存储结构
- 强调合理利用存储空间,缩短I/O存取空间。
文件的逻辑结构
文件的存取方式
文件的存取分为顺序存取和随机存取。
-
顺序存取
按照文件信息项排列顺序依次存取。有读写指针,文件打开时,读写指针指向第一个信息项(字节或者记录)。同时每存取一个信息项,读写指针自动加1而指向下一个信息项。
-
随机存取
-
随机存储就是直接存储,在进行存取操作时指定存取的位置。
-
特点
-
9.2、文件物理结构
文件的物理结构我们已经知道是指文件在存储设备上的存储方式。它强调合理利用存储空间,并缩短I/O存储的时间。
类型上有:
- 连续文件
- 索引结构
- 串联文件
9.2.1、连续文件
文件按照逻辑块的顺序存放在硬盘连续的物理存储块中。有文件目录来记录文件的长度(块数)和第一个存储块的块号。
-
特点
文件建立的时候给出文件最大长度并登记文件的起始位置。
-
优点
简单,支持顺序存取和随机存取。顺序存取速度快——所需磁盘寻道次数和寻道时间最少。
9.2.2、索引结构
文件存放在不连续的存储块中。需要建立索引表来记录文件逻辑块和物理存储块的对应关系。
9.2.3、串联文件
9.3、FAT文件系统(FAT:File Allocation Table)
我们这次学的FAT文件系统——是串联文件的应用。
文件分配表(FAT)
文件分配表的缺点
- 读文件时,先读FAT,影响使用效率。
- FAT要占用存储空间。
- 存储容量越大,存储块越多,FAT元素越多。而且元素位宽越长,占用更多额外存储空间。
- 存储容量越大,存储块越多,FAT元素越多。而且元素位宽越长,占用更多额外存储空间。
FAT文件系统
-
扇区——磁盘上最小的可寻址单元。(一个扇区512字节)
-
蔟(cluster)=存储块,该设备的最小存取单元(每个存储块就是固定数量扇区。当然不同的系统对应的存储块的扇区数目不一致。)
蔟数 = FAT元素数目。
- FAT16最大分区大小和对应蔟大小
9.4、存储空间的管理
9.4.1、存储空间管理
存储空间管理
存储空间管理的功能是记录磁盘使用的情况,管理和分配、回收存储空间。
如何记录磁盘上空闲区块呢?
- 空闲目录
- 空闲块链
- 位示图
空闲文件目录
-
空闲文件
把连续空闲区看作一个特殊的文件,由多个特殊空闲区块组成。
-
空闲文件目录
所有空闲文件代表存储设备全部的空闲空间。而为空闲文件建立的专门目录:空闲文件目录。每个表项对应一个空闲文件,包括第一个空闲区块号、空闲块个数等信息。
-
文件的属性是记录在文件目录中的。存放在外存。不同的系统,文件目录的组织也不完全相同。
空闲块链
- 把所有的空闲块链接在一起
- 当申请者需要空闲块是,链头开始搜索所需要的空闲块
- 当回收空闲块时,把释放的空闲块逐个加在链尾。
位示图
9.4.2、文件目录管理
-
文件目录
- 文件名址记录,记录文件名和存放地址的目录表。
- 具有将文件名转换位外存物理位置的功能。
- 文件的属性也记录在目录中。
-
目录文件
- 文件目录是以文件形式存于外存中,这个文件就叫做目录文件。
-
目录结构
不同的系统,其文件目录的组织形式也不完全相同。目录的结构又分为三种。
9.4.3、文件的相关操作和属性
文件的保护
文件和目录操作
典型的文件系统