资源收费网站怎么做营销推广ppt
【操作系统学习笔记】文件管理1.4
参考书籍: 王道考研
视频地址: Bilibili
文件的物理结构
文件快、磁盘块
在内存管理中,进程的逻辑空间被分为一个一个页面。同样的,在外存管理中,为了方便对文件数据的管理,文件的逻辑地址空间被分为了一个一个的文件快。于是文件的逻辑地址也可以表示为(逻辑块号、块内地址)的形式
用户操作文件时使用逻辑块号,操作系统负责将逻辑块号映射为物理块号
连续分配
连续分配方式要求每个文件在磁盘上占有一组连续的块
(逻辑地址,块内地址)->(物理地址,块内地址): 需要转换块号。用户给出要访问的逻辑块号,操作系统找到该文件对应的目录项 FCB。物理块号 = 起始块号 + 起始块号
- 优点
- 可以直接计算出逻辑块号对应的物理块号,因此连续分配支持顺序访问和直接访问(即随机访问)
- 读取某个磁盘块时,需要移动磁头。访问两个磁盘块相隔越远,移动磁头所需的时间越长。连续分配的文件在顺序读/写的速度最快
- 缺点
- 物理上采用连续分配的文件拓展不方便
- 存储空间利用率低,会产生难以利用的磁盘碎片
链接分配
链接分配采取离散分配的方式,可以为文件分配离散的磁盘块。分为隐式链接和显式链接两种
- 隐式分配
目录中记录了文件存放的起始块号和结束块号。当然,也可以增加一个字段来表示文件的长度。除了文件的最后一个磁盘外,每个磁盘中都会保存指向下一个磁盘块的指针,这些指针对用户是透明的
用户给出要访问的逻辑块号,操作系统查找该文件对应的目录 FCB。从目录项中找到起始块号,将其读入内存,并根据指针访问下一块,知道访问到结束块号才停止
-
优点
- 物理上离散分配,便于拓展
- 外存利用率高,不会产生文档碎片
-
缺点
- 只支持顺序访问,不支持随机访问,查找效率低
-
显式分配
把用于连接文件各物理块的指针显式地存放在一张表中。即文件分配表 FAT。一个磁盘仅设置一张 FAT。开机时,将 FAT 读入内存,并常驻内存。FAT 的各个表项在物理上连续存储,且每一个表项长度相同,因此物理块号字段可以是隐含的
- 优点
- 很方便文件拓展
- 不会产生文档碎片
- 支持随机访问
- 地址转换不需要访问磁盘,效率更高
- 缺点
- FAT 需要占用一定存储空间
索引分配
索引分配允许文件离散地分配在各个磁盘块中,系统会为每个文件建立一张索引表,索引表中记录了文件的各个逻辑块对应的物理块(索引表的功能类似于内存管理中的页表————建立逻辑页面到物理页之间的映射关系)。索引表存放的磁盘块称为索引块。文件数据存放的磁盘块称为数据块
- 优点
- 支持随机访问
- 很方便文件拓展
- 缺点
- 索引表需要占据一定的存储空间
若一个文件的大小超过 256 块,那么一个磁盘表是装不下整张索引表的,如何解决
- 链接方案: 如果索引表太大,一个索引表装不下,那么可以将多个索引块链接起来存放
- 多层索引: 建立多级索引,类似多级页表。使第一层索引块指向第二层索引块,还可以第三层、第四层…
- 混合索引: 多级索引分配方式的结合有。例如一个文件的顶级索引表中,即包含直接地址索引,又包含一级间接索引、还包含两级间接索引