文件存储空间管理

文件存储空间管理

image


一、存储空间的划分与初始化

概念:

划分物理磁盘为一个个文件卷/逻辑卷/逻辑盘

各个文件卷划分为目录区文件区

image

二、存储空间管理方法

类比内存空间管理,只是对象不同,这里针对磁盘。

(一)空闲表法

适用于连续分配

回顾:第3.5节内存管理的动态分区分配算法

image

image

image

image

image

要留意表项的修改和合并问题。

(二)空闲链表法

盘块“和“盘区”的二者对比:

image

(1)空闲盘块链

适用于离散分配

image

(2)空闲盘区链

连续分配离散分配都适用。

image

(三)位示图法

连续分配离散分配都适用。

盘块号(字号,位号) 的换算较复杂,需要细心。

image

image

(四)成组链接法

image

注意,成组链接法参考了:

b站天勤率辉

【配资料】天勤计算机考研408之操作系统(全视频合集版)

OS第四章文件管理【5】文件存储空间管理

指挥部:11:49~20:00

https://www.bilibili.com/video/BV1qG4y187Jp?spm_id_from=333.788.videopod.episodes&vd_source=065ecf6f3ab1453511424c3477336b92&p=25

回顾之前各种存储空间的管理方法的演变:

盘块链​image

盘区链image

成组链接法imageimage(最终)

为空闲盘块标号且展开后:

始终将第一组读入超级块中。每一组的头节点还将存储多一个数N,保存下一组的空闲盘快数。

image

分配与回收发生在与超级块相连的组上。

每一个组以及超级块各自的栈长度有限,影响分配与回收。

分配情况:

  1. 分配完组内还有更多空闲盘块:从组内尾部开始分配即可,修改N位

image

image

  1. 分配完组内没有更多空闲盘块:将下一组的栈数据更新读入到超级块中,更新对应的指针连接情况

image

image

image

image

回收情况:

  1. 超级块的栈仍有空位回收:直接回收,尾插到本组(超级块所在组)中

image

image

  1. 超级块的栈没有空位回收:新构成的组将自己的相关信息更新到超级块,同时头插到整个成组链表中

image

image

(新组继续回收空间)

image

posted @   Wind_730  阅读(19)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 10年+ .NET Coder 心语 ── 封装的思维:从隐藏、稳定开始理解其本质意义
· 提示词工程——AI应用必不可少的技术
· 地球OL攻略 —— 某应届生求职总结
· 字符编码:从基础到乱码解决
· SpringCloud带你走进微服务的世界
点击右上角即可分享
微信分享提示