【发布时间】:2018-06-29 18:30:52
【问题描述】:
我正在查看似乎正在分配与页面大小对齐的内存的 C 代码:
_aligned_malloc( size, PAGESIZE )
其中PAGESIZE 是一个设置为 4096 的变量。暂时忽略该页面大小的值可能与 4096 不同,我只想知道为什么要将内存分配与页面大小对齐。它提供了哪些性能优势(如果有)?它除了性能还有其他用途吗?
【问题讨论】:
-
共享内存更喜欢整页。此外,更改对内存块的保护通常涉及整个页面。
-
阅读stackoverflow.com/questions/38088732/… 可能是个好主意。