小白日记:操作系统的文件管理

文件的逻辑结构

文件可以按照逻辑结构分为两种类型:有结构文件与无结构文件

有结构文件:文本文件,文档(ppt, excle等),多媒体文件(图片视频等),直白来讲就是人类可以阅读的。
文件内容由定长记录和可变长记录组成,定长记录就是用于存储文件格式,文件描述等固定的数据项。可变长记录用于存储文件的具体内容。

无结构文件:二进制文件,链接库,直白来讲就是人类看不懂的。
无结构文件也称为流式文件,文件的内容以字节为单位,比如exe文件以及dll文件,so文件。

顺序文件

顺序文件指得就是按顺序存放在存储介质中的文件。磁带就是一个很典型的只能存储顺序文件的物品。顺序文件是所有逻辑文件中存储效率最高的。

索引文件

因为我们用顺序文件,会给我们的增删改查造成很大的麻烦,因为我们不能够为了在所有文件中加一个文件而去将所有文件往后移一位。所以我们为了解决可变长文件发明了一种文件格式。他比顺序文件多了一个索引表。也正是因此我们才能找到我们要找的文件。

辅存的分配方式

连续分配:每一个文件在分配时都会需要扇区,连续分配就是指如果文件需要6个扇区,那么我们就将连续的六个扇区分配给他。
这种方法读取文件非常容易,速度很快。但是他对于存储的条件要求较高,需要满足目标容量的连续空间。

链接分配:链接分配可以将文件存储在离散的盘块中,但是这种方法需要额外的存储空间来存储盘块链接顺序。
有一种链接方式叫隐式连接,隐式分配的每一个链接都指向下一个链接在当前盘内的哪一个地方。隐式链接适合顺序访问,随机访问的效率很低。这个方式的可靠性差因为不管那一个链接出了问题,都会影响到所有链接。
所以我们推出了显式连接,他有一个链接表,记录了每一个链接连接得下一个块是哪个块。这个表叫fat。fat也有缺点,比如说他不支持高效的直接存储,也就是说我们如果要存东西的话,就必须自己去fat表查询空闲的块。而且我们检索fat表时,需要把fat表全部加载到内存中去,占据内存过大这也是他的一个缺点。

索引分配

就是把文件的所有盘块的索引集中存储,在读取某一个文件时,将文件索引读取进内存就行了。每一个文件都拥有一个索引块,里面存放着所有文件的索引。这种方法可以直接访问盘块。

辅存的存储空间分配

空闲表:有三个信息,序号,空闲盘块号,空闲盘块数。

空闲链表:有空闲盘块和空闲的块的数目。

位示图:显示了所有块的状态,0就是没有被使用,1就表示已经被使用。他的维护成本低,可以非常容易找到空闲的块,内存占用小。

目录管理

目录管理使用的是树结构,因为有了目录树,所以每一个目录或文件都有了唯一路径。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值