Co je to hypervisor?
Hypervisor je software nebo firmware, který usnadňuje vytváření a správu virtuálních strojů tím, že abstrahuje hardwarové zdroje fyzického počítače a umožňuje souběžný provoz více operačních systémů. Namísto budování celého systému s hardwarem a operačním systémem vytváří virtualizovanou verzi, která v podstatě simuluje kompletní prostředí PC.
Jak funguje hypervisor?
Při vytváření virtuálního stroje (VM) funguje na základě nevirtuálního, skutečného stroje, jako je například PC. VM je závislý na fyzickém hardwaru. Mezi těmito dvěma úrovněmi proto existuje vrstva odpovědná za správu: hypervisor. Hypervisor je software, který přebírá správu požadovaných zdrojů. Tento program, známý také jako Virtual Machine Monitor (VMM), přiděluje zdroje v rámci systému. Tímto způsobem může na hostitelském systému běžet více různých virtuálních strojů, protože hypervisor zajišťuje, že se navzájem neruší a všechny mají k dispozici potřebné kapacity.
Hypervisor tak vytváří abstrakční vrstvu mezi hardwarem a operačními systémy, které na něm běží. Toho dosahuje rozdělením hardwarových zdrojů do logických jednotek a simulací jedinečného prostředí pro každý virtuální počítač. Virtuální počítače se chovají, jako by běžely přímo na skutečném hardwaru, i když sdílejí zdroje s jinými virtuálními počítači.
Přísné oddělení různých virtuálních strojů nejen zajišťuje dobré rozložení zdrojů, ale také zvyšuje bezpečnost. Hypervisor zajišťuje, že hostovaný systém nemůže přistupovat k souborům jiného hostovaného systému. To je zvláště důležité pro účely testování, aby vadný program nepoškodil ostatní testovací prostředí.
Správa paměti
Při virtualizaci CPU používá hypervisor techniky jako časové rozdělení, aby spravedlivě rozdělil výpočetní výkon mezi virtuální stroje. Moderní procesory mají speciální virtualizační funkce (např. Intel VT-x nebo AMD-V), které podporují hypervisor a snižují režijní náklady.
Paměť (RAM) je spravována pomocí technik stránkování a mapování. Hypervisor přiřazuje adresy virtuální paměti fyzickým blokům paměti, takže každá virtuální stroj vidí pouze svůj vlastní paměťový prostor. Pokud je paměť nedostatečná, může použít mechanismy jako nadměrné přidělení paměti nebo ballooning k efektivnímu rozdělení paměti mezi virtuální stroje.
Správa vstupů/výstupů a zařízení
Virtuální stroje přistupují k hardwarovým zařízením, jako jsou pevné disky, síťové karty nebo grafické karty, prostřednictvím virtuálních rozhraní. Hypervisor emuluje tato zařízení nebo přímo předává požadavky fyzickému hardwaru (pomocí technik Direct-I/O nebo pass-through). Tím je zajištěna rovnováha mezi kompatibilitou a výkonem.
Izolace a bezpečnost
Významnou výhodou virtualizace je izolace mezi virtuálními stroji. Každý virtuální stroj pracuje ve svém vlastním prostředí, takže chyby nebo útoky v jednom virtuálním stroji nemají přímý dopad na ostatní virtuální stroje nebo hostitelský systém. Hypervisor využívá různé bezpečnostní mechanismy k zajištění přísného oddělení, včetně ochrany paměti, řízení přístupu a technik sandboxingu.
Různé typy monitorů virtuálních strojů
Existují dva různé typy monitorů virtuálních strojů: hypervisory typu 1 a typu 2. Každý z nich má své specifické výhody. První z nich je také starší verzí. Virtualizace pomocí této technologie se používala již v 60. letech 20. století.
Hypervisor typu 1
První typ hypervisoru se nazývá bare-metal hypervisor nebo nativní hypervisor. Tento druh VMM se instaluje přímo na fyzický hardware, čímž obchází operační systém hostitele. V důsledku toho musí obsahovat všechny potřebné ovladače zařízení. Spotřeba zdrojů u hypervisoru typu 1 je relativně nízká, protože výpočetní výkon nemusí procházet operačním systémem hostitele. Tento typ hypervisoru je primárně určen pro uživatele, kteří chtějí nastavit virtualizační server. Pro menší domácí projekty je však hypervisor typu 1 příliš složitý.

Hypervisor typu 2
Druhá varianta (známá také jako hostovaný hypervisor) vyžaduje existující operační systém, který je postaven na fyzickém hardwaru. Hypervisor typu 2 se instaluje stejně jako jakýkoli jiný program. VMM pak spravuje virtualizaci. Ovladače zařízení není nutné instalovat do hypervisoru, protože je skutečný operační systém může jednoduše předat softwaru. Tato výhoda však má za následek snížení výkonu. Významnou část zdrojů již spotřebovává operační systém hostitele. Díky snadné instalaci a konfiguraci jsou hypervisory typu 2 ideální pro menší projekty.
