myownstars 发表于 2015-03-04 20:05

ext3读取一个文件至少需要几次IO

该贴最初发布在linux操作系统区,原链接http://bbs.chinaunix.net/forum.php?mod=viewthread&tid=4170842&page=1#pid24371080

假定两个文件目录层次分别为为/a/t1.txt和/a/b/c/t2.txt,t1.txt和t2.txt一样大。
在不考虑cache和buffer的前提下,读取两个文件锁好IO是否一样?t2.txt是否要多耗两个IO?
读取文件依次要查找 dir -- inode -- file,那么对于t1,读取文件内容前是否需要额外三个IO分别查找 根目录,目录a以及t1的inode?

镇水铁牛 发表于 2015-03-04 22:35

即使是递归遍历dir,应该不能算做是IO吧。

myownstars 发表于 2015-03-05 09:23

回复 2# 镇水铁牛


    why?
以/a/b为例,难道目录b和a都位于同一个block中?

镇水铁牛 发表于 2015-03-05 19:59

回复 3# myownstars
具体还要看fs的元数据是如何分布的,/a/b/c/t2.txt比/a/t1.txt是多了2次遍历,第一次查找肯定会消耗一定时间的。

   
页: [1]
查看完整版本: ext3读取一个文件至少需要几次IO