一.文件的逻辑结构
1.1 逻辑文件的类型
有结构文件 | 无结构文件 |
---|---|
文本文件、文档、媒体文件 | 二进制文件、简介库 |
文件内容由定长记录和可变长记录组成,定长记录存储文件格式、文件描述等结构化数据项,可变长记录存储文件具体内容 | 也称为流式文件,文件内容长度以字节为单位 |
1.2 顺序文件和索引文件
顺序文件 | 索引文件 |
---|---|
顺序文件是指按顺序存放在存储个质中的文件,顺序文件是所有逻辑文件当中存储效率最高的。比如磁带的存储特性使得磁带文件只能存储顺序文件。 | 顺序文件格式不适合存储可变长文件,索引文件是为了解决可变长文件存储而发明的一种文件格式,索引文件需要配合索引表完成存储的操作 |
二.辅存(磁盘)的存储空间分配
2.1 辅存的分配法方式
三种分配方式
- 连续分配
如果一个文件存储时候需要连续的扇区,操作系统就会把连续的扇区分配给这个文件。
优点:顺序读取文件内容非常容易,速度很快。
缺点:对存储要求高,要求具备满足容量的连续存储空间。 - 连接分配
链接分配可以将文件存储在离散的盘块中,需要额外的存储空间存储文件的盘块链接顺序。
按照额外存储空间的不同,又将连接分配分为显式链接和隐式链接。
隐式链接:隐式分配的下一个链接指向存储在当前盘块内。缺点:隐式分配适合顺序访问,随机访问效率很低,可靠性差,任何一个链接出问题都影响整个文件。
显式链接:FAT表。缺点:不支持高效的直接存储(FAT记录项多);检索时FAT表占用较大的存储空间(需要将整个FAT加载到内存)。 - 索引分配
把文件的所有盘块集中存储(索引),读取某个文件时,将文件索引读取进内存即可。
优点:每个文件拥有一个索引块, 记录所有盘块信息,只需加载一个盘块到内存;索引分配方式支持直接访问盘块;尤其文件较大时,索引分配方式具有明显优势。
2.2 存储空间管理
三种管理方法:空闲表与空闲链表和内存管理介绍的一样。
- 空闲表
空闲盘区的分配与内存分配类似;使用首次适应算法、循环适应算法等;回收过程也与内存回收类似 - 空闲链表
空闲链表法把所有空闲盘区组成一个空闲链表;每个链表节点存储空闲盘块和空闲的数目 - 位视图
0未使用,1已使用。
优点:位示图维护成本很低;位示图可以非常容易找到空闲盘块;位示图使用0/1比特位,占用空间很小
三.目录管理
使用目录树
优点:任何文件和目录都有唯一路径