64位系统中以兼容模式运行的虚拟地址空间

Nav*_*een 9 64-bit compatibility virtual-address-space

我在64位Windows操作系统上看到,可用的用户虚拟地址空间是8个terra字节.但是,如果我们正在执行的程序在32位兼容模式下运行,那么这个用户空间仍然可用吗?或者它的行为类似于普通的32位操作系统,并且只提供2GB的用户地址空间?

bk1*_*k1e 12

Microsoft有一个图表显示各种限制:Windows版本的内存限制

仅概括用户模式虚拟地址空间:

  • 32位Windows:
    • 32位进程:默认为2 GB; 3 GB /LARGEADDRESSAWARE:YES和4GT
  • 64位Windows(x64架构):
    • 32位进程:默认为2 GB; 4 GB带/LARGEADDRESSAWARE:YES
    • 64位进程:默认为8 TB; 2 GB带/LARGEADDRESSAWARE:NO

4GT是4千兆字节的调整:

  • XP:/3GBboot.ini开关
  • Vista的: bcdedit /set increaseuserva 3072

Mark Russinovich撰写了一篇博文,解释了许多这些限制:推动Windows的局限:虚拟内存