VirtualBox
Allgemeines | |
---|---|
Name: | VirtualBox |
Entwickler: | Oracle (ehemals Innotek & Sun) |
Akt. Version: | 4.1.2 (Stand 19.09.2011) |
Lizenz: | GPL 2, Proprietär (Extension Packs) |
Betriebssystem(e): | Linux, Windows, OS X, Solaris |
Virtualisiertes System | |
Plattform: | x86, x86-64 |
SMP: | bis zu 255 Prozessoren |
Mechanismus: | dynamische Übersetzung, Hardwareunterstützung |
Homepage | |
VirtualBox ist ein x86-Emulator für x86-Systeme. Ursprünglich entwickelt von innotek, kaufte Sun das Programm auf, stellte zugleich aber eine der beiden Versionen als OpenSource-Software frei zur Verfügung. Diese Duale Lizenzierung wurde auch nach der Übernahme durch Oracle weitergeführt, zur Veröffenlichung von Version 4.0 jedoch umgestelt: Es existiert nun nur noch die Open-Source-Version, die propietären Erweiterungen werden als Extension Pack angeboten. Das Besondere an VirtualBox ist sicherlich die ausgereifte grafische Benutzerschnittstelle, die die Bedienung weitaus einfacher macht.
Inhaltsverzeichnis
Besondere Features
- iSCSI für Blockgeräte
- Fernsteuerung der VM via RDP, inklusive Support für USB über RDP
- Gastunterstützung, um unter offiziell unterstützen Betriebssystemen Geschwindigkeitsvorteile und weitere Features anbieten zu können.
- OpenGL-Unterstützung (derzeit nur für die 32-Bit-Versionen von Windows XP und Windows Vista sowie Linux und Solaris)
- Experimenteller Support für EFI (Extensible Firmware Interface)
- Debugger
Befehlssatzerweiterungen für Gäste:
- PAE/NX (falls vom Host unterstützt)
Emulierte Hardware
- ACPI, inklusive ACPI Power Status (mit Anbindung an Host)
- I/O_APIC
- VGA- und VBE-kompatible Grafikkarte
- Floppy
- IDE Controller:
- PIIX3
- PIIX4
- ICH6
- SATA AHCI Controller Intel ICH8M/ICH8M-E
- Soundkarten
- AC'97 Audio (Intel)
- SoundBlaster 16
- Intel HD Audio
- Netzwerkkarten:
- PCnet FAST III
- PCnet-PCI II
- Intel PRO/1000 MT Desktop
- Intel PRO/1000 T Server
- USB-Controller:
- Serielle Schnittstellen (max. 2)
Debugger
Seit einiger Zeit bietet VirtualBox einen integrierten Debugger, der Informationen zum Zustand der VM, der emulierten CPU und der emulierten Geräte ausgeben kann. Weiterhin werden Breakpoints unterstützt sowie die schrittweise Ausführung des Codes ermöglicht. Im Folgenden soll kurz dargestellt werden, wie diese (versteckte) Funktion aktiviert wird, was sie bringt und wie man sie nutzt.
Den Debugger aktivieren und starten
Oracle hat den Debugger - mit der Begründung, er sei nur für "advanced users" geeignet - gut versteckt, denn standardmäßig ist er nicht aktiviert und seine Existenz ist über die GUI auch nicht zu erkennen. Es gibt 3 Wege, diesen zu aktivieren:
- In der Konfigurationsdatei von VirtualBox (Unter Windows zu finden unter C:/Benutzer/<Benutzer>/.VirtualBox/VirtualBox.xml (Windows 7) bzw. C:/Dokumente und Einstellungen/<Benutzer>/.VirtualBox (Windows XP)) zum Knoten "VirtualBox/Global/ExtraData" dies hinzufügen:
<ExtraDataItem name="GUI/Dbg/Enabled" value="true"/>
VBox muss neu gestartet werden, damit die Änderung übernommen wird. - Die Umgebungsvariable VBOX_GUI_DBG_ENABLED oder VBOX_GUI_DBG_AUTO_SHOW auf true setzen, bevor VBox gestartet wird
- VirtualBox mit den Kommandozeilenparametern --dbg, --debug, oder --debug-command-line starten
Anschließend kann der Debugger aus der laufenden VM gestartet werden. In der laufenden Maschine sollte der Menüpunkt "Debug" hinzugekommen sein.
Benutzung
Wenn man im Menü "Debug" den Unterpunkt "Kommandozeile" wählt, erhält man dann eine Konsole, über die die weitere Steuerung des Debuggers hauptsächlich erfolgt.
Informationen beschaffen
Die wichtigsten Befehle der Kommandozeile, um Infos über das System zu erhalten:
Befehl | Wirkung |
---|---|
r | Gibt den Inhalt der Register der CPU aus |
u | Disassembliert den Code, der als nächstes ausgeführt wird |
k | Gibt einen Stacktrace aus |
dg | GDT |
di | IDT |
dl | LDT |
dt | TSS |
da/db/dw/dd/dq | Gibt den Speicher an der angegebenen Addresse aus, als ASCII-Text, in Bytes/Words/Doublewords/Quadwords |
info <arg> | Gibt Infos zum angegebenen Gerät aus. Übersicht über diese Geräte: info help. Beispiele: pcnet0, pit, pic, ohci, ehci, vbe, ioport, ... |
Log
Hinter dem Menüelement "Zeige Log" verbirgt sich ein Fenster, dessen erste Registerkarte ein Log enthält, dass dem von Bochs ähnelt. Es enthält beispielsweise Fehlermeldungen und Statusänderungen der von VirtualBox emulierten Geräte.
Breakpoints
Folgende Informationen fehlen dem Artikel an dieser Stelle:
Hilf Lowlevel, den Artikel zu verbessern. |