Virtualbox 3d acceleration: Difference between revisions
No edit summary |
No edit summary |
||
| Line 10: | Line 10: | ||
Nel corso dell'articolo vedremo come '''abilitare l'accelerazione grafica 3-D''' per una macchina virtuale su cui sia installata una distribuzione Slackware Linux. | |||
Virtualbox è un prodotto di virtualizzazione: un programma in grado di creare Pc virtuali su cui installare un sistema operativo e far girare programmi come se si trattasse di macchine reali. Tra le molte caratteristiche che Virtualbox emula vi è l'accelerazione 3-D; aggiunta ufficialmente con la versione 2.x del programma. | |||
Dato un sistema ospite '''dotato dell'opportuno hardware''', il sistema virtuale ospitato | Dato un sistema ospite '''dotato dell'opportuno hardware''', il sistema virtuale ospitato "opportunamente configurato" può usufruire dell'accelerazione grafica hardware. | ||
Si supponga di utilizzare il pacchetto ufficiale di Virtualbox scaricato dal sito: | Si supponga di utilizzare il pacchetto ufficiale di Virtualbox scaricato dal sito: | ||
http://www.virtualbox.org/wiki/Downloads | http://www.virtualbox.org/wiki/Downloads | ||
Si supponga inoltre di aver installato il software sul sistema ospite ed aver creato una macchina Linux virtuale. Sulla macchina virtuale è stato installato un sistema operativo Linux Slackware versione 13.1: l'ultima release stabile. Per abilitare l'accelerazione 3-D è necessario eseguire le seguenti operazioni: | |||
== Abilitare la funzionalità nella configurazione della macchina. == | == Abilitare la funzionalità nella configurazione della macchina. == | ||
Aperta la console di Virtualbox si selezioni la macchina desiderata e si apra la finestra delle opzioni mediante click del mouse sul pulsante Settings. Nella maschera cos | Aperta la console di Virtualbox si selezioni la macchina desiderata e si apra la finestra delle opzioni mediante click del mouse sul pulsante Settings. Nella maschera così aperta si selezioni l'opzione Display ed infine si spunti l'opzione "Enable 3D Acceleration". | ||
== Installare le Guest Addin == | == Installare le Guest Addin == | ||
Avviata la macchina virtuale, si apra il men | Avviata la macchina virtuale, si apra il menù Devices e si selezioni l'opzione Devices->CD/DVD Devices->VboxGuestAdditions.iso. | ||
Dopo essersi collegati come '''utente root''' sul sistema si esegua il mount del cdrom tramite il comando: | Dopo essersi collegati come '''utente root''' sul sistema si esegua il mount del cdrom tramite il comando: | ||
root@darkstar04:~# mount /mnt/cdrom | root@darkstar04:~# mount /mnt/cdrom | ||
| Line 52: | Line 52: | ||
root@darkstar04:~# bash ./VBoxLinuxAdditions-x86.run | root@darkstar04:~# bash ./VBoxLinuxAdditions-x86.run | ||
Il programma di installazione provveder | Il programma di installazione provvederà a compliare ed installare i moduli necessari rendendo a video un eloquente resoconto delle operazioni eseguite. | ||
Terminata l'installazione si provi a lanciare una sessione grafica. La versione di X distribuita con Slackware 13.1 dovrebbe essere in grado di avviarsi senza che sia presente un file /etc/X11/xorg.conf. In caso di problemi si provveda a creare detto file lanciando il comando xorgsetup e rispondendo ad alcune semplici domande. Il comando eseguir | Terminata l'installazione si provi a lanciare una sessione grafica. La versione di X distribuita con Slackware 13.1 dovrebbe essere in grado di avviarsi senza che sia presente un file /etc/X11/xorg.conf. In caso di problemi si provveda a creare detto file lanciando il comando xorgsetup e rispondendo ad alcune semplici domande. Il comando eseguirà una scansione dello hardware e produrrà un file xorg.conf adeguato. | ||
== | == Configurazione della macchina virtuale == | ||
Per alcune distribuzioni Linux, l'esecuzione dei due passi precedenti è sufficiente per abilitare la funzionalità di accelerazione. In Slackware, a causa di una disomogeneità dei percorsi ove vengono installati driver e librerie, bisogna eseguire ancora alcune operazioni. | |||
Per alcune distribuzioni Linux, l'esecuzione dei due passi precedenti | |||
I sintomi del problema sono: | I sintomi del problema sono: | ||
1 – Basso framerate. Lanciato, il programma ''glxgears'' render | 1 – Basso framerate. Lanciato, il programma ''glxgears'' renderà un frame rare di circa 300 frame al secondo. Un valore decisamente basso che evidenzia l'impiego di un driver software e non dell'accelerazione hardware. | ||
2 – Il file di log della sessione X, /var/log/X.log.x ove x è un numero compreso tra 0 e 9 che indica la sessione grafica aperta, riporter | 2 – Il file di log della sessione X, /var/log/X.log.x ove x è un numero compreso tra 0 e 9 che indica la sessione grafica aperta, riporterà stringhe di errore simili a: | ||
(EE) AIGLX error: dlopen of /usr/lib/xorg/modules/dri/vboxvideo_dri.so failed (/usr/lib/xorg/modules/dri/vboxvideo_dri.so: cannot open shared | (EE) AIGLX error: dlopen of /usr/lib/xorg/modules/dri/vboxvideo_dri.so failed (/usr/lib/xorg/modules/dri/vboxvideo_dri.so: cannot open shared | ||
object file: No such file or directory) | object file: No such file or directory) | ||
(EE) AIGLX: reverting to software rendering | (EE) AIGLX: reverting to software rendering | ||
Il messaggio specifica che non essendo stato trovato il driver opportuno il sistema far | Il messaggio specifica che non essendo stato trovato il driver opportuno il sistema farà ricorso al rendering software. | ||
Per ovviare al problema devono essere creati due collegamenti in modo che Virtualbox possa trovare i driver necessari. Si eseguano i seguenti comandi: | Per ovviare al problema devono essere creati due collegamenti in modo che Virtualbox possa trovare i driver necessari. Si eseguano i seguenti comandi: | ||
ln -s /usr/lib/xorg/modules/dri /usr/lib/dri | ln -s /usr/lib/xorg/modules/dri /usr/lib/dri | ||
| Line 75: | Line 74: | ||
Si riavvii quindi il server X. | Si riavvii quindi il server X. | ||
Si potr | Si potrà subito constatare un miglioramento nel frame rate che dovrebbe ora aggirarsi sui 1500 frame al secondo. | ||
Il log file della sessione conterr | Il log file della sessione conterrà ora le stringhe: | ||
(EE) AIGLX error: vboxvideo does not export required DRI extension | (EE) AIGLX error: vboxvideo does not export required DRI extension | ||
(EE) AIGLX: reverting to software rendering | (EE) AIGLX: reverting to software rendering | ||
| Line 90: | Line 89: | ||
KERNEL=="vboxguest", NAME="vboxguest", OWNER="root", MODE="0660" | KERNEL=="vboxguest", NAME="vboxguest", OWNER="root", MODE="0660" | ||
KERNEL=="vboxuser", NAME="vboxuser", OWNER="root", MODE="0666" | KERNEL=="vboxuser", NAME="vboxuser", OWNER="root", MODE="0666" | ||
nel caso il file non sia presente lo si dovr | nel caso il file non sia presente lo si dovrà creare e popolare con le righe riportare sopra. | ||
Per commenti, consigli, domande inviate una e-mail all'indirizzo ''studiosg [chiocciola] giustetti [punto] net''. | |||