在Windows上,内存中的数据是否可以在虚拟内存页面中连续存在?

时间:2011-05-22 06:57:30

标签: windows memory memory-management

在Windows上,内存中的数据是否可以在虚拟内存页面中连续存在?

例如,

  • 字符串“hello”,其中“he”位于一页,“llo”位于下一页。
  • 如果可能,超出最大页面大小的任何大型数据块。

2 个答案:

答案 0 :(得分:4)

当然。

内存页面可能不会在物理内存中连续显示,但通过虚拟内存的魔力,您的程序并不明智。

答案 1 :(得分:0)

VirtualQueryEx不返回单个页面,而是返回具有相同访问权限的页面范围。如果你问一个字符串是否可以跨越两个具有不同访问权限的页面,理论上是肯定的,但这通常非常罕见。你想要的字符串更有可能被换成磁盘。