Могу ли я запустить 64-битный образ VMware на 32-битной машине?

StackOverflow https://stackoverflow.com/questions/56124

Вопрос

Могу ли я запустить 64-битный образ VMware на 32-битной машине?

Я погуглил это, но, похоже, не нашел окончательного ответа.

Я знаю, что его придется полностью эмулировать и он будет работать как собака, но низкая производительность не обязательно является проблемой, поскольку я просто заинтересован в тестировании кода некоторых фоновых служб на 64-битных платформах.

Это было полезно?

Решение

Самый простой способ проверить вашу рабочую станцию ​​— загрузить Проверка процессора VMware на совместимость с 64-битной версией инструмент с сайта VMware.

Вы не можете запустить 64-битный сеанс виртуальной машины на 32-битном процессоре.Однако вы можете запустить 64-битный сеанс виртуальной машины, если у вас 64-битный процессор, но установлена ​​32-битная операционная система хоста и ваш процессор поддерживает нужные расширения.Инструмент, указанный выше, сообщит вам, работает ли ваш.

Другие советы

Если у вас 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-битной ОС в VMWare возможен из 32-битной ОС, если у вас 64-битный процессор.

у меня старый интел Ядро 2 Дуо с установленной на нем Windows XP Professional 2002, и я заставил ее работать.

Прежде всего проверьте, способен ли ваш процессор работать с 64-битной ОС.Найдите «Проверка процессора на совместимость с 64-разрядными версиями» на сайте VMware.Запустите программу.

Если он говорит, что ваш процессор способен, перезагрузите компьютер, зайдите в BIOS и посмотрите, есть ли у вас «Виртуализация» и можете ли ее включить.я смог и получил Windows Сервер 2008 R2 работает под управлением VMware на этом старом ноутбуке.

Надеюсь, это сработает для вас!

Если ваше оборудование только 32-битное, то нет.Если у вас 64-битное оборудование и 32-битная операционная система, то возможно.Видеть Требования к оборудованию и прошивке для 64-битных гостевых операционных систем для получения подробной информации.Это не имеет ничего общего с One vs.несколько процессоров.

Все сводится к тому, имеет ли процессор вашего компьютера бит VT (виртуализация), и позволяет ли BIOS его включить.Например, мой ноутбук Ядро 2 Дуо который способен это использовать.Однако мой BIOS не позволяет мне включить его.

Обратите внимание: я читал, что включение этой функции может замедлить нормальную работу на 10-12%, поэтому обычно ее отключают.

Честно говоря, я в этом сомневаюсь по ряду причин, но самая важная из них заключается в том, что есть некоторые инструкции, которые разрешены в 32-битном режиме, но не в 64-битном.В частности, префикс REX, который используется для кодирования некоторых инструкций и регистров в 64-битном режиме, представляет собой байт формы 0x4f:0x40, но в 32-битном режиме тот же байт представляет собой либо INC, либо DEC с фиксированным операндом.
По этой причине любая 64-битная инструкция с префиксом REX будет интерпретироваться как INC или DEC и не даст VMM возможности эмулировать 64-битную инструкцию (например, сигнализируя об исключении неопределенного кода операции).

Единственный способ сделать это — использовать исключение-ловушку для возврата к VMM после каждой инструкции, чтобы он мог увидеть, нужна ли ему специальная 64-битная обработка.Я просто не могу представить, чтобы это произошло.

ВМваре?Нет.Однако, КЕМУ имеет системную цель x86_64, которую вы можете использовать.Скорее всего, вы не сможете использовать образ VMware напрямую (IIRC, инструмента преобразования нет), но вы можете установить ОС и тому подобное самостоятельно и работать внутри нее.QEMU может быть чем-то вроде PITA для запуска и работы, но, как правило, он работает довольно хорошо.

VMware не позволяет запускать 64-битную гостевую систему на 32-битном хосте.Вам просто нужно прочитать документацию, чтобы узнать это.

Если вы действительно хотите это сделать, вы можете использовать QEMU, и я рекомендую хост Linux, но это будет очень медленно (я имею в виду действительно медленно).

Да, ты можешь.У меня 64-разрядная версия Debian, работающая в VMware на 32-разрядной версии Windows XP.Пока вы настроите гостя на использование двух процессоров, он будет работать нормально.

Это возможно, если у вас 64-разрядный процессор и включено расширение Virtualization Technology (VT) (его можно отключить в BIOS).На 32-битном процессоре это сделать невозможно.

Чтобы проверить это в Linux, вам просто нужно заглянуть в /proc/cpuinfo файл.Просто найдите соответствующий флаг (vmx для процессора Intel или свм для процессора AMD)

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

Чтобы проверить это в Windows, вам нужно использовать такую ​​программу, как CPU-Z, которая отобразит архитектуру вашего процессора и поддерживаемые расширения.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top