QEMU

From DCEwiki
Jump to navigation Jump to search

QEMU bylo původně navrženo jako virtualizační nástroj, který umí emulovat nejenom hardwarové vybavení virtuálního stroje, ale také architekturu virtuálního procesoru. To je sice výhodné z hlediska vývojářů, neboť tak mají možnost vyvíjet a testovat software v izolovaném prostředí virtuálního stroje, ale velmi náročné na výkon hostitelského stroje. Oproti nativnímu prostředí hostitele je totiž zpomalení virtuálu 5 až 10 násobné. Proto původní vývojář QEMU - Fabrice Bellard - vyvíjel také jaderný modul kqemu, s nímž bylo zpomalení pouze poloviční, ovšem ten na rozdíl od QEMU nebyl open source.

Paralelně s kqemu byl po jistou dobu vyvíjen také alternativní jaderný modul qvm86, ale jeho vývoj umřel r. 2005. Oficiálně jeho vývoj skončil poté, co v lednu 2007 firma SUN uvolnila pod GPL2 licencí VirtualBox Open Source Edition (OSE). Fabrice Bellard na tuto akci reagoval tím, že v únoru 2007 uvolnil jako open source i svůj modul kqemu. Ovšem od QEMU verze 0.12.0 (uvolněné v srpnu 2009) je tento modul nepoužitelný, neboť jeho fungování je neslučitelné s možností mapování velkého množství paměti. A tak byl jeho další vývoj ukončen. V té době se však začaly začaly masově šířit stroje s podporou virtualizace přímo v procesoru.

Aby bylo možné této možnosti virtualizace využít, musel být vytvořen v linuxovém jádře tzv. hypervizor - což je vlastně jaderný modul kvm (Kernel-based Virtual Machine). Virtualizace procesoru ale sama o sobě nestačí, protože virtuální stroje se musí dělit o další fyzický hardware - bloková zařízení, síťové karty aj. A to byl okamžik, kdy se využilo možností QEMU a tak se tento nástroj od verze O.10.1 začal pozvolna měnit z pouhého emulátoru v administrační nástroj pro hypervizory. Nejprve pro hypervizor KVM a posléze (od verze 0.11.0) i pro hypervizor XEN. Využilo se takjeho rozvinutých možností řízení a monitorování virtuálního stroje, a především toho, že bylo schopné emulovat reálný hardware, který zatím nebylo možné virtualizovat na nižší úrovni. QEMU v kombinaci s KVM se pozvolna stává vážnou konkurencí vůči komerčním virtualizačním nástrojům.