代码之家  ›  专栏  ›  技术社区  ›  John Sibly

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

  •  89
  • John Sibly  · 技术社区  · 17 年前

    我在谷歌上搜索过这个,但似乎没有一个结论性的答案。

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

    10 回复  |  直到 14 年前
        1
  •  124
  •   David Webb    15 年前

    检查工作站的最简单方法是下载 VMware Processor Check for 64-Bit Compatibility 来自VMware网站的工具。

        2
  •  30
  •   dbr    13 年前

    如果您有32位硬件,则不能运行64位来宾操作系统。 "VMware software does not emulate an instruction set for different hardware not physically present" .

    可以

    从…起 this 2008-era blog post (mirrored by 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
    
        3
  •  10
  •   Community Mohan Dere    11 年前

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

    我有一份旧情报 Core 2 Duo WindowsXP Professional 2002在它上面运行,我让它开始工作。

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

    Windows Server 2008

    我希望它对你有用!

        4
  •  8
  •   Peter Mortensen Pieter Jan Bonestroo    14 年前

    Hardware and Firmware Requirements for 64-Bit Guest Operating Systems 详情请参阅。它与一个或多个处理器无关。

        5
  •  4
  •   Peter Mortensen Pieter Jan Bonestroo    14 年前

    它可以归结为计算机中的CPU是否具有VT位(虚拟化),BIOS允许您打开它。例如,我的笔记本电脑是一个 Core 2 Duo 它能够使用这个。但是,我的BIOS不允许我打开它。

    请注意,我已经读到,打开此功能可以将正常操作的速度降低10-12%,这就是为什么它通常被关闭的原因。

        6
  •  3
  •   Nathan Fellman    17 年前

    老实说,我对此表示怀疑,原因有很多,但最重要的是有些指令在32位模式下是允许的,但在64位模式下是不允许的。具体而言,用于在64位模式下对某些指令和寄存器进行编码的REX前缀是0x4f:0x40形式的字节,但在32位模式下,相同的字节是带有固定操作数的INC或DEC。

        7
  •  3
  •   Peter Mortensen Pieter Jan Bonestroo    14 年前

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

        8
  •  3
  •   Peter Mortensen Pieter Jan Bonestroo    14 年前

    VMware不允许您在32位主机上运行64位来宾。你只需要阅读文档就能找到答案。

    如果你真的想这样做,你可以使用QEMU,我推荐一个Linux主机,但是它会非常慢(我的意思是慢)。

        9
  •  2
  •   Peter Mortensen Pieter Jan Bonestroo    14 年前

        10
  •  1
  •   Knapsu    13 年前

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

    要在Linux下检查这一点,您只需查看 /程序/cpuinfo 文件只需寻找合适的标志( vmx 适用于英特尔处理器或 (适用于AMD处理器)

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

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

    推荐文章