如果为 tmpfs 配置的大小大于 RAM 的大小,并且 tmpfs 中存储了很多内容,那么应用程序可用的 RAM 量是如何确定的?如果应用程序需要更多内存,系统是否只能提供交换内存,或者 tmpfs 可以为应用程序释放 RAM?我认为在 RAM 中运行应用程序比在 RAM 中拥有文件系统更重要。 swappiness 的设置仅影响应用程序还是也影响 tmpfs?
答案1
tmpfs 文件系统的内容在 RAM 和交换区之间划分,就像进程的内存在 RAM 和交换区之间划分一样。所有数据在使用时都必须位于 RAM 中。如果没有足够的空间,内核会将数据移动到交换区。基本思想是,最长时间未使用的数据首先移至交换区,无论它是进程内存还是 tmpfs 内容。