按顺序读取文件会导致随机磁盘搜索吗?

时间:2016-08-08 02:59:02

标签: file filesystems disk sequential

我的印象是文件的顺序扫描实际上是磁盘上的顺序搜索。但是,我最近读到,文件的块可能不是由文件系统在磁盘上连续写入的。如果inode用作映射并且每个块都是通过跟随块指针获得的,那么我想知道文件系统检索文件块的实际机制是否实际上是顺序的?

如果答案是依赖于文件系统的,那么引用一些主要的文件系统会很棒。 感谢。

1 个答案:

答案 0 :(得分:0)

Filesystems 尝试在写入期间尽可能多地分配顺序块。但随着它们的老化(即随着时间的推移,很多创造+删除),fragmentation变得不可避免。有一些启发式方法可以减少碎片,如推测预分配,延迟预分配等。应用程序本身可以执行预分配(例如fallocate),启用预读和运行碎片工具,具体取决于文件系统中可用的功能,以使块连续或至少读得更快。