【问题标题】:Linux: page faults and network filesystemsLinux:页面错误和网络文件系统
【发布时间】:2010-06-14 00:22:08
【问题描述】:

如果 Linux 系统用完物理内存,它会丢弃不活动的可执行代码页面吗?我认为答案是肯定的,因为没有理由将它们保留在交换中,因此它们只是被丢弃并在必要时重新加载(据我所知,这就是 FreeBSD 所做的)。

如果上述情况适用于 Linux,我的问题是,它如何处理从网络文件系统(例如 NFS)运行的可执行文件?如果出现页面错误,它是否会通过网络获取可执行页面?

【问题讨论】:

    标签: linux virtual-memory


    【解决方案1】:

    如果 Linux 系统用尽物理 内存,它是否处于非活动状态 可执行代码页?我假设 答案是肯定的,因为没有 有理由让他们交换,所以他们 被简单地丢弃并重新加载,如果 必要的(据我所知,那是 FreeBSD 做了什么)。

    是的。

    如果上述情况适用于 Linux,我的 问题是,它是如何处理的 从网络运行的可执行文件 文件系统(例如 NFS)?它会去吗? 获取可执行页面 网络是否有缺页?

    NFS 客户端在本地缓存内容(如果您担心速度),但可能不会缓存整个文件(如果您担心一致性)。这是一个相关的 NFS FAQ entry

    【讨论】:

    • 这是否意味着如果(1)存在页面错误,(2)存在网络FS驱动程序缓存未命中,(3)远程服务器,正在运行的程序在理论上存在锁定的可能性变得不可用?
    • 这似乎合乎逻辑。而且有点吓人。
    • 太可怕了,毁了程序员的一天:(
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2014-09-23
    • 1970-01-01
    • 1970-01-01
    • 2013-09-04
    • 2015-08-07
    • 1970-01-01
    • 2020-12-09
    相关资源
    最近更新 更多