En hypervisor spelar en avgörande roll som den centrala chefen för Virtual Machines (VMS) inom en operativsystem (OS) -miljö. Det fungerar som en mellanhand mellan den fysiska hårdvaran och VM:erna, abstraherar hårdvaruresurserna och tilldelar dem till varje VM efter behov. Här är en uppdelning av dess nyckelfunktioner:
1. Resursallokering och hantering:
* cpu virtualisering: Hypervisoren scheman och tilldelar CPU -tid till varje VM. Det säkerställer rättvis delning av CPU -resurser och förhindrar en VM från att monopolisera CPU.
* Minneshantering: Hypervisorn tilldelar och hanterar den fysiska RAM som finns på värdmaskinen. Den tilldelar en del av minnet till varje VM, isolerar minnesutrymmen för att förhindra störningar mellan VM:er och implementerar minneshanteringstekniker som byte eller ballong.
* I/O Virtualisering: Hypervisorn avlyssnar I/O -förfrågningar från VM:er och översätter dem till kommandon som den fysiska hårdvaran förstår. Den virtualiserar nätverksgränssnitten, lagringskontrollerna och andra I/O -enheter, vilket gör att varje VM kan komma åt dessa resurser som om de var direkt anslutna.
* Lagring Virtualisering: Hypervisorn presenterar virtuella skivor till VMS, som vanligtvis lagras som filer på värdens lagringssystem. Den hanterar lagringsutrymmet och ger funktioner som tunn tillhandahållande (tilldelning av lagring på begäran) och ögonblicksbilder.
2. Isolering och säkerhet:
* Processisolering: Hypervisorn säkerställer att varje VM körs i en separat, isolerad miljö. Detta förhindrar en VM från att komma åt minnet eller andra resurser för en annan VM, vilket förbättrar säkerheten och stabiliteten. Om en VM kraschar påverkar det inte de andra.
* resursgränser: Hypervisorn kan upprätthålla resursgränser för varje VM, till exempel att begränsa mängden CPU, minne eller diskutrymme det kan använda. Detta hjälper till att förhindra resursstrid och säkerställer att alla VM:er har tillgång till de resurser de behöver.
* Säkerhetsfunktioner: Många hypervisorer inkluderar inbyggda säkerhetsfunktioner, såsom åtkomstkontrolllistor (ACL) och kryptering, för att skydda VM:erna och värdsystemet från obehörig åtkomst.
3. Abstraktion och hårdvaruoberoende:
* Hårdvaruabstraktion: Hypervisorn döljer den underliggande hårdvaran från VMS. Detta gör det möjligt för VMS att köra oberoende av den specifika hårdvarukonfigurationen för värdmaskinen. Detta är avgörande för portabilitet - en VM kan flyttas mellan olika fysiska servrar utan modifiering så länge de har kompatibla hypervisorer.
* emulering (för typ 2 hypervisorer): Vissa hypervisorer (typ 2, beskrivna nedan) kan behöva emulera vissa hårdvarukomponenter om gäst -operativsystemet förväntar sig en annan hårdvaruarkitektur än värden. Denna emulering introducerar overhead, så den är mindre performant än virtualisering.
4. Live Migration:
* Många hypervisorer stöder levande migration, vilket gör att en VM kan flyttas från en fysisk server till en annan utan någon driftstopp. Detta är viktigt för belastningsbalansering, underhåll och återhämtning av katastrofer.
typer av hypervisorer:
* Typ 1 (Bare-Metal Hypervisors): Dessa körs direkt på hårdvaran utan ett värdoperativsystem. De är mycket effektiva och säkra eftersom de har direkt tillgång till hårdvaruresurserna. Exempel inkluderar VMware ESXI, Microsoft Hyper-V (i kärnserverkonfigurationer) och XEN.
* Typ 2 (värdhypervisorer): Dessa körs ovanpå ett befintligt operativsystem. De är lättare att installera och hantera, men de är i allmänhet mindre effektiva än hypervisorer av typ 1 eftersom de måste dela hårdvaruresurserna med värd OS. Exempel inkluderar VMware Workstation, Oracle VirtualBox och Parallels Desktop.
Sammanfattningsvis är hypervisorn en kritisk komponent i alla virtualiserade miljöer. Det ger grunden för att köra flera operativsystem på en enda fysisk maskin, vilket möjliggör effektivt resursanvändning, isolering, säkerhet och portabilitet.