OSX 设置页面大小
OSX Set Page size
我将如何为 OS X Yosemite 设置内存中的页面大小?
如果我在终端中输入 pagesize
,我会得到 4096
。有什么办法可以修改吗?
简答:没有
页面大小特定于您的体系结构,用户通常无法在 运行 时更改。 Intel x86 处理器都使用 4 KiB 的页面大小。
更长的答案:
您的 CPU 可能还支持更大的页面,例如 2 MiB 和 1 GiB。 (请参阅维基百科上的 Huge Pages。)但是,这完全取决于您的 OS 内核来管理内存页面如何映射到各种地址空间。
很少有用户空间 API 关注平台的页面大小。但是,这样做的那些(例如 mmap
)被写入可用页面大小的最小公分母,因为您不能保证特定页面将使用更大的页面大小。因此,暴露给用户空间的 "page size" 是一个简单的单一值,例如 4 KiB。
在 Linux 上,此机制有些 "control"。查看:
- Huge pages part 1 (Introduction) [LWN.net]
- Huge pages part 2: Interfaces [LWN.net]
hugetlbpage.txt
[kernel.org]
- Hugepages [Debian 维基]
我不知道 OS X 是否支持这个。搜索 OS X hugepages 的结果很薄。
我将如何为 OS X Yosemite 设置内存中的页面大小?
如果我在终端中输入 pagesize
,我会得到 4096
。有什么办法可以修改吗?
简答:没有
页面大小特定于您的体系结构,用户通常无法在 运行 时更改。 Intel x86 处理器都使用 4 KiB 的页面大小。
更长的答案:
您的 CPU 可能还支持更大的页面,例如 2 MiB 和 1 GiB。 (请参阅维基百科上的 Huge Pages。)但是,这完全取决于您的 OS 内核来管理内存页面如何映射到各种地址空间。
很少有用户空间 API 关注平台的页面大小。但是,这样做的那些(例如 mmap
)被写入可用页面大小的最小公分母,因为您不能保证特定页面将使用更大的页面大小。因此,暴露给用户空间的 "page size" 是一个简单的单一值,例如 4 KiB。
在 Linux 上,此机制有些 "control"。查看:
- Huge pages part 1 (Introduction) [LWN.net]
- Huge pages part 2: Interfaces [LWN.net]
hugetlbpage.txt
[kernel.org]- Hugepages [Debian 维基]
我不知道 OS X 是否支持这个。搜索 OS X hugepages 的结果很薄。