打开文件时linux中会发生什么?

时间:2016-08-22 05:04:00

标签: linux file caching

在linux中使用open()函数打开文件时,操作系统是否将所有文件块都带到缓存中?

1 个答案:

答案 0 :(得分:1)

AFAIK,内核不会系统地open(2)将所有文件块带入其页面缓存(特别是对于大于可用RAM的文件不起作用)。

但它可能带来一些。我想对于大多数(小)文件,也许可以读取所有块。但我可能是错的,它是高度系统特定的(也是特定于配置的)。

另见O_DIRECT旗帜open(2)& posix_fadvise(2)mount(8)的选项