C语言 由malloc分配的内存不一定是物理连续的



malloc分配的内存可能占用几个页面,这些页面不一定相邻,这是正确的吗?

正确。

物理上连续的内存只对DMA有影响,你不关心,因为你不在内核空间。

在虚拟地址空间中是连续的。

是的,它们在物理上不能保证相邻,但至少在进程的虚拟地址空间中它们看起来是相邻的。

在用户空间中,您很少需要考虑物理内存和连续页面。

malloc将在虚拟地址空间上给您连续的内存。如果您了解虚拟内存的工作原理,就会知道不能保证虚拟页面在物理上是连续的。

相关内容

  • 没有找到相关文章

最新更新