操作系统之文件管理:5、文件物理结构(连续分配、链式(显式、隐式)分配、索引分配(链接、多层索引、混合索引))

您所在的位置:网站首页 链式结构示意图 操作系统之文件管理:5、文件物理结构(连续分配、链式(显式、隐式)分配、索引分配(链接、多层索引、混合索引))

操作系统之文件管理:5、文件物理结构(连续分配、链式(显式、隐式)分配、索引分配(链接、多层索引、混合索引))

2023-09-10 17:15| 来源: 网络整理| 查看: 265

3、文件物理结构 思维导图文件块、磁盘块文件分配方式1、连续分配2、链接分配隐式链接显式链接 3、索引分配如果一个文件的大小超过一个磁盘块怎么办?1、链接方案2、多层索引3、混合索引 总结注:逻辑结构VS物理结构什么是逻辑结构,什么是物理结构?顺序文件采用顺序存储/链式存储索引文件采用索引分配

思维导图

在这里插入图片描述

文件块、磁盘块

在这里插入图片描述 在这里插入图片描述

其实和程序与内存的分块类似

文件分配方式 1、连续分配

在这里插入图片描述

1、逻辑分配方式:最大的特点就是物理存储上连续 2、由于是连续存储,所以进行地址映射时,只需要块号的映射关系,而块内地址不需要进行映射 3、用户要访问一个位置:首先要找到目录文件中与之对应的文件目录项中的起始块号,然后物理块号=起始块号+逻辑块号,最后通过快内地址找到所要访问的位置。

连续分配优缺点: 在这里插入图片描述

优点: 1、 在这里插入图片描述 缺点: 1、 在这里插入图片描述 2、 在这里插入图片描述

2、链接分配 隐式链接

在这里插入图片描述

该种方式不支持随机读取,效率低

在这里插入图片描述

该种方式由于是链式存储,所以方便拓展,只需要将FCB中的结束块号修改即可

总结 在这里插入图片描述

显式链接

在这里插入图片描述

区别与隐式链接,显式链接多加了一块文件分配表(FAT),用于记录块与块之间的关系

在这里插入图片描述

逻辑地址与物理地址的转化: 1、用户给出逻辑块号,操作系统从文件目录表找到对应FCB 2、从FCB中找到起始地址块号算出物理块号,然后查找FAT 3、直接找到物理块(随机存取) 由于FAT常驻内存,所以逻辑地址到物理地址的转化不需要进行I/O读写。

总结 在这里插入图片描述

3、索引分配

在这里插入图片描述

1、在索引分配方式中,文件目录表中的FCB需要新加一个索引块的字段:用于存放该文件索引表存放的位置 2、在显式链接的链式分配方式中,文件分配表FAT 是一个磁盘对应一张。而索引分配方式中,索引表是一个文件对应一张。 3、文件的逻辑块号到物理块号的转换:首先,用户给出要访问的逻辑块号 i,操作系统找到该文件对应的目录项(FCB);其次,从目录项中可知索引表存放位置,将索引表从外存读入内存,并查找索引表即可只 i 号逻辑块在外存中的存放位置。因此,索引分配方式可以支持随机访问。文件拓展也很容易实现(只需要给文件分配一个空闲块,并增加一个索引表项即可)但是索引表需要占用一定的存储空间 4、问题:若每个磁盘块1KB,一个索引表项4B,则一个磁盘块只能存放 256 个索引项。如果一个文件的大小超过了256块,那么一个磁盘块是装不下文件的整张索引表的,如何解决这个问题?

如果一个文件的大小超过一个磁盘块怎么办? 1、链接方案

在这里插入图片描述

1、解决方法:用多个索引块链接存储,FCB中存储第一个索引块的位置即可 2、问题:当有很多索引块时,必须先将前面所有的索引块读入内存才可以找到你要的索引块,因此,其效率很低。从而产生了多级索引。

2、多层索引

在这里插入图片描述

问题:当你只有很小的数据时,假如只有1KB,本来可以只读入索引表就可以查询到该文件位置,但是采用二级索引表却要读入一级索引表和二级索引表,得不偿失,为解决该问题,引入混合索引

3、混合索引

在这里插入图片描述

就是将索引表和多级索引表混合使用,当数据很小时,就可以用直接索引,当数据很大时,就可以使用多级索引。

总结

在这里插入图片描述 在这里插入图片描述

注:逻辑结构VS物理结构

在这里插入图片描述

什么是逻辑结构,什么是物理结构?

物理结构:本质上来看是当我们在进行数据的存储时,操作系统会将数据保存到硬盘中,但是他会以什么样的方式存储就是所谓的物理结构,例如操作系统可能会以顺序或者链式的方式存储数据。对于用户而言,操作系统对数据的存储是不可见的。用户并不关心。 逻辑结构:本质上来看是用户在编写程序时,用何种方式来组织数据,文件的逻辑结构是用户来定义的,只是表示一个数据和一个数据的前后逻辑关系是什么样的。操作系统并不关心。

顺序文件采用顺序存储/链式存储

在这里插入图片描述 在这里插入图片描述

蓝色的部分:就是用户对于文件采用的逻辑结构的定义 橙色的部分:在操作系统看来,整个文件就是一堆二进制代码,操作系统按照物理块大小将这堆二进制文件拆分后;采用顺序的方式存储到硬盘上就是物理结构的顺序存储。采用链式的方式存储到硬盘上就是物理结构的链式存储

索引文件采用索引分配

在这里插入图片描述



【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3