2011-07-19 17:33:56 +0000 2011-07-19 17:33:56 +0000
82
82

Pouvez-vous faire fonctionner un émulateur de machine (Bochs) dans une machine virtuelle ?

Est-il possible, par exemple, de faire fonctionner VirtualBox sous Windows 7 avec un invité Linux et, à l'intérieur de cette machine Linux, de faire fonctionner Bochs ?

La raison est que je suis intéressé par le développement d'un système d'exploitation, et j'ai trouvé que tous les tutoriels et autres choses sont beaucoup plus faciles à suivre sur les machines *nix. J'ai essayé d'utiliser Cygwin, mais je pense qu'il ajoute une autre couche de complexité et ne rend pas nécessairement les choses plus faciles.

Réponses (3)

63
63
63
2011-07-19 18:49:44 +0000

Pour faire court : **Oui.

Chaque machine virtuelle est techniquement “indépendante” des autres, et avec VirtualBox , vous pourriez facilement le faire, puisqu'elle est prise en charge par les systèmes d'exploitation hôtes Windows et Linux (émulés ou non). Vous pourriez simplement utiliser Windows comme système d'exploitation “hôte de base”, faire tourner Linux dans une machine virtuelle, puis utiliser cette machine comme nouveau système d'exploitation hôte de base pour Bochs.

Notez que votre seule limitation ici est votre matériel. Selon les exigences de votre développement, vous pouvez avoir besoin de plus de mémoire ou d'une mise à niveau vers un système d'exploitation “base-host” 64 bits. Cela étant dit, si vous choisissez vos distributions Linux avec sagesse, tout système moderne devrait être capable d'une imbrication arbitraire comme celle-ci.

Vous constaterez une amélioration des performances si vous activez la prise en charge de la virtualisation x86 sur votre ordinateur (si votre carte mère et votre processeur le prennent en charge), et AFAIK, vous pouvez “passer par” cette fonctionnalité à plusieurs machines virtuelles imbriquées. Si nous avons des machines virtuelles n imbriquées les unes dans les autres, cela est pris en charge tant que le 1st au n-1th OS invité imbriqué a la prise en charge de la virtualisation x86 (l'hôte de base doit également la prendre en charge). Notez qu'il y a encore quelques problèmes de sécurité à prendre en compte si vous faites cela, alors prenez les précautions appropriées.

32
32
32
2014-05-29 16:27:47 +0000

Pour toute personne qui lit cette question, voit la réponse acceptée et pense que cela s'appliquera également à VirtualBox, veuillez consulter commentaire de @superbatfish sur la question originale. Il fait une bonne remarque sur la différence entre la virtualisation et l'émulation.

Plus précisément, la “VM assistée par matériel” ne sera pas disponible dans le système d'exploitation invité “de haut niveau” (c'est-à-dire qu'au moment de la rédaction du présent document, VirtualBox ne fournit pas de VM matérielle dans les systèmes d'exploitation invités ). Avec VirtualBox, cela signifie que vous ne pouvez créer que des OS “invités imbriqués” de 32 bits, même si l'OS invité de niveau supérieur est de 64 bits et que votre “véritable” hôte dispose d'une VM matérielle.

Ce n'est peut-être pas un showstopper pour vous, mais cela vaut la peine d'être noté. J'en avais besoin pour faire tourner Vagrant sur un invité Ubuntu dans Windows, pour tester le livre de cuisine Chef.

-2
-2
-2
2016-11-03 00:46:49 +0000

**Oui, c'est possible, étant donné que votre ordinateur est assez puissant pour le gérer.

Sur ma machine (i7 4770S, 16GB RAM) j'ai réussi à obtenir un niveau de VM-ception-ness de 4.5 (la dernière plante plante plante la moitié du temps).

J'ai utilisé VMware Player 12, car VirtualBox n'aimait pas émuler VM-x, et c'était vraiment plus lent. En ce moment, j'essaie de faire fonctionner W2K sur XP, mais VMware ne peut pas l'installer, VirtualBox produit des BSODs donc j'essaie d'utiliser QEMU.

Voir cette capture d'écran (une des plus belles captures d'écran que j'ai jamais vues) :