Fast File System 总结

今天读了 A Fast File System for UNIX 1984年

这篇文章可以说是File System 里面最经典的文章之一。现在Unix File System 也是FFS的延伸

作者发现了Old Unix System 的许多问题。做出了改进。

首先以前的FS,由于硬件的限制,把block size 设计的很小,只有512KB

对于大文件的读取overhead 很大。以读取一个2MB 的文件为例,需要四次读取。

FFS的block size 增加到2MB, 大大减小了overhead, 2MB的文件只需要一次disk access.

但是大的block size 也带来了问题,如果整个系统的文件都很小,比如只有512KB,那么会浪费空间。

解决方法是把block 分为几个fragments, 如果一个文件只占用了block的一部分,其它文件还可以继续使用。不浪费空间。


其次作者观察到以前的FS,随着时间的推移,disk access time 会变得越来越大。

原因是一开始系统有一个list of free space, 随着使用越来越多,删除,添加,更新文件。这个free list 变成了一个random list. 一个文件可能被放在相隔很远的cylinder, 或者sector 里面,读取一个block 之后,disk head move 到下一个block 需要花费很长时间。

FFS的解决方案是:

给出Global 和 local layout policy, 对文件或者文件夹位置的安排进行优化,尽量缩短 seek 的时间。但是也有缺点:当硬盘使用率非常高的时候,这个优化的时间会变得非常高,因此效率会大幅下降。

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值