open()是否将文件加载到ram上?

时间:2013-12-11 07:00:25

标签: linux file

在Linux中,当我在文件上调用open()时,是否在ram上加载了完整的数据?

我问这个是因为我需要打开的文件是一个巨大的文件(大约700MB)。如此大的文件,如果它被加载,它可能会给其他应用程序带来问题并使系统变慢。

如果未加载完整数据(因为按需分页或类似的东西),那么我们可以假设加载的初始大小是什么?

如果重要,请参阅我的文件详情。

文件类型:二进制

文件大小:在700MB到2GB之间变化

2 个答案:

答案 0 :(得分:1)

不,不。它只是给文件一个名为file descriptor的描述符,然后你可以用来做读/写和其他一些操作。将文件描述符视为抽象或处理磁盘上的内容。

您还应该阅读open的手册页。它声明

  

open()函数应建立文件和之间的连接   文件描述符。它应该创建一个打开的文件描述   是指引用该打开文件的文件和文件描述符   描述

答案 1 :(得分:0)

  

在Linux中,当我在文件上调用open()时,是否在ram上加载了完整的数据?

没有

  

我们可以假设加载的初始大小是什么?

零。