VirtualBox: differenze tra le versioni

Contenuto cancellato Contenuto aggiunto
Genere
LRKalle (discussione | contributi)
Aggiunto materiale alla descrizione.
Riga 5:
|Didascalia = VirtualBox in esecuzione su [[Ubuntu]]
|Sviluppatore = [[Oracle Corporation]]<br /><small>In precedenza: [[Sun Microsystems]]</small>
|UltimaVersione = 6.01.146
|DataUltimaVersione = 1514 ottobreaprile 20192020
|SistemaOperativo = Microsoft Windows
|SistemaOperativo2 = gnu/linux
Riga 15:
|Lingua = Multilingua
|SoftwareLibero = sì
|SitoWeb = https://www.virtualbox.org
}}
'''Oracle VM VirtualBox''' (precedentemente noto come '''Sun VirtualBox''', '''Sun xVM VirtualBox''' e '''Innotek VirtualBox'''), è un [[software]] gratuito e [[open source]] per l'[[esecuzione (informatica)|esecuzione]] di [[macchine virtuali]] (con una versione ridotta distribuita secondo i termini della [[GNU General Public License]]) per [[architettura]] [[x86]] e 64bit che supporta [[Windows]], [[GNU/Linux]] e [[macOS]] come [[sistema operativo|sistemi operativi]] host, ed è in grado di eseguire [[Windows]], [[GNU/Linux]], [[OS/2|OS/2 Warp]], BSD come ad esempio [[OpenBSD]], [[FreeBSD]] e infine [[Solaris]] e [[OpenSolaris]] come sistemi operativi guest.<ref>{{cita web|url=https://www.virtualbox.org/wiki/Guest_OSes|titolo=Status: Guest OSes|lingua=en|accesso=11 aprile 2014}}</ref>
Riga 27:
 
== Descrizione ==
Con VirtualBox l'utente può configurare, creare e usare più sistemi operativi, detti "ospiti" o "guest", nel proprio PC usando un solo sistema operativo (host) nelle cosiddette "macchine virtuali". Ciascuna macchina virtuale può essere configurata in modo indipendente, scegliendo quale hardware e periferiche configurare. E' anche possibile scegliere quanti dei core del [[processore]] dell'host allocare al funzionamento di ciacsuna macchina virtuale, la porzione di memoria RAM presente nel sistema host, quali cartelle condividere tra l'host e la macchina virtuale (installando il pacchetto proprietario ''VirtualBox Extensions'') e altro.
Supporta la soluzione per la virtualizzazione [[hardware]] di [[Intel]] [[Virtualizzazione x86#Intel VT-x|VT-x]] e la soluzione di [[AMD]], [[Virtualizzazione x86#AMD virtualization (AMD-V)|AMD-V]].<ref>{{cita web|url=https://www.virtualbox.org/wiki/Developer_FAQ|titolo=Domande frequenti dello sviluppatore|lingua=en|accesso=11 aprile 2014}}</ref>
 
Ciascuna macchina virtuale può essere avviata, fermata o chiusa le in modo indipendente. Un'intera applicazione virtuale e il suo stato al momento dello spegnimento può essere esportata (salvata) su file. Un [[file]] di macchina virtuale può essere caricato ed eseguito in altre macchine host anche se hanno sistemi operativi differenti di quello dove è stata creata.
Tenta di eseguire quanto più codice guest possibile in maniera nativa (vale a dire sul processore host). Questo va bene per il codice in modalità utente che funziona nel "ring 3" (nel contesto dell'architettura ring di Intel). Tuttavia, il codice "[[Ring 0 (Intel)|ring 0]]" del sistema guest, che contiene di solito decine di [[istruzione (informatica)|istruzioni]] privilegiate, dovrà essere gestito in modo particolare. VirtualBox usa un approccio abbastanza inconsueto per risolvere il problema: convince il sistema operativo guest ad eseguire il codice ring 0 nel "ring 1", normalmente non utilizzato sull'architettura Intel.
 
TentaVirtualBox supporta la soluzione per la virtualizzazione [[hardware]] di [[Intel]] [[Virtualizzazione x86#Intel VT-x|VT-x]] e la soluzione di [[AMD]], [[Virtualizzazione x86#AMD virtualization (AMD-V)|AMD-V]].<ref>{{cita web|url=https://www.virtualbox.org/wiki/Developer_FAQ|titolo=Domande frequenti dello sviluppatore|lingua=en|accesso=11 aprile 2014}}</ref> Ovvero, tenta di eseguire quanto più codice guest possibile in maniera nativa (vale a dire sul processore host). Questo va bene per il codice in modalità utente che funziona nel "ring 3" (nel contesto dell'architettura ring di [[Intel]]). Tuttavia, il codice "[[Ring 0 (Intel)|ring 0]]" del sistema guest, che contiene di solito decine di [[istruzione (informatica)|istruzioni]] privilegiate, dovrà essere gestito in modo particolare. VirtualBox usa un approccio abbastanza inconsueto per risolvere il problema: convince il sistema operativo guest ad eseguire il codice ring 0 nel "ring 1", normalmente non utilizzato sull'architettura Intel.
Se dovessero sorgere problemi, VirtualBox ha un [[Ricompilazione dinamica|ricompilatore dinamico]], come gli altri software di virtualizzazione. Il ricompilatore di VirtualBox si basa su [[QEMU]]. Inoltre, VirtualBox disassembla e, in alcuni casi, aggiunge delle patch al codice guest per evitare [[ricompilazione|ricompilazioni]] future, dal momento che sono abbastanza onerose.<ref>{{cita web|url=https://www.virtualbox.org/manual/ch10.html|titolo=Manuale: Sezione tecnica|lingua=en|accesso=11 aprile 2014}}</ref> In questo modo, sia il codice a ring 3 che quello a ring 0 può essere eseguito in maniera nativa nella maggior parte delle occasioni, e con questa combinazione di ricompilazione "tradizionale" e [[patch (informatica)|patch]] per il codice VirtualBox raggiunge una velocità simile a quella di [[VMware Workstation]].<ref>{{cita web|url=https://www.heise.de/open/artikel/83678|titolo=Risultati del test effettuato dal sito web heise.de dopo il rilascio dell'edizione open source|data=15 gennaio 2007|lingua=de|accesso=11 aprile 2014}}</ref>
 
Se dovessero sorgere problemi di compatibilità, VirtualBox hadispone di un [[Ricompilazione dinamica|ricompilatore dinamico]], come gli altri software di virtualizzazione, per codice reale o protetto. Il ricompilatore di VirtualBox si basa su [[QEMU]]. Inoltre, VirtualBox disassembla e, in alcuni casi, aggiunge delle patch al codice guest per evitare [[ricompilazione|ricompilazioni]] future, dal momento che sono abbastanza onerose.<ref>{{cita web|url=https://www.virtualbox.org/manual/ch10.html|titolo=Manuale: Sezione tecnica|lingua=en|accesso=11 aprile 2014}}</ref> In questo modo, sia il codice a ring 3 che quello a ring 0 può essere eseguito in maniera nativa nella maggior parte delle occasioni, e con questa combinazione di ricompilazione "tradizionale" e [[patch (informatica)|patch]] per il codice VirtualBox raggiunge una velocità simile a quella di [[VMware Workstation]].<ref>{{cita web|url=https://www.heise.de/open/artikel/83678|titolo=Risultati del test effettuato dal sito web heise.de dopo il rilascio dell'edizione open source|data=15 gennaio 2007|lingua=de|accesso=11 aprile 2014}}</ref>
 
=== Dischi virtuali ===
Per la creazione, lettura e scrittura di device virtuali il programma supporta i seguenti formati: VDI, [[VMDK]] e [[VHD (formato di file)|VHD]].
 
* VDI: formato nativo di VirtualBox, dove il disco è rappresentato da un file con suffisso .vdi;
* [[VMDK]]: formato di tipo [[open source]] usato anche da [[VMware Workstation|VMWare]], dove il disco può essere rappresentato da uno o più file differenti con suffisso .vmdk;
* [[VHD (formato di file)|VHD]]: formato usato da Windows [[Windows Virtual PC|VirtualPC]] e [[Hyper-V|HyperV]] di [[Microsoft]], nativo per dischi virtuali sin da [[Windows 7]] e [[Windows Server 2008 R2]], dove il disco è rappresentato da un solo file con suffisso .vhd;
 
=== Hardware supportato ===
Line 47 ⟶ 53:
** Intel PRO/1000 T Server (82543GC);
** Intel PRO/1000 MT Server (82545EM).
**Rete paravirtualizzata (virtio-net).
* Come [[scheda audio]], VirtualBox mette a disposizione una periferica Intel ICH AC'97, Intel HD oppureAudio unae [[Sound Blaster|SoundBlaster 16]].
* USB: [[installazione (informatica)|installando]] il [[pacchetto (software)|pacchetto]] proprietario di estensioni per VirtualBox, viene emulato un [[controller (informatica)|controller]] USB, così che qualunque periferica USB collegata al sistema host possa essere vista dal guest. Se VirtualBox svolge il ruolo di [[server]] [[RDP]], può anche utilizzare periferiche USB connesse al [[client]] RDP remoto come se fossero connesse all'host.