大文件输入/输出

大文件输入/输出

我的问题有点笼统,但应用却非常实用。我想知道系统(特别是 Linux,但一般机制也很有趣)如何处理大型(大于可用 RAM)文件的读取/写入。

例如,如果我尝试读取大小为 40 GB 的文件“foo.txt”,可以通过哪些方式读取?系统​​将如何呈现它?

另一个例子:我们正在写入一个文件。它变得越来越大。在某些时候,它会占用我们剩余的 RAM 空间。系统会做什么?(与文件交换页面?哪些页面?)

这是提出这个问题背后的动机:我需要将数据库写入 xml 文件(以某种特定方式)。因此,如果数据库大小为 20 GB,就会出现这些问题。

相关内容