Linux:页面错误和网络文件系统

发布于 2024-09-05 03:24:48 字数 200 浏览 4 评论 0原文

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

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

If a Linux system runs out of physical memory, does it drop inactive executable code pages? I assume the answer is yes, since there is no reason to keep them in swap, so they are simply discarded and re-loaded if necessary (as far as I know, that's what FreeBSD does).

If the above is true for Linux, my question is, how does it handle executables run from network filesystems (e.g. NFS)? Does it go and fetch executable pages over the network if there is a page fault?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

孤云独去闲 2024-09-12 03:24:48

如果 Linux 系统耗尽物理资源
内存,是否会变得不活跃
可执行代码页?我假设
答案是肯定的,因为没有
有理由让它们交换,所以它们
被简单地丢弃并重新加载,如果
必要的(据我所知,那就是
FreeBSD 做什么)。

是的,确实如此。

如果上述情况对于 Linux 来说是正确的,我的
问题是,它如何处理
从网络运行的可执行文件
文件系统(例如 NFS)?它去吗?
获取可执行页面
网络是否出现页面错误?

NFS 客户端会在本地缓存内容(如果您担心速度),但可能不会缓存整个文件(如果您担心一致性)。以下是相关的 NFS 常见问题解答条目

If a Linux system runs out of physical
memory, does it drop inactive
executable code pages? I assume the
answer is yes, since there is no
reason to keep them in swap, so they
are simply discarded and re-loaded if
necessary (as far as I know, that's
what FreeBSD does).

Yes it does.

If the above is true for Linux, my
question is, how does it handle
executables run from network
filesystems (e.g. NFS)? Does it go and
fetch executable pages over the
network if there is a page fault?

The NFS client caches stuff locally (if you're worried about speed), but possibly not the whole file (if you're worried about consistency). Here is a relevant NFS FAQ entry.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文