{{Infobox Virtualisierungssoftware | Name = QEMU | Version = 1.2.0
(Stand 6.9.2012) | Entwickler = Fabrice Bellard u. a. | Lizenz = GPL (tw. LGPL, BSD) | Systeme = Linux, Windows, OS X, *BSD und andere | Plattform = x86, x86-64, ARM, CRIS, MIPS(64)(el), M68000, PowerPC(64), SH4, Sparc32/64 | SMP = bis zu 255 Prozessoren | Mechanismus = dynamische Übersetzung, KVM (nur Linux), Kernelunterstützung | Homepage = http://wiki.qemu.org/Main_Page }} QEMU ist ein Emulator unter anderem für die Systeme [[Linux]], [[Windows]], MacOS, FreeBSD, OpenBSD und NetBSD. Er emuliert eine Vielzahl von Architekturen. == Emulierte Hardware == === x86 === Auf einem x86-Prozessor werden neben dem Hauptprozessor folgende Komponenten emuliert: * PCI und ISA-System (i440FX host PCI bridge und PIIX3 PCI to ISA bridge) * PS/2-Maus und -Tastatur * Serielle Schnittstelle * Parallele Schnittstelle ==== Massenspeicher ==== * Zwei PCI-ATA-Schnittstellen mit Unterstützung für maximal vier Festplatten-Images * CD-ROM/DVD-Laufwerk über ISO-Abbild oder reales Laufwerk * Diskettenlaufwerk * SATA-Festplatten (AHCI) * SCSI-Festplatten und SCSI-CD-ROM-Laufwerke * virtio-blk (Paravirtualisierte Festplatte) * Unterstützte Dateiformate für Images: Raw, das qemu-eigene Format qcow/qcow2, die Formate von VMware, VirtualBox, Parallels, VirtualPC, Bochs, Knoppix (cloop). Außerdem das Pseudoformat vvfat, das ein Verzeichnis auf dem Hostsystem als FAT-Image im Gast abbildet. ==== Grafikkarte ==== * Cirrus CLGD 5446 PCI VGA-Karte * Standard-VGA-Grafikkarte mit Bochs-VESA-BIOS-Extensions (Hardware Level, inklusive aller Nichtstandardmodi, über einen experimentellen Patch auch mit einer vereinfachten 3D-Beschleunigung per OpenGL) ==== Netzwerkkarte und ein DHCP-Server ==== * NE2000-Netzwerkadapter sowohl für ISA als auch PCI * [[RTL8139|Realtek 8139]] * Intel eepro100 und e1000 * [[AMD PCnet]] * virtio (Paravirtualisiertes Netzwerk) ==== Sound ==== * Systemlautsprecher * Soundblaster 16 * ES1370 PCI * [[AC97]] * Intel HD Audio ==== USB ==== * UHCI-/OHCI-/EHCI- und experimentell auch xHCI-Controller * HID-Geräte: Tastatur, Maus und Grafiktablett * USB-Massenspeicher * USB-Soundkarte * Durchleitung von USB-Geräten des Hosts ==Aktueller Windows-Build== Bereits seit einiger Zeit gibt es keine offiziellen Binärpakete von QEMU mehr, auch nicht für Windows. Aus diesem Grund werden unter Windows oft deutlich veraltete qemu-Versionen verwendet, deren Fehler gerade bei der Betriebssystementwicklung gelegentlich auffallen. Einigermaßen aktuelle inoffizielle Builds für Windows sind zum Beispiel auf http://qemu.weilnetz.de/ zu finden. Ein Build von QEMU 1.2.0 ist ebenfalls auf http://improved-madness.de/venom/qemu_1.2.0.7z zu finden. ==QEMU unter Windows kompilieren== Um QEMU unter Windows zu kompilieren, werden MinGW und eine Reihe Bibliotheken, die man sich selbst zusammensuchen muss, benötigt: * MinGW über den Installer ''mingw-get-inst'' von http://sourceforge.net/projects/mingw/ installieren. * zlib kann anschließend mittels mingw-get install libz installiert werden. * Die aktuelle Version von Python 2.7.x kann von http://www.python.org/download/ heruntergeladen werden. Für das Kompilieren von QEMU sollte Python zumindest vorübergehend mittels z. B. SET PATH=C:\Python27;%PATH% in den Suchpfad eingetragen werden. * Von http://www.gtk.org/download/win32.php die Pakete für GLib und Abhängigkeiten herunterladen und im MinGW-Ordner entpacken: *# pkg-config ("Run-time") *# gettext-runtime ("Run-time") *# GLib ("Run-time" und "Dev") * Die SDL Development Libraries (SDL-devel-1.2.*-mingw32.tar.gz) von http://www.libsdl.org/download-1.2.php herunterladen und in einem beliebigen Verzeichnis entpacken. In diesem Ordner make native ausführen, um SDL im MinGW-Ordner zu installieren. Anschließend kann QEMU wie üblich konfiguriert und gebaut werden, indem die folgenden Befehle im Quelltextverzeichnis von QEMU ausgeführt werden: sh configure --target-list=x86_64-softmmu --prefix=D:/installations/pfad/fuer/qemu make make install Das baut ein QEMU, das für die Emulation von x86-PCs (32-/64-Bit) verwendet werden kann. Wenn der Parameter --target-list weggelassen wird, wird QEMU für alle Architekturen gebaut, was unter Umständen relativ lange dauert. Für eine Auflistung der unterstützten Architekturen sh configure --help ausführen. Hinweise: * Wenn man --prefix beim configure weglässt, wird QEMU in den Programmordner (z. B. C:\Program Files\Qemu) installiert. Dann sind für make install Administratorrechte erforderlich, das heißt die Eingabeaufforderung muss für diesen Vorgang als Administrator gestartet werden. * QEMU gibt unter Windows nur dann etwas auf der Konsole aus, wenn die Umgebungsvariable SDL_STDIO_REDIRECT auf 0 gesetzt ist. Deswegen könnte es sinnvoll sein eine Batch-Datei anzulegen, die SET SDL_STDIO_REDIRECT=0 ausführt. ==Siehe auch== * [[Debugging]] == Weblinks == * [http://www.qemu.org QEMU Homepage] * [http://qemu.weilnetz.de/ QEMU-Binaries für Windows] * [http://www.h7.dion.ne.jp/~qemu-win QEMU unter Windows] * [http://qemu-buch.de/de/index.php/Hauptseite Einführung in QEMU] [[Kategorie:Emulator]] [[en:QEMU]]