Memory management 内存映射文件v/s普通文件IO

Memory management 内存映射文件v/s普通文件IO,memory-management,operating-system,Memory Management,Operating System,当我们谈论内存映射文件时,通常会提到文件的一部分可以映射到进程地址空间,我们可以使用指针等对其进行随机访问。我也在很多地方读到,我应该有足够的内存来容纳整个文件到内存中。这两条语句让我有点困惑,因为如果我们需要足够的内存来保存完整的文件,那么它的优势是什么?我知道额外的内核空间拷贝内容或快速时间的好处,因为数据不会像在流等情况下那样被块读取或字节读取。您不需要整个文件都有内存-mmap是延迟加载,因此好处是您可以修改大文件而不必使用大量ram。另一个巧妙的技巧是,如果您必须向后迭代它,而不必将其

当我们谈论内存映射文件时,通常会提到文件的一部分可以映射到进程地址空间,我们可以使用指针等对其进行随机访问。我也在很多地方读到,我应该有足够的内存来容纳整个文件到内存中。这两条语句让我有点困惑,因为如果我们需要足够的内存来保存完整的文件,那么它的优势是什么?我知道额外的内核空间拷贝内容或快速时间的好处,因为数据不会像在流等情况下那样被块读取或字节读取。

您不需要整个文件都有内存-mmap是延迟加载,因此好处是您可以修改大文件而不必使用大量ram。另一个巧妙的技巧是,如果您必须向后迭代它,而不必将其分块