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

Si può eseguire un emulatore di macchine (Bochs) dentro una macchina virtuale?

È possibile, per esempio, eseguire VirtualBox su Windows 7 con un guest Linux, e all'interno di quella macchina Linux eseguire Bochs?

Il motivo è che sono interessato a iniziare lo sviluppo di un sistema operativo, e ho scoperto che tutti i tutorial e le cose sono molto più facili da seguire sulle macchine *nix. Ho provato ad usare Cygwin, ma penso che stia aggiungendo un altro strato di complessità e non necessariamente rendendo le cose più facili.

Risposte (3)

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

Per farla breve: .

Ogni macchina virtuale è tecnicamente “indipendente” l'una dall'altra, e con VirtualBox , si potrebbe facilmente fare questo, dato che è supportato su entrambi i sistemi operativi host Windows e Linux (emulato o no). Si potrebbe semplicemente usare Windows come sistema operativo “base-host”, far girare Linux in una VM, e poi usare questo sistema operativo come nuovo base-host per Bochs.

Notate che la vostra unica limitazione qui è il vostro hardware. A seconda dei requisiti del vostro sviluppo, potreste aver bisogno di più memoria, o di un aggiornamento a un sistema operativo “base-host” a 64 bit. Detto questo, se scegliete saggiamente le vostre distro Linux, qualsiasi sistema moderno dovrebbe essere in grado di fare nesting arbitrario come questo.

Vedrete un miglioramento delle prestazioni se abilitate il supporto alla virtualizzazione x86 sul vostro computer (se la vostra scheda madre e la CPU lo supportano), e AFAIK, potete “passare attraverso” questa caratteristica a più macchine virtuali annidate. Se abbiamo macchine virtuali n annidate l'una nell'altra, questo è supportato fintanto che il sistema operativo guest da 1st a n-1th annidato ha il supporto per la virtualizzazione x86 (anche l'host di base deve supportarlo). Notate che ci sono ancora alcuni problemi di sicurezza di cui essere consapevoli se fate questo, quindi prendete le dovute precauzioni.

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

A chiunque legga questa domanda, veda la risposta accettata, e pensi che questo si applichi anche a VirtualBox, si prega di vedere commento di @superbatfish sulla domanda originale. Fa un buon punto sulla differenza tra virtualizzazione ed emulazione.

Nello specifico, la “VM assistita dall'hardware” non sarà disponibile nel sistema operativo guest “di primo livello” (cioè, al momento di questo scritto, VirtualBox non fornisce VM hardware nei sistemi operativi guest ). Con VirtualBox, questo significa che puoi creare solo sistemi operativi “guest annidati” a 32 bit, anche se il guest di primo livello è a 64 bit e il tuo host “reale” ha la VM hardware.

Potrebbe non essere un problema per te, ma vale la pena notarlo. Ne avevo bisogno per eseguire Vagrant su un guest Ubuntu all'interno di Windows, per testare il ricettario di Chef.

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

, è possibile, dato che il tuo computer è abbastanza potente per gestirlo.

Sulla mia macchina (i7 4770S, 16GB RAM) sono riuscito ad ottenere un livello di VM-ception-ness di 4,5 (l'ultimo si blocca la metà delle volte).

Ho usato VMware Player 12, perché a VirtualBox non piaceva emulare VM-x, ed era molto più lento. In questo momento, sto cercando di far funzionare W2K su XP, ma VMware non si può installare, VirtualBox produce BSOD, quindi sto provando a usare QEMU.

Vedi questo screenshot (uno degli screenshot più belli che abbia mai visto):