我有 Windows 7 32 位操作系统和 8 GB 的 RAM。我知道 Windows 32 位的最大 RAM 使用量为 4GB。我安装了包含两个 Ubuntu(32 位和 64 位)操作系统的虚拟盒。是否可以将剩余的 4GB RAM 分配给虚拟盒中的操作系统,以便我可以将完整的 4 GB RAM 专用于 Windows 32 位。
目前我已为 Windows 分配了 2.5 GB,为 Ubuntu 32 位和 64 位分别分配了 1.5GB RAM。我无法同时运行这两个操作系统。
答案1
将您的 Windows 7 主机从 32 位替换为 64 位,这是唯一的解决方案。
在 Windows(不包括服务器)32 位操作系统中,无法分配超过 32 位的地址(还有一些由其他硬件保留的地址),因此您的 4.3GB RAM 对于 VM 来说将完全不可见。
答案2
根据微软官方文档,Windows 7的(“所有支持的版本“,无论是 32 位还是 64 位),支持从 8GB(家庭基础版)到 192GB(专业版、企业版和旗舰版)的内存。这取决于不是发行版,而是 CPU 架构(32 位还是 64 位,过去 5 年内生产的大多数(所有?)台式机和笔记本电脑 CPU 都采用这种架构,它们是英特尔还是 AMD,尽管名称为“amd64”令人困惑)。
32 位平台的物理内存限制还取决于物理地址扩展 (PAE),它允许 32 位 Windows 系统使用超过 4 GB 的物理内存。
内存和地址空间限制
下表指定了受支持的 Windows 版本的内存和地址空间限制。除非另有说明,否则此表中的限制适用于所有受支持的版本。
╔════════════════════════╦══════════════╦══════════════╗
║ Version ║ Limit on X86 ║ Limit on X64 ║
╠════════════════════════╬══════════════╬══════════════╣
║ Windows 7 Ultimate ║ 4 GB ║ 192 GB ║
║ Windows 7 Enterprise ║ 4 GB ║ 192 GB ║
║ Windows 7 Professional ║ 4 GB ║ 192 GB ║
║ Windows 7 Home Premium ║ 4 GB ║ 16 GB ║
║ Windows 7 Home Basic ║ 4 GB ║ 8 GB ║
║ Windows 7 Starter ║ 2 GB ║ N/A ║
╚════════════════════════╩══════════════╩══════════════╝