我可以在 32 位计算机上运行 64 位 VMware 映像吗?

我用谷歌搜索过这个问题,但似乎没有确凿的答案。

我知道它必须完全模拟并且会像狗一样运行 - 但性能缓慢不一定是问题,因为我只是有兴趣在 64 位平台上测试我的一些后台服务代码。

有帮助吗?

解决方案

检查工作站的最简单方法是下载 VMware 处理器检查 64 位兼容性 VMware 网站上的工具。

您无法在 32 位处理器上运行 64 位 VM 会话。但是,如果您拥有 64 位处理器但安装了 32 位主机操作系统并且您的处理器支持正确的扩展,则可以运行 64 位 VM 会话。上面链接的工具会告诉您您的工具是否这样做。

其他提示

如果您有 32 位硬件,则不能运行 64 位来宾操作系统。 “VMware 软件不会模拟物理上不存在的不同硬件的指令集”.

然而,QEMU 模拟 64 位处理器,因此您可以转换 VMWare 机器并使用它来运行它

这篇 2008 年的博客文章(由 archive.org 镜像):

$ cd /path/to/vmware/guestos
$ for i in \`ls *[0-9].vmdk\`; do qemu-img convert -f vmdk $i -O raw {i/vmdk/raw};done
$ cat *.raw >> guestos.img

要运行它,

qemu -m 256 -hda guestos.img

不足之处?我们大多数人运行 VMware 时都没有为虚拟磁盘预先分配空间。因此,当我们从 VMware 转换到 QEMU 时,原始文件将是预分配的总空间。我仍在测试 -f qcow 格式是否可以解决问题。例如:

for i in `ls *[0-9].vmdk`; do qemu-img convert -f vmdk $i -O qcow ${i/vmdk/qcow}; done && cat *.qcow >> debian.img

是的,如果您有 64 位处理器,则可以从 32 位操作系统在 VMWare 中运行 64 位操作系统。

我有一台旧英特尔 酷睿 2 双核 其上运行的是 Windows XP Professional 2002,我让它可以工作。

首先,查看您的CPU是否能够运行64位操作系统。在 VMware 站点上搜索“处理器检查 64 位兼容性”。运行程序。

如果它说您的处理器有能力,请重新启动计算机并进入 BIOS,看看您是否有“虚拟化”并且能够启用它。我能够并且得到了 Windows Server 2008 R2 在这台旧笔记本电脑上在 VMware 下运行。

我希望这个对你有用!

如果您的硬件仅为 32 位,则不行。如果您有 64 位硬件和 32 位操作系统,那么也许可以。看 64 位客户机操作系统的硬件和固件要求 了解详情。和一对一没有关系。多个处理器。

归根结底就是你机器中的CPU是否有VT位(虚拟化),并且BIOS允许你打开它。例如,我的笔记本电脑是 酷睿 2 双核 能够使用这个。但是,我的 BIOS 不允许我打开它。

请注意,我读到打开此功能会使正常操作速度降低 10-12%,这就是它通常被关闭的原因。

老实说,我对此表示怀疑,原因有很多,但最重要的一个是,有些指令在 32 位模式下允许,但在 64 位模式下不允许。具体来说,在 64 位模式下用于编码某些指令和寄存器的 REX 前缀是 0x4f:0x40 形式的字节,但在 32 位模式下,同一字节是带有固定操作数的 INC 或 DEC。
因此,任何以 REX 为前缀的 64 位指令都将被解释为 INC 或 DEC,并且不会为 VMM 提供模拟 64 位指令的机会(例如通过发出未定义的操作码异常信号)。

唯一可能的方法是在每条指令之后使用陷阱异常返回到 VMM,以便它可以查看是否需要特殊的 64 位处理。我根本看不到这种事发生。

虚拟机?不。然而, QEMU 有一个可以使用的 x86_64 系统目标。您可能无法直接使用 VMware 映像(IIRC,没有转换工具),但您可以自己安装操作系统等并在其中工作。QEMU 的启动和运行可能有点像 PITA,但它往往工作得很好。

VMware 不允许您在 32 位主机上运行 64 位客户机。您只需阅读文档即可找到答案。

如果你真的想这样做,你可以使用 QEMU,我推荐 Linux 主机,但它会很慢(我真的是说慢)。

是的你可以。我有一个在 Windows XP 32 位上的 VMware 中运行的 64 位 Debian。只要你将Guest设置为使用两个处理器,它就可以正常工作。

如果您的处理器是 64 位并且启用了虚拟化技术 (VT) 扩展(可以在 BIOS 中将其关闭),则可以。您无法在 32 位处理器上执行此操作。

要在 Linux 下检查这一点,您只需查看一下 /proc/cpu信息 文件。只需寻找适当的标志(虚拟机 对于英特尔处理器或 支持向量机 适用于 AMD 处理器)

egrep '(vmx|svm)' /proc/cpuinfo

要在 Windows 下检查这一点,您需要使用像 CPU-Z 这样的程序,它将显示您的处理器架构和支持的扩展。

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top