ala*_*ala 92 memory windows 32-bit community-faq
我最近将计算机的 RAM 升级到 4 GB。我的 32 位 Windows 安装仅显示 3574 MB 的内存。如何让 Windows 使用全部 RAM?
Von*_*onC 72
你不能:
如果要将内存和设备放入 32 位地址范围:并非所有可用的 4GB 地址空间都可以分配给内存。
那么,如果您为 PC 购买 4GB 内存,实际会发生什么呢?
IO 的内存映射中有一个漏洞。(现在它只占总地址空间的 25%,但它仍然是一个大洞。)所以你内存的底部 3GB 将可用,但最后 1GB 有问题。
唯一实用的解决方案是安装 64 位操作系统。在 Windows Vista 和更高版本中,32 位和 64 位许可证密钥可以互换。如果您可以获得 64 位版本操作系统的 Windows 安装介质,则可以使用原始许可证密钥重新安装。
首先,Windows XP(32 位)仅支持 4 GB。这不仅适用于 Windows XP。相反,它适用于32 位桌面 Windows - 带有 PAE 的 32 位 Linux 系统和许多 32 位 Windows Server 版本根据链接文章支持超过 4GB。如果您使用的是 32 位 Windows XP,您将永远不会看到超过 4 GB。但是,我确实找到了一个更详细的原因,为什么您的系统显示的可用内存比实际安装的要少。
来自3GB 而非 4GB RAM 问题(Microsoft MSDN 博客):
由于很久以前做出的架构决定,如果您安装了 4GB 的物理 RAM,Windows 只能报告物理 4GB 的 RAM 的一部分(范围从 ~2.75GB 到 3.5GB,具体取决于安装的设备、主板的芯片组和BIOS)。
这种行为是由于“内存映射 IO 保留”造成的。这些保留覆盖物理地址空间并屏蔽这些物理地址,使它们不能用于工作内存。这与机器上运行的操作系统无关。
4GB 以下的大量地址空间(可通过 32 位访问的最高地址)被保留供系统硬件使用:
- BIOS – 包括 ACPI 和传统视频支持
- PCI 总线,包括桥接器等。
- PCI Express 支持将保留至少 256MB,最多 768MB,具体取决于显卡安装的内存
这意味着一个典型的系统可能会看到大约 256MB 到 1GB 的地址空间,低于 4GB,为操作系统无法访问的硬件使用保留。英特尔芯片组规范非常擅长解释默认情况下保留哪些地址范围,并且在某些情况下指出 1.5GB 始终保留,因此 Windows 无法访问。
如果您查看来源,则会有更多信息。但是,如果您按照这些说明进行操作,您或许可以充分利用已安装的 8 GB 空间。
从个人经验来讲,这不是什么新问题。几年前,当我在 Vista 首次发布时构建了一个 4 GB 的 32 位 Windows Vista 系统时,我遇到了同样的问题。网上有无数与同一主题相关的论坛帖子。
另请阅读 Microsoft KB 929605 -如果安装了 4 GB 的 RAM,则在 Windows Vista 的“系统信息”对话框中报告的系统内存小于您的预期。
归档时间: |
|
查看次数: |
35539 次 |
最近记录: |