Vad är en virtuell maskin - Typer och fördelar

Prova Vårt Instrument För Att Eliminera Problem





Konceptet med en virtuell maskin introducerades omkring 1960. Det är utvecklingen av tidsdelningstekniken. I tidsdelningsmetoden har varje program full tillgång till alla datorresurser, men åt gången kommer bara ett program att köras. Systemet växlar mellan program i tidsskivor medan du sparar och återställer programtillstånd varje gång. Med hjälp av tidsdelningsmetoden kan flera användare använda datorsystemet samtidigt. IBMs forskningscentra utvecklade tidsdelningsmetoden som virtuella maskiner. CP-67 var den första tillgängliga virtuell maskinarkitektur . System med flera virtuella maskiner på en enda värd och en virtuell maskin på flera värdar utvecklades.

Innan du lanserar ny hårdvara teknologi , testas den först på emulatorn för att upptäcka, återskapa och reparera bristerna i utformningen och tacka nödvändiga steg. Innan ny programvara införs simuleras det på samma sätt för att kontrollera om det finns fel och felsöka dem. För att göra denna uppgift, ett system som kan fungera som en ersättning för huvudmiljön för att bygga ny teknik. Det är här virtuella maskiner kommer in i bilden. Det fungerar som en emulering av datorsystemet som ger det fysiska systemets fulla funktionalitet.




Vad är en virtuell maskin?

Med introduktionen av ny teknik och nyare forskningsmodeller lanseras ett stort antal hårdvaru- och mjukvaruprodukter. Många av programvaran är plattformsberoende, därför är det ibland svårt att felsöka eller kontrollera dem på grund av de begränsade hårdvaruresurserna.

En virtuell dator (virtuell maskin) är en emulering av ett datorsystem, där dessa maskiner använder datorarkitekturer för att tillhandahålla funktionerna hos en fysisk dator. Den fysiska enheten som virtuella maskiner fungerar på kallas Host, medan de virtuella maskinerna kallas Guest. En enda värd kan ha flera antal gäster.



Typer av virtuell maskin

Den virtuella maskinen fungerar som en dator och den sandboxas från resten av värdsystemet. Programvaran i gästen kan inte göra ändringar i värdsystemets programvara. Således kan virusfilerna testas med en virtuell maskin utan att det påverkar huvuddatorsystemet. Datorprogrammet som skapar och kör den virtuella maskinen kallas Hypervisor. Baserat på deras funktioner finns det två olika typer av virtuella maskiner - virtuella systemmaskiner och virtuella processmaskiner.

1). System virtuella maskiner


Dessa typer av virtuella datorer ger fullständig virtualisering. Fungerar som ersättning för den verkliga maskinen, dessa kommer att ge funktioner för att utföra en helhet operativ system . Hårdvaruresurser delas och hanteras och bildar flera miljöer i värdsystemet. Dessa miljöer är isolerade från varandra men finns på samma fysiska värd. Således ger dessa tidsdelning mellan flera operativsystem med enstaka uppgifter.

För att tillåta minnesdelning mellan olika virtuella maskiner på en dator operativ system kan system för överdrivet minne tillämpas. Minnessidor med identiskt innehåll kan delas mellan flera virtuella maskiner som finns på samma fysiska värd. Detta är mycket användbart för skrivskyddade sidor.

2). Process virtuella maskiner (VM)

Dessa virtuella datorer är också kända som Application virtual machines, Managed runtime-miljöer. Denna typ av virtuell dator körs som en vanlig applikation i värdens operativsystem och stöder en enda process. Den skapas med början av processen och förstörs när processen avslutas. Den används för att tillhandahålla en plattformsoberoende programmering miljö till processen, så att den kan köras på samma sätt på någon av de andra plattformarna.

Process-Virtual-Machine

Process-Virtual-Machine

Dessa implementeras med hjälp av tolkar och ger abstraktioner på hög nivå. Dessa används populärt för Java-programmering som använder Java-virtuell maskin för körning av program. Det finns ett speciellt fall av en process-VM som abstrakt över kommunikationsmekanismen för ett datakluster. Dessa innehåller en process per fysisk maskin i klustret. Dessa hjälper programmeraren att fokusera på algoritmen istället för kommunikationsprocessen som tillhandahålls av samtrafiken och virtuell maskin i OS . Applikationen som körs på den här virtuella datorn har åtkomst till alla operativsystemtjänster. Parallell virtuell maskin, gränssnitt för meddelandeöverföring är exempel på dessa virtuella maskiner (VM).

Arkitektur

Runtime-programvara är virtualiseringsprogramvaran som implementerar process-VM. Den implementeras på API-nivå för datorarkitekturen ovanför det kombinerade lagret av OS och hårdvara. Detta emulerar instruktioner på användarnivå samt OS- eller bibliotekssamtal. För systemets virtuella maskin kallas virtualiseringsprogramvaran Virtual Machine Monitor (VMM). Denna programvara finns mellan värdmaskinvaran och gästprogramvaran. VMM emulerar hårdvaru-ISA så att gästprogramvaran kan utföra en annan ISA.

Fördelar

Några av fördelarna med de virtuella maskinerna är följande:

  • Virtuella maskiner tillhandahåller programvarukompatibilitet för programvaran som körs på den. Således kommer all programvara som är skriven för den virtualiserade värden också att köras på den virtuella maskinen.
  • Det ger isolering mellan olika typer av operativsystem och processer. Således kan processorns operativsystem som körs på en virtuell maskin inte ändra processerna för de andra virtuella maskinerna och värdsystemet.
  • Dessa ger inkapsling och programvara som finns på en virtuell maskin kan modifieras och kontrolleras.
  • För värden för flera operativsystem erbjuder dessa olika funktioner som ingen dubbel start, överföring av filer mellan virtuella maskiner, fel i ett operativsystem påverkar inte det andra operativsystemet som finns på värden, freash OS kan enkelt läggas till.
  • Dessa ger bra programvaruhantering som dessa kan köra en komplett mjukvarustack för värdmaskinen, köra äldre operativsystem, etc.
  • Här är det möjligt att dela maskinvaruresurser med oberoende programvarustackar och för att balansera belastningen kan de virtuella maskinerna överföras till de olika datorerna.

Således blir moderna datorsystem mer komplexa som innehåller olika nära interagerande programvara och hårdvarukomponenter. Här fungerar virtualisering som en samtrafiksteknik. Virtuella maskiner gör att inkompatibla delsystem fungerar tillsammans. Det ger också mer flexibel och effektiv användning av hårdvaruresurser bland flera operativsystem. Dessa ger interoperabilitet mellan hårdvara, systemprogramvara och applikationer. Vilka är skillnaderna mellan processen Virtuell maskin och system virtuell maskin?