32位程序可以在64位操作系统上使用超过4GB的内存吗?

kri*_*ofa 11 memory memory-management 32-bit

在64位操作系统上运行的32位程序是否可以使用超过4GB的内存(如果可用)?

Phi*_*eko 5

简短的回答是:是的。更长的答案取决于。硬件支持页面重新映射,这基本上为您的程序提供了一个将几个页面的窗口放入更大的内存区域的窗口。然而,该窗口应该由程序本身管理,并且不会得到内存管理器的支持。有一些程序可以执行此操作,例如 Windows 上的 SQL。然而,一般来说这是一个坏主意,程序应该将自身限制为 4GB 或移动到 64 位:)


SLa*_*aks 0

仅通过显式地将 4GB 范围的内存映射到其地址空间中。