一 问题:文件大多都是存储在一个相同的磁盘上的,那么如何为这些文件分配存储空间呢?
大体有三种方法:
1. 相邻分配
2. 链接分配
3. 索引分配
每种方法都是缺点和优点。
主要目标有两个:磁盘利用率高,文件访问速度快。
二 空闲磁盘空间的管理
为了给新建的文件分配存储空间,我们得知道磁盘上有哪些位置可以放数据。那么存储磁盘空闲信息的方法有哪几种呢?
1. Bit Vector(位矢量)
2. Linked List(链表)
3. Grouping:一个块中存储了n个空闲块的信息。
4. Counting:
三 文件和目录在内存和磁盘中可能同时存在,那么当系统崩溃之后如何使数据不丢失而且是一致的呢?
1. 一致性校验
2. 备份和恢复
四 日志结构的文件系统
这个是从数据库中基于日志恢复算法开发出来的。在计算机中适用于一套系统的方法或者技术有时候也可以用于其他的领域。
五 网络文件系统
网络文件系统(NFS)可以让用户以透明的(或者显式请求)方式在某种程度上共享这些文件系统中的数据。共享是以客户端和服务器的方式进行的。
涉及到的问题有:
挂载协议:在客户端和服务器端建立了初始的逻辑连接
NFS协议:为远程文件操作提供了一套远程过程调用
路径名的解析:
远程操作:
六 文件系统的例子:WAFL文件系统