x64 Linux 中单个进程是否有内存限制?
我们正在运行具有 32Gb RAM 的 Linux 服务器,我想知道我是否可以将其中的大部分分配给我正在编码的需要大量 RAM 的单个进程!
最佳答案
某些内核有不同的限制,但在任何现代 64 位 Linux 上,单进程限制仍然远远超过 32GB(假设该进程是 64 位可执行文件)。各种发行版也可能使用 sysctl
设置了每个进程的限制,因此您需要检查您的本地环境以确保没有设置任意低的限制(同时检查 ipcs - l
在基于 RPM 的系统上)。
Debian port documentation对于 AMD64 端口,特别提到每个进程的虚拟地址空间限制为 128TiB(物理内存限制的两倍),因此这应该是您正在使用的合理上限。
关于c++ - x64 Linux 中的单进程最大可能内存,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8799481/