Ces*_*ian 3 64bit 32bit pae linux-kernel
我知道 32 位内核可以使用 PAE 为使用 PAE 的应用程序分配更多 RAM(最多 64GB),因此我想如果我在 32 位内核上运行 32 位应用程序,我可以在一个内核上使用我所有的 24GB应用程序(-我的操作系统正在使用 ofc)。
但是如果我使用的是 64 位内核呢?32 位(multilib)应用程序也可以使用我所有的内存吗?还是再次限制为4GB?
一个 32 位进程只能访问大约 3GB。(它可以更少,具体取决于内核编译选项。)内核是 32 位还是 64 位都没有关系——这只影响运行 64 位应用程序的能力。PAE 是一种允许更多物理内存但不会改变每个进程看到的虚拟内存大小的方法。这几乎就是“32位”的意思:一个指针使用32位,所以只有2 32个可能的虚拟地址,所以每个进程最多可以访问2 32 B = 4GB。Linux 在系统调用期间保留 1GB 供内核使用,剩下 3GB。
如果应用程序运行多个进程,它可以使用更多内存。
归档时间: |
|
查看次数: |
1028 次 |
最近记录: |