# 文件管理
# 文件系统的概念
# 定义
文件是计算机信息存储的重要组织形式,文件由若干信息项有序构成,信息项可以是字节,也可以是结构化数据。
用户通过读写指针来存取文件的信息项。
文件具有文件名,用户通过文件名存取文件。
# 文件系统
负责文件的创建、撤销、读写、存储控制等,并管理存放文件的存储设备。
# 文件物理结构
文件物理结构是指文件在存储设备(比如硬盘)上的存储方式。
强调合理利用存储空间,并缩短I/O存取时间。
类型有连续文件、索引结构、串联文件。
# 连续文件
文件按照逻辑块的顺序存放在硬盘连续的物理存储块中。
文件目录记录文件长度和第一存储块的块号。
连续文件不易动态增长,进行预留会产生浪费,不足时需要重新分配和移动,不利于文件插入和删除。
# 索引文件
文件存放在不连续的存储块中。
建立索引表记录文件逻辑块和物理存储块对应关系。
# 串联文件
文件存放在不连续的存储块中,每个存储块有一个指针(next),指向文件下一个存储块
文件目录:指明文件名和第一个存储块的块号
# FAT文件系统(文件分配表)
# FAT介绍
串联文件的应用——FAT(File Allocation Table)文件系统
串联文件:存储块next域指向下一个存储块
FAT表:集中存有所有next指针
缺点:读文件时,先读FAT表,影响使用效率。FAT要占用存储空间,存储块越多,FAT元素越多,且元素位宽越长,占用更多额外的存储空间。
若存储块有块,FAT有个元素,每项至少需要位宽度。
# 扇区和簇
扇区:磁盘上最小可寻址存储单元(512字节)
簇(cluster):存储块,设备最小的存取单元,包含固定的扇区
在360KB的磁盘上:簇=2个扇区(1024字节);
在10MB的磁盘上:簇=8个扇区(4096字节)
FAT元素数和簇的数目一样多,假如簇数
- FAT元素宽度至少为N位才能标识全部的簇
- N=8位,能标识个簇
- N=32位,能标识个簇
FAT16就是,簇扇区数,因此磁盘容量最大为
# FAT16文件系统
FAT表元素宽度2字节,即16bit,每簇最大64扇区:磁盘分区最大2G,FAT16格式化磁盘
# 文件存储和目录
# 存储空间的管理
记录磁盘使用情况,管理、分配回收存储空间。
记录磁盘空闲块的方法
- 空闲文件目录
- 空闲块链
- 位示图
# 空闲文件处理
- 空闲文件:把连续空闲区看成一个特殊文件,由多个连续空闲块组成
# 空闲文件目录
- 空闲文件目录:
- 所有空闲文件代表存储设备全部空闲空间
- 为空闲文件建立专门的目录:空闲文件目录
- 每个表项对应一个空闲文件,包括第一个空闲块号,空闲块个数
# 空闲块链
把所有空闲块连接在一起,当申请者需要空闲块时,链头开始搜索所需空闲块,当回收空闲块时,把释放的空闲块逐个加载链尾。
# 位示图
从内存中划分出若干个字节,每个bit表示1个存储块空闲或占用状态
← 设备管理