操作系统文件存储空间管理(存储空间的划分与初始化)
一、文件存储空间管理
(一)存储空间的划分与初始化
- 安装 Windows 操作系统的时候,一个必经步骤是——为磁盘分区(C: 盘、D: 盘、E: 盘等)
(二)存储空间管理
1. 空闲表法
- 适用于“连续分配方式”
- 如何分配磁盘块:与内存管理中的动态分区分配很类似,为一个文件分配连续的存储空间。同样可采用首次适应、最佳适应、最坏适应等算法来决定要为文件分配哪个区间。
- 如何回收磁盘块:与内存管理中的动态分区分配很类似,当回收某个存储区时需要有四种情况:
①回收区的前后都没有相邻空闲区;
②回收区的前后都是空闲区;
③回收区前面是空闲区;
④回收区后面是空闲区。
总之,回收时需要注意表项的合并问题
2. 空闲链表法
(1)空闲盘块链
(2)空间盘区链
- 连续分配、离散分配都适用
3. 位示图法
- 如何分配:若文件需要K个块,
①顺序扫描位示图,找到K个相邻或不相邻的“0”;
②根据字号、位号算出对应的盘块号,将相应盘块分配给文件;
③将相应位设置为“1”。 - 如何回收:
①根据回收的盘块号计算出对应的字号、位号;
②将相应二进制位设为“0”
4. 成组链接法
- 空闲表法、空闲链表法不适用于大型文件系统,因为空闲表或空闲链表可能过大。UNIX系统中采用了成组链接法对磁盘空闲块进行管理。
- 文件卷的目录区中专门用一个磁盘块作为“超级块”,当系统启动时需要将超级块读入内存。并且要保证内存与外存中的“超级块”数据一致。
- 如何分配?
- Eg :需要1个空闲块
①检查第一个分组的块数是否足够。1<100,因此是足够的。
②分配第一个分组中的1个空闲块,并修改相应数据
- Eg :需要100个空闲块
①检查第一个分组的块数是否足够。100=100,是足够的。
②分配第一个分组中的100个空闲块。但是由于300号块内存放了再下一组的信息,因此300号块的数据需要复制到超级块中。每个分组正式分配出去之前,需要把下一个分组的链接信息复制到超级块中;而且超级块永远要保持在连头。
- 如何回收?
Eg :假设每个分组最多为100个空闲块,此时第一个分组已有99个块,还要再回收一块
- 假设每个分组最多为100个空闲块,此时第一个分组已有100个块,还要再回收一块。
- 需要将超级块中的数据复制到新回收的块中,并修改超级块的内容,让新回收的块成为第一个分组
操作系统文件存储空间管理(存储空间的划分与初始化)相关推荐
- 15 操作系统第四章 文件管理 文件的物理结构 文件存储空间管理
文章目录 1 文件的物理结构 (文件分配方式) 1.1 文件块.磁盘块 1.2 文件分配方式--连续分配 1.3 文件分配方式--链接分配 1.3.1 链接分配--隐式链接 1.3.2 链接分配--显 ...
- 操作系统之文件系统:4、文件存储空间管理(空闲表法、空闲链表法、位示图法、成组链接法)
4.文件存储空间管理 思维导图 文件的初始化和划分 文件存储空间管理方法 1.存储空间管理--空闲表法 2.存储空间管理--空闲链表法 3.存储空间管理--位示图法 4.存储空间管理--成组链接法 思 ...
- 四十三、文件存储空间管理
一.知识总览 二.存储空间的划分与初始化 三.空闲表法(适用于连续分配方式) 四.存储空间管理-空闲链表法 五.存储空间管理-位示图法 六.总结
- 计算机系统基础:文件的存取和存储空间管理知识笔记
1.文件的存取 文件的存取实际上就是针对文件存储器上物理块的读写操作.存取方法主要有顺序存储.随机存储两种. 2.文件存储空间管理 磁盘分配表:外存空闲空间管理的数据结构. 2.1 空闲空间管理方法 ...
- 操作系统-文件存储空间管理
一.存储空间的划分与初始化 操作系统可以将一块磁盘划分为不同的逻辑盘(C盘/D盘),每个逻辑区分为目录区和文件区 二.存储空间管理方法 存储空间管理方法要从以下几个方面考量, 1)用什么方法管理和组织 ...
- Mountain Duck for Mac(云存储空间管理软件) v2.6.7永久破解版
如何将您的云空间进行本地化管理?那就全靠Mountain Duck这款好用的云存储空间管理软件了!Mountain Duck Mac与我们熟悉的Cyberduck是一对孪生兄弟.这只山鸭擅长的是将你的 ...
- 文件管理:文件存储空间管理
文件存储空间管理 文件管理:文件存储空间管理 1.1 存储空间的划分与初始化 1.1.1 逻辑卷 1.1.2 目录区与文件区 1.2 存储空间管理的方法 1.2.1 空闲表法 1.2.2 空闲链表法 ...
- oracle存储空间管理,Oracle存储空间管理
Oracle存储空间管理 1.查看每个数据文件的剩余表空间(一个表空间只对应N个数据文件,N一般等于1) 主要是利用表dba_free_space(表空间剩余空间状况)和dba_data_files( ...
- 4.1.5 文件存储空间管理
目录 思维导图 存储空间的划分和初始化 空闲表法 空闲链表法 空闲盘块链 空闲盘区链 位示图法 成组链接法 思维导图 存储空间的划分和初始化 空闲表法 空闲链表法 空闲盘块链 空闲盘区链 位示图法 成 ...
最新文章
- 通过图形界面配置Exchange2010 DAG
- 漫画:IT人的大阅兵,十分精彩!
- 记录平时编程或者阅读英文文档的时候不认识的英文单词
- 智慧交通day01-算法库02:imutils
- JQzoom的一些问题
- Java SringBoot demo
- 【英语】The Little Prince
- 第十五讲 循环体for基础
- Cockroachdb 三、副本设置
- 性能优化,进无止境---内存篇
- rua出300道四则运算题
- php laravel 忘记密码,Laravel实现找回密码及密码重置,详细操作
- 浅谈大根堆,小根堆,以及堆排序(python)实现
- CA周记 - 在 Azure ML 上用 .NET 跑机器学习
- 摇一摇语音报时(序)
- 没有同理心_在设计上超越同理心
- 展示软件下载v2.0
- MAC终端常用命令行(后续继续更新,敬请关注)
- PhpStorm 10.0.3汉化破解版
- ProgressBar控件