Zum Inhalt springen

QEMU

aus Wikipedia, der freien Enzyklopädie
Dies ist eine alte Version dieser Seite, zuletzt bearbeitet am 23. März 2010 um 13:21 Uhr durch 91.64.238.1 (Diskussion) (Das Buch «qemu-kvm & libvirt»). Sie kann sich erheblich von der aktuellen Version unterscheiden.
QEMU

Basisdaten

Entwickler Fabrice Bellard
Aktuelle Version 0.12.3[1]
(23. Februar 2010)
Betriebssystem Windows, GNU/Linux, BSD, Mac OS X, OS/2/eComStation, DR-DOS und FreeDOS mittels HX DOS Extender
Programmier­sprache C[2]
Kategorie Emulation, Virtualisierung
Lizenz GPL/BSD
deutschsprachig nein
www.qemu.org und download.savannah.gnu.org/releases/qemu/

QEMU ist eine freie virtuelle Maschine, die die komplette Hardware eines Computers emuliert und durch die dynamische Übersetzung der Prozessor-Instruktionen für den Gast-Prozessor in Instruktionen für den Host-Prozessor eine sehr gute Ausführungsgeschwindigkeit erreicht.

QEMU emuliert derzeit Systeme mit den folgenden Prozessorarchitekturen: x86, AMD64 und x86-64, PowerPC, ARM, Alpha, m68k (Coldfire), MIPS und Sparc32/64.

QEMU ist auf den Betriebssystemen GNU/Linux, Windows, FreeBSD, NetBSD, OpenBSD, OpenSolaris, OS/2/eComStation, DOS und Mac OS X lauffähig, kann den gesamten Status einer virtuellen Maschine speichern und auch ohne die Maschine anzuhalten auf ein anderes Host-System übertragen und dort weiterlaufen lassen (Live-Migration).

Unter Linux, BSD und Mac OS X unterstützt QEMU auch die Userspace-Emulation. Diese API-Emulation ermöglicht es, dass ausführbare Programme, die für andere dynamische Bibliotheken kompiliert wurden, im Userspace betrieben werden können. Dabei werden die Prozessoren x86, PowerPC, ARM, 32-bit MIPS, Sparc32/64 und ColdFire(m68k) unterstützt.

Details

Das Starten von Live-CD- und Boot-Disketten-Abbildern ist problemlos möglich.

Um QEMU unter Windows zu verwenden, sind keine Administratorrechte notwendig. Auf einem USB-Stick lässt sich QEMU so als portable Software verwenden.

Viele Virtualisierungslösungen (Kernel-based Virtual Machine, VirtualBox, Xen, FAUmachine, Win4BSD, Win4Solaris, Win4Lin) nutzen Teile des Source-Codes von QEMU.

Dank der Offenheit des Source-Codes und der Konfiguration mit Startoptionen ist die Entwicklung von Tools für QEMU unproblematisch. Durch QEMU-Manager und AQEMU[3] lässt sich QEMU leicht über eine grafische Benutzeroberfläche bedienen.

Hardware-Plattformen

x86

QEMU mit dem freien Betriebssystem ReactOS

Für virtuelle x86-Maschinen auf x86-Rechnern steht mit kqemu[4] ein Zusatzmodul bereit, das einen erheblichen Geschwindigkeitszuwachs bewirkt. Es wird allerdings von der aktuellen Weiterentwicklung nicht mehr unterstützt, da diese auf KVM fokussiert.[5] Das Beschleuniger-Modul kqemu ist daher nur in QEMU bis Version 0.11 verwendbar.

Weiterer Geschwindigkeitszuwachs kann auf Linux-Hosts durch Verwendung der auf QEMU basierenden Kernel-based Virtual Machine (KVM) erzielt werden. Dafür ist jedoch ein Prozessor mit den Hardware-Virtualisierungstechniken von Intel (Intel VT) oder AMD (AMD-V) erforderlich.

Mittels HX DOS Extender ist QEMU auch in FreeDOS und DR-DOS lauffähig.

Emuliert wird neben dem Hauptprozessor auch:

Das PC-BIOS stammt von Bochs und das VGA-BIOS von Plex86/Bochs.

PowerPC

Als PowerPC-BIOS wird Open Hack'Ware, ein Open-Firmware-kompatibles BIOS, verwendet.

PowerMac

QEMU emuliert die folgenden PowerMac-Peripheriegeräte:

  • UniNorth PCI Bridge
  • PCI-VGA-kompatible Grafikkarte mit VESA Bochs Extensions
  • zwei PMAC-IDE-Interfaces mit Festplatten- und CD-ROM-Unterstützung
  • NE2000-PCI-Adapter
  • Non Volatile RAM
  • VIA-CUDA mit ADB-Tastatur und -Maus

PReP

Die PowerPC Reference Platform (PReP) bezeichnet einen Standard für PowerPC-basierte Computer und soll eine Referenz-Implementation darstellen. PReP wurde bereits von der Common Hardware Reference Platform (CHRP) abgelöst.

QEMU emuliert die folgenden PReP-Peripheriegeräte:

  • PCI Bridge
  • PCI-VGA-kompatible Grafikkarte mit VESA Bochs Extensions
  • zwei IDE-Interfaces mit Festplatten- und CD-ROM-Unterstützung
  • Diskettenlaufwerk
  • NE2000-Netzwerkadapter
  • Serielle Schnittstelle
  • PReP Non Volatile RAM
  • PC-kompatible Tastatur und Maus

Sparc

Sun SPARC-Architektur = (Scalable Processor ARChitecture)

Als BIOS der JavaStation (sun4m-Architektur) wurde bis Version 0.8.1 Proll[6], ein PROM-Ersatz, verwendet, in Version 0.8.2 wurde es durch OpenBIOS ersetzt.

QEMU emuliert die folgenden sun4m-Peripheriegeräte:

  • IOMMU
  • TCX Frame buffer
  • Lance (Am7990) Ethernet
  • Non Volatile RAM M48T08
  • Slave I/O: timers, interrupt controllers, Zilog serial ports

Siehe auch

Wikibooks: QEMU-Anleitung – Lern- und Lehrmaterialien
Commons: QEMU – Album mit Bildern, Videos und Audiodateien

Quellen

  1. Übersicht der QEMU-Versionen
  2. QEMU. Open Hub (abgerufen am 27. Dezember 2009).
  3. AQEMU
  4. kqemu-Anleitung
  5. QEMU Bug #493519: „QEMU 0.12.0-rc1 fehlt die kqemu-Unterstützung“ vom 7. Dezember 2009 (englisch)
  6. Proll BIOS