32位程序运行在64位OS内存消耗

时间:2010-10-03 03:49:01

标签: php mysql xampp 32bit-64bit

我们有一台Windows Server 2008 R2 32G内存机,这显然是64位操作系统。我们安装了XAMPP 32位版本,32位MySQL和PHP。然后我们托管一个用PHP编写的webmail系统。我的问题是:那些32位MySQL和32位PHP会消耗超过4G内存的操作系统吗?我们必须安装64位MYSQL和PHP来实现这个结果吗?

谢谢

1 个答案:

答案 0 :(得分:0)

基于x86架构指令集,以32位编译的软件将无法分配超过4GiB,因为它们无法直接访问此内存。由于它们使用32位来表示存储器地址,并且由于2 ^ 32 = 4GiB(舍入),因此它们将无法进一步表示任何地址。

另一方面,软件可以使用PAE在32位系统上间接使用超过4GiB的内存,但必须明确开发软件才能使用它。

您需要每个软件及其库的64位版本,否则您将无法直接使用超过4GiB,即使操作系统识别您的所有内存。