QEMU
From Wikipedia, the free encyclopedia
Remove ads
QEMU (zkratka pro Quick EMUlator [ˌkwik ˈemjuˌleitə(r)]) je otevřený hostovaný hypervizor a emulátor poskytující hardwarovou a softwarovou virtualizaci.
Remove ads
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.
Remove ads
Architektura
|
|
|
|
| |||||||||||||||
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. |
Remove ads
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]
Remove ads
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 a REEMU
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.
REEMU je vylepšením předchozího COREMU frameworku, který používá odlišný softwarový algoritmus, než COREMU[5][6]. 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.[7]
Remove ads
Odkazy
Wikiwand - on
Seamless Wikipedia browsing. On steroids.
Remove ads