Puis-je exécuter une image VMware 64 bits sur un ordinateur 32 bits?

Puis-je exécuter une image VMware 64 bits sur un ordinateur 32 bits?

J’ai googlé ceci, mais il ne semble pas y avoir de réponse définitive.

Je sais que cela devrait être complètement émulé et fonctionnerait comme un chien – mais la performance lente n’est pas nécessairement un problème car je suis juste intéressé à tester certains de mes codes de services d’arrière-plan sur des plates-formes 64 bits.

Le moyen le plus simple de vérifier votre poste de travail consiste à télécharger l’outil de compatibilité des processeurs VMware 64 bits à partir du site Web VMware.

Vous ne pouvez pas exécuter une session de machine virtuelle 64 bits sur un processeur 32 bits. Toutefois, vous pouvez exécuter une session de machine virtuelle 64 bits si vous disposez d’un processeur 64 bits mais que vous avez installé un système d’exploitation hôte 32 bits et que votre processeur prend en charge les extensions appropriées. L’outil lié ci-dessus vous dira si le vôtre fait.

Si vous avez du matériel 32 bits, non, vous ne pouvez pas exécuter un SE invité 64 bits. “Le logiciel VMware n’émule pas un jeu d’instructions pour différents matériels non physiquement présents” .

Cependant, QEMU peut émuler un processeur 64 bits, vous pouvez donc convertir la machine VMWare et l’exécuter avec cette

De cet article de blog datant de 2008 (illustré par 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 

Pour l’exécuter,

 qemu -m 256 -hda guestos.img 

Le mauvais côté? La plupart d’entre nous exécutons VMware sans espace de préallocation pour le disque virtuel. Ainsi, lorsque nous effectuons une conversion de VMware à QEMU, le fichier brut sera l’espace total AVEC la pré-allocation. Je teste encore avec le format -f qcow , cela résoudra le problème ou non. Tel que:

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

Oui, il est possible d’exécuter un système d’exploitation 64 bits dans VMWare à partir d’un système d’exploitation 32 bits si vous disposez d’un processeur 64 bits.

J’ai un vieux processeur Intel Core 2 Duo avec Windows XP Professionnel 2002, et je l’ai fait fonctionner.

Tout d’abord, voyez si votre processeur est capable d’exécuter un système d’exploitation 64 bits. Recherchez «Vérification du processeur pour une compatibilité 64 bits» sur le site VMware. Exécutez le programme.

S’il dit que votre processeur est capable, redémarrez votre ordinateur et entrez dans le BIOS pour voir si vous disposez de la «virtualisation» et pouvez l’activer. J’ai été capable de faire fonctionner Windows Server 2008 R2 sous VMware sur cet ancien ordinateur portable.

J’espère que cela fonctionne pour vous!

Si votre matériel est 32 bits seulement, alors non. Si vous avez du matériel 64 bits et un système d’exploitation 32 bits, alors peut-être. Reportez -vous à la section Configuration matérielle et micrologicielle requirejse pour les systèmes d’exploitation invités 64 bits pour plus de détails. Cela n’a rien à voir avec un ou plusieurs processeurs.

Cela se résume à savoir si le processeur de votre machine est doté du bit VT (virtualisation), et le BIOS vous permet de l’activer. Par exemple, mon ordinateur portable est un Core 2 Duo capable de l’utiliser. Cependant, mon BIOS ne me permet pas de l’activer.

Notez que j’ai lu que l’activation de cette fonctionnalité peut ralentir les opérations normales de 10 à 12%, ce qui explique pourquoi elle est normalement désactivée.

J’en doute sincèrement, pour un certain nombre de raisons, mais la plus importante est que certaines instructions sont autorisées en mode 32 bits, mais pas en mode 64 bits. Plus précisément, le préfixe REX utilisé pour coder certaines instructions et certains registres en mode 64 bits est un octet de la forme 0x4f: 0x40, mais en mode 32 bits, le même octet est INC ou DEC avec un opérande fixe.
De ce fait, toute instruction 64 bits préfixée par REX sera interprétée comme INC ou DEC et ne donnera pas au VMM la possibilité d’émuler l’instruction 64 bits (par exemple en signalant une exception d’opcode non définie).

La seule façon de procéder consiste à utiliser une exception d’interruption pour retourner à VMM après chaque instruction afin de voir si elle nécessite une gestion 64 bits spéciale. Je ne peux tout simplement pas voir cela se produire.

VMware? Non. Cependant, QEMU a une cible système x86_64 que vous pouvez utiliser. Vous ne pourrez probablement pas utiliser directement une image VMware (IIRC, il n’y a pas d’outil de conversion), mais vous pouvez installer le système d’exploitation, etc., et y travailler. QEMU peut être un peu un PITA pour être opérationnel, mais cela a tendance à fonctionner assez bien.

VMware ne vous permet pas d’exécuter un invité 64 bits sur un hôte 32 bits. Il suffit de lire la documentation pour le savoir.

Si vous voulez vraiment faire cela, vous pouvez utiliser QEMU, et je recommande un hôte Linux, mais ça va être très lent (je veux vraiment dire lent).

Oui, vous pouvez. J’ai une Debian 64 bits exécutée dans VMware sur Windows XP 32 bits. Tant que vous définissez l’invité pour utiliser deux processeurs, cela fonctionnera très bien.

Vous pouvez le faire si votre processeur est un système 64 bits et que l’extension Virtualization Technology (VT) est activée (il peut être désactivé dans le BIOS). Vous ne pouvez pas le faire sur un processeur 32 bits.

Pour vérifier cela sous Linux, il vous suffit de regarder dans le fichier / proc / cpuinfo . Recherchez simplement l’indicateur approprié ( vmx pour processeur Intel ou svm pour processeur AMD)

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

Pour vérifier cela sous Windows, vous devez utiliser un programme comme CPU-Z qui affichera votre architecture de processeur et les extensions sockets en charge.