QEMU
QEMU se svobodným operačním systémem ReactOS | |
| Vývojář | QEMU tým: Peter Maydell a kol. |
|---|---|
| Aktuální verze | 11.1.3 (29. října 2026) |
| Operační systém | GNU/Linux, MS Windows, macOS |
| Platforma | IA-32, x86-64, MIPS, ARM 6, 7 (32bit) a 8 (64bit), RISC-V, SPARC, PA-RISC, PReP a další |
| Vyvíjeno v | C |
| Typ softwaru | hypervizor |
| Licence | GNU GPLv2 |
| Web | qemu.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.[1]
Pro ukládání diskových obrazů používá QEMU vlastní formáty qcow/qcow2.
Architektura
[editovat | editovat zdroj]
|
|
|
|
| |||||||||||||||
| QEMU x86 | QEMU x86 | QEMU PPC | QEMU PPC | QEMU 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
[editovat | editovat zdroj]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.[2]
Paralelní emulace
[editovat | editovat zdroj]Virtualizační řešení, která používají QEMU, mohou paralelně spouštět více virtuálních CPU. Pro emulaci v uživatelském režimu QEMU mapuje emulované vlákna na hostitelská vlákna. QEMU může pro plnohodnotnou systémovou emulaci spustit pro každý emulovaný virtuální procesor (vCPU) jedno hostitelské vlákno. To závisí na tom, zda je hostovaný systém aktualizován tak, aby podporoval paralelní systémovou emulaci — v současnosti ARM, Alpha, HP-PA, PowerPC, RISC-V, s390x, x86 a Xtensa. Jinak se pro emulaci všech virtuálních procesorů (vCPU) používá jediné vlákno, které spouští každou vCPU kruhovým způsobem (round-robin).
COREMU a REEMU
[editovat | editovat zdroj]COREMU[3] 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.
REEMU je vylepšením předchozího COREMU frameworku, který používá odlišný softwarový algoritmus, než COREMU[4][5]. Zavádí schopnost deterministického chování emulátoru celého systému. Přináší nový, efektivní a škálovatelný algoritmus. Na rozdíl od sekvenčních emulátorů je REEMU vhodný i pro testování výkonnostních parametrů vícethreadového software.[6]
Odkazy
[editovat | editovat zdroj]Reference
[editovat | editovat zdroj]V tomto článku byl použit překlad textu z článku QEMU na anglické Wikipedii.
- ↑ 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)
- ↑ 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)
- ↑ COREMU download [online]. Home / Browse. Slashdot Media, rev. 2016-11-29 [cit. 2018-08-17]. Dostupné online. (anglicky)
- ↑ CHEN, Haibo. Scalable Deterministic Replay in a Parallel Full-system Emulator [online]. Institute of parallel and distributed systems (IPADS). Dostupné online.
- ↑ http://sourceforge.net/p/coremu/qemu/ci/reemu/ ReEmu on SourceForge
- ↑ Scalable Deterministic Replay in a Parallel Full-system Emulator [online]. [cit. 2025-01-17]. Dostupné online. (anglicky)
Související články
[editovat | editovat zdroj]Externí odkazy
[editovat | editovat zdroj]
Obrázky, zvuky či videa k tématu QEMU na Wikimedia Commons - (česky) JEŽEK, David. QEMU 11.0 přináší vylepšení řady architektur a konec 32bitových hostitelů. Root.cz [online]. [cit. 2026-04-22]. Dostupné online.
- (česky) KRČMÁŘ, Petr. QEMU 8.2 přináší nová virtuální zařízení a vylepšuje podporu RISC-V. Root.cz [online]. [cit. 2023-12-24]. Dostupné online.
- (česky) QEMU 7.0 přichází s podporou Intel AMX a vylepšeními pro RISC-V – článek na Root.cz
- (česky) QEMU návod na virtualizaci OS – návod, který opravdu funguje (qemu-system-i386, qemu-img)
- (česky) QEMU na Root.cz
- (česky) QEMU pro klikače – článek na www.abclinuxu.cz
- (česky) Projekt qboot: miniaturní systém nastartuje QEMU za 40 milisekund – šikovná utilitka pro QEMU
Externí patche
[editovat | editovat zdroj]- (anglicky) Zilog Z80: Zilog Z80 pro emulaci Sinclair ZX Spectrum 48K
- (anglicky) HP PA-RISC: QEMU links