QEMU

QEMU
Logo
(c) Benoît Canet, CC BY 3.0
QEMU se svobodným operačním systémem ReactOS
QEMU se svobodným operačním systémem ReactOS
VývojářQEMU tým: Peter Maydell a kol.
Aktuální verze8.2.0 (19. prosince 2023)
Operační systémGNU/Linux, MS Windows, macOS
PlatformaIA-32, x86-64, MIPS, ARM 6, 7 (32bit) a 8 (64bit), RISC-V, SPARC, PA-RISC, PReP a další
Vyvíjeno vC
Typ softwaruhypervizor
LicenceGNU GPLv2
Webqemu.org
Některá data mohou pocházet z datové položky.

QEMU (zkratka pro Quick EMUlator [ˌkwik ˈemjuˌleitə(r)]) je otevřený hostovaný hypervizor a emulátor poskytující hardwarovou a softwarovou virtualizaci.

Program QEMU vytváří v počítači virtuální stroj, který emuluje CPU pomocí dynamického binárního překladu a poskytuje množinu modelů zařízení, umožňujících běh širokého spektra operačních systémů. Také podporuje některé akcelerované režimy pro podporu různých binárních překladů (pro kód jádra operačního systému) a přímé (hardwarové) provádění procesorem (pro kód ostatní), stejně jako VMware Workstation a VirtualBox. QEMU může být použit pro čistě nativní emulaci procesů (programů) v uživatelském režimu, umožňující programům na jednom počítačovém operačním systému kompilovat programy pro jiný systém. Například programování se děje na počítači s Linuxem, ale QEMU umožní testování výsledného programu pro jiný systém a naopak.

Pro ukládání diskových obrazů používá QEMU vlastní formáty qcow/qcow2.

Architektura

uživatelský prostor
Linux
ovladače
uživatelský prostor
Windows
ovladače
uživatelský prostor
Linux
ovladače
uživatelský prostor
macOS
ovladače
uživatelský prostor
Solaris
ovladače
QEMU x86QEMU x86QEMU PPCQEMU PPCQEMU SPARC
Hostitelský systém : Linux, macOS, Windows
Hardware : CPU, operační paměť, vnější paměť (úložiště), síťový hardware, atd.

Hardwarem podporovaná emulace

MIPS kompatibilní procesor Loongson 3 (architektura RISC) přidává 200 nových instrukcí jako pomoc pro překlad x86 instrukcí pomocí QEMU; tyto nové instrukce rozšiřují úzké hrdlo při provádění x86/CISC-ových instrukcí v MIPS pipeline. S těmito přídavnými instrukcemi v QEMU je Loongson 3 schopný zachovat v průměru 70 % nativního výkonu při běhu x86 programů reprezentovanými devíti benchmarky.[1]

Verze QEMU 2.1

Tato verze QEMU umožňuje plné využití 64bitových schopností procesorů ARM s novou architekturou AArch64.

Verze QEMU 2.3

27. dubna 2015 byla vydána verze QEMU 2.3, která přináší podporu KVMs 32bitových hostů na architektuře ARM AArch64.[2][3]

Paralelní emulace

Virtualizační řešení, která využívají QEMU, jsou schopná provádět několik virtuálních CPU paralelně. QEMU také je schopno provádět několik vláken souběžně v uživatelském, emulačním módu.

Pro emulaci celého systému, včetně kódu jádra operačního systému, QEMU používá jedno vlákno pro emulování všech virtuálních CPU a hardware. COREMU[4] je záplata (patch [pæč]) pro odstranění tohoto omezení QEMU. Každé jádro používá oddělenou instanci QEMU binárního překládacího stroje, s tenkým knihovním rámcem (frameworkem) pro řízení mezijádrové a mezihardwarové komunikace a synchronizace.

Odkazy

Reference

  1. Weiwu Hu; Jian Wang; Xiang Gao; Yunji Chen; Qi Liu; Guojie Li. Godson-3: A Scalable Multicore RISC Processor with x86 Emulation. S. 17–29. CSDL Home » IEEE Micro » 2009 vol. 29 » Issue No. 02 - March/April. IEEE Computer society [online]. IEEE, březen/duben 2009 [cit. 2018-08-17]. Svazek 29, čís. 02, s. 17–29. Dostupné online. ISSN 0272-1732. (anglicky) 
  2. STRNAD, Michal. Emulátor QEMU 2.3. Nástroje a utility. Root.cz [online]. Internet Info, s.r.o., 28. duben 2015 [cit. 2018-08-17]. Dostupné online. ISSN 1212-8309. 
  3. lists.nongnu.org. [Qemu-devel] [ANNOUNCE] QEMU 3.0.0 is now available [online]. Free Software Foundation, Inc., 2018-08-14 [cit. 2018-08-17]. Dostupné online. (anglicky) 
  4. COREMU download [online]. Home / Browse. Slashdot Media, rev. 2016-11-29 [cit. 2018-08-17]. Dostupné online. (anglicky) 

Související články

Externí odkazy

Externí patche

Média použitá na této stránce

Qemu linux.png
Autor: nurnware, Licence: GPL
QEMU on Linux running the ReactOS Operating System.
Qemu logo.svg
(c) Benoît Canet, CC BY 3.0
QEMU mascot