Co je hypervisor?
Hypervisor je jedinečný typ softwaru, který umožňuje počítači spouštět více než jeden operační systém (OS). Prostřednictvím procesu známého jako virtualizace software přiměje každý operační systém, aby si myslel, že má exkluzivní přístup k určité sadě hardwaru. Je umístěn mezi fyzickým hardwarem a OS a představuje virtuální sadu hardwaru pro veškerý další software běžící na počítači. Rovněž řídí tok informací mezi softwarem, virtualizovaným hardwarem a fyzickým hardwarem. Tento typ softwaru se používá v spotřebitelském i podnikovém nastavení.
Ve většině případů je operační systém počítače spuštěn ve vysoce privilegovaném stavu, kde má neomezený přístup k hardwaru stroje, zatímco aplikace běží v méně privilegovaném stavu a musí se spolehnout na operační systém. Tyto různé úrovně přístupových práv k hardwaru jsou známé jako prsteny, přičemž operační systém tradičně běží v kruhu 0; uživatelské aplikace běží v kroužcích 1–3, které mají méně oprávnění. Tento model funguje většinou dobře, ale při pokusu o spuštění více než jednoho operačního systému na jednom počítači se úplně rozpadne. Hypervisor řeší tento problém pomocí techniky zvané virtualizace.
Virtualizace není nový nápad, ale od poloviny dvacátých let minulého století se stalo něco jako bzučení, protože společnosti a průmysl informačních technologií (IT) si uvědomily svůj potenciál ke snížení nákladů a zvýšení efektivity. Existuje mnoho různých přístupů k virtualizaci, ale základní myšlenkou je vytvořit simulované sady hardwaru, které se často nazývají virtuální stroje. V případě hypervisora, který může být také nazýván monitorem virtuálního stroje, obsahuje každý virtuální počítač „hostující“ OS. Hypervisor sám může běžet přímo na fyzickém hardwaru, v takovém případě je znám jako typ „holého kovu“ nebo v hostitelském operačním systému jako „softwarový“ hypervisor.
Hypervisoři musí používat některé velmi sofistikované techniky pro správu svých hostujících operačních systémů a zajistit, aby si vzájemně nekonfliktovali. Protože operační systém uvnitř virtuálního počítače neví, že byl zbaven oprávnění 0, může se pokusit provádět omezené funkce bez povolení. V těchto případech může hypervizor zachytit funkci dříve, než dosáhne hardwaru, provést instrukce způsobem, který nepoškodí ostatní operační systémy spuštěné na hardwaru a vrátí výsledek původnímu OS. Tato technika, známá jako technika „trap and emulate“, je pouze jedním z mnoha pokročilých konceptů jedinečných pro virtualizační svět.
Protože se tento typ softwaru stal důležitějším a lukrativnějším, více společností hledalo způsoby, jak zmírnit zatížení hypervisora a zajistit vyšší výkon. Dodavatelé softwaru upravili své operační systémy tak, aby věděli o virtuálních počítačích, na kterých běží, což znamená méně typů scénářů typu trap-and-emulate. Prodejci hardwaru přidali podporu pro novou úroveň oprávnění, někdy známou jako ring -1. Novější softwarové programy mohou využít jednu nebo obě tyto techniky ke zvýšení výkonu.
Hypervizory lze nyní nalézt v celé řadě produktů na spotřebitelské i podnikové úrovni. Spotřební výrobky, které umožňují, aby jeden operační systém fungoval v jiném, často používají hypervizora softwarového typu. V podnikovém prostoru umožňuje software konsolidaci nevyužitých serverů s různými operačními systémy. Vývojáři softwaru mohou tento přístup použít ke spuštění více instancí podobných nebo dokonce identických operačních systémů, aby otestovali problémy s kompatibilitou.