有没有办法在 32 位 Windows 操作系统中启用超过 4 GB 的 RAM?

Wah*_*tar 24 memory windows-7 32-bit windows-8

我将我的 PC 升级到 4 GB 内存,但只有 3 GB。Windows 7 32 位认为我有 4 GB RAM,但没有使用超过 3 GB。

有人告诉我 MS Windows 32 位不支持大于 3 GB 的 RAM。

那么请问有什么方法可以让我的操作系统“Windows 7 32-Bit”支持超过 3 GB 的内存?

*`注意:我不能移动到 64 位,因为我有很多程序不能在 64 位操作系统上运行。

编辑::

我尝试了 Wonsungi 先生的建议,但每当我选中此选项时:

Enable support for 4 GB of RAM

我收到以下错误:

'Cannot access to the registry key HKEY_CLASSES_ROOT\CLSID\{E88DCCE0-11d1-A9F0-00AA0060FA31}.'

我的注册表中没有“CLSID”,我不知道为什么!。

Ger*_*ima 13

阅读:伙计,我的 4 GB 内存在哪里?

对于一般信息,还有每个 Windows 版本的内存限制概述:

Windows 版本的内存限制

  • 这是不正确的。32 位版本的 Linux 内核并不是什么奇怪的 32/64 字节 [原文如此] 操作系统。它们是 32 位操作系统,如果选择了正确的选项,可以使用 PAE 来寻址 2 ^ 36 字节的内存,尽管每个进程少于 2 ^ 32。如果内核是 64 位,则它使用 64 位寻址。 (5认同)
  • PAE(物理地址扩展)的维基百科条目指出:Mac OS X Mac OS X for Intel Macs 在 Apple 支持的所有 CPU 上支持 PAE 和 NX 位(从 10.4.4 — 第一个 Intel 版本开始)。Mac Pro 和 Xserve 系统目前可以支持 32 GiB 的 RAM,即使 Mac OS X 10.5 Leopard 内核仍然是 32 位。Mac OS X 10.6 Snow Leopard 内核可以选择在某些系统上以 64 位运行 http://en.wikipedia.org/wiki/Physical_Address_Extension (4认同)

Den*_*asi 12

您可以使用 PAE,但它远不如仅使用 64 位那么好。检查此MSDN 页面。

启用 PAE

如果在支持启用硬件的 DEP 的计算机上启用了 DEP,或者如果计算机配置为内存范围超过 4 GB 的热添加内存设备,Windows 会自动启用 PAE。如果计算机不支持启用硬件的 DEP 或未配置为内存范围超过 4 GB 的热添加内存设备,则必须明确启用 PAE。

要显式启用 PAE,请使用以下BCDEdit /set命令设置 pae 启动项选项:

bcdedit /set [{ID}] pae ForceEnable
Run Code Online (Sandbox Code Playgroud)

如果启用了 DEP,则无法禁用 PAE。使用以下BCDEdit /set命令禁用 DEP 和 PAE:

bcdedit /set [{ID}] nx AlwaysOff
bcdedit /set [{ID}] pae ForceDisable
Run Code Online (Sandbox Code Playgroud)

Windows Server 2003 和 Windows XP:要启用 PAE,请使用boot.ini文件中的/PAE开关。要禁用 PAE,请使用/NOPAE开关。要禁用 DEP,请使用/EXECUTE开关。

  • 如果您不知道如何做到这一点,**我强烈建议您根本不要这样做**,如果出现问题,您将需要这些知识来拯救您的系统。 (5认同)
  • PAE 开关不是什么隐藏的奇迹,当然也不是 4 GB 32 位系统的圣杯(否则每个人都会使用它,对吧?)。它可能会导致系统不稳定。 (4认同)
  • PAE 开关仍然不允许您使用整个 4GB 的 RAM。有关克服此问题的解决方案,请参阅下面的回复。 (2认同)
  • “在基于 x86 的系统上运行的某些 32 位版本的 Windows Server 可以使用 PAE 访问高达 64 GB 或 128 GB 的物理内存。” 这篇文章仅适用于 Windows Server - 32 位桌面版本的 Windows 仅适用于 4GB。这是一个许可问题,而不是硬件或软件问题,运行此命令不会改变这一事实 - http://msdn.microsoft.com/en-us/library/aa366778(v=vs.85).aspx。 (2认同)

Bre*_*ugh 11

近日,一群程序员发布了 Windows 7 内核补丁,允许在 Windows 7 下使用超过 4 GB 的 RAM。 点击这里下载补丁,或查看更多信息。该补丁基本上将 Windows 7 内核修改为更像 Windows Server 2003 数据中心版,在 32 位模式下兼容高达 8 GB 的 RAM。

该补丁允许您在 Windows 7 32 位下将PAE很好地扩展到 8 GB 的 RAM。有关 Microsoft 为什么实施此技术限制的详细信息,请参阅此文章

请注意,即使系统可以访问更多内存,单个进程仍将被限制为 4 GB...虽然如果您有 8 GB 的 RAM,那么至少您还有 4 GB 用于其他进程;)


Nat*_*ams 8

这个问题的答案实际上是“取决于你问谁”。

有人说使用 PAE,这将允许您处理高于 4GB 的地址,但 Microsoft 不会让您在许多 32 位版本的 Windows 上使用。

http://msdn.microsoft.com/en-gb/library/aa366778(VS.85).aspx
下表指定了Windows 7 的物理内存限制。

物理 4GB 限制,期间。这是一个许可问题。甚至可能有一个“黑客”可以让你使用超过 4GB,但我不记得了。

请注意:32 位的 Vista 和 Windows 7 将报告您在系统中拥有的总物理内存,但它只会使用其中的 4GB。因此,即使“系统”控制面板将显示 16GB,在运行 32 位 Windows 的计算机中推入 16GB 也只会使用 4GB 根据 MICROSOFT。Windows 7、Vista 和 XP 32 位仅使用 4GB 内存,这是事实。但是,在启用 PAE 的情况下,某些版本的 Windows Server 将使用超过 4GB。

对于那些“您错误的 PAE 将允许您使用超过 4GB”的人,是的,我同意,但是,Microsoft 表示您只能在大多数 32 位桌面操作系统上使用 4GB,因此如果您觉得该页面有误,请发送它们发电子邮件或打电话给他们投诉。

  • 请重新阅读我的帖子,由于许可,Microsoft 有此限制。我从来没有说过你不能在 32 位操作系统中使用超过 4GB 的空间,你根本不能在 Windows 的桌面版本中使用。这是事实。要“修复”它也不是简单的注册表修复。你需要一个反汇编器、一个十六进制编辑器、汇编知识和一些运气。 (2认同)

har*_*ymc 7

据我所知,32 位的 Window 可以使用高达 64 GB 的内存,并且可以被“破解”来这样做。
此 hack 在这里有完整描述:Windows Vista 中的许可内存
(注意:我不建议任何人实际尝试它。)
它也很有趣,因为它很好地解释了所有涉及的概念。
我在他的概念验证图像下方复制。

32 位版本的 Windows Vista 被限制为 4GB 并不是因为 32 位操作系统的任何物理或技术限制。Windows Vista 的 32 位版本都包含使用 4GB 以上物理内存的代码。Microsoft 只是不许可您使用该代码。

图片


小智 5

有人告诉我 MS Windows 7 32 位不支持大于 3 GB 的 RAM。

有人错了。32 位 Windows 桌面操作系统支持高达 4 GB 的物理内存。但是,由于 x86 架构的硬件限制,如果安装了 4 GB,则操作系统只有 3.5~ GB 可用。

  • 这是不正确的。例如,32 位 Linux 支持 4 GB RAM 没有问题。或者,比如说 64 GB 的 RAM,当然每个进程都有限制。哎呀,某些版本的 32 位 Windows 支持超过 4 GB 的 RAM。请参阅 http://en.wikipedia.org/wiki/Physical_Address_Extension#Microsoft_Windows (2认同)
  • 什么不正确???32 位 Windows 最多支持 4 GB 物理内存,故事结束(除非受其他因素限制,即“入门”版本),您所指的此表包括 64 位版本的 Windows,例如早期的 Windows 2000 高级服务器和数据中心。弄清楚事实,引用:“该表包括一些 64 位版本” (2认同)