Virtuell maskin

I informatikk indikerer begrepet virtuell maskin ( VM ) en programvare som gjennom en virtualiseringsprosess skaper et virtuelt miljø som typisk emulerer oppførselen til en fysisk maskin ( PC , klient eller server ) takket være allokering av maskinvareressurser (deler). av harddisk , RAM og prosesseringsressurser ) og der noen applikasjoner kan kjøres som om de samhandler med den maskinen; faktisk, hvis operativsystemet som kjører på den virtuelle maskinen skulle svikte, ville ikke basissystemet bli påvirket i det hele tatt. Blant fordelene er det faktum at man samtidig og effektivt kan tilby flere separate driftsmiljøer til flere brukere , hver enkelt som kan aktiveres på faktisk forespørsel, uten å "skitne" det virkelige fysiske systemet med harddiskpartisjonering eller gi klyngemiljøerserveren systemer . [1] [2] [3]

Betydninger

Opprinnelig betydning

Opprinnelig betydde begrepet "virtuell maskin" opprettelsen av et mangfold av identiske utførelsesmiljøer på en enkelt datamaskin , hver med sitt eget operativsystem . Hensikten med denne teknikken var å dele bruken av en enkelt datamaskin mellom flere brukere , noe som gir hver enkelt inntrykk av å være de eneste brukerne, i tillegg til å ha fordeler som ekte maskiner ikke har (for eksempel når man må starte datamaskinen på nytt maskin: med virtuelle maskiner er operasjonen raskere og det er mulighet for å velge hvilke komponenter som skal aktiveres og hvilke ikke). Programvaren som gjør denne inndelingen mulig kalles en virtuell maskinmonitor eller hypervisor . Denne typen virtualisering brukes spesielt innen stormaskiner og superdatamaskiner . Eksempler på virtualiseringer av denne typen er operativsystemene VM/CMS og OS/360 fra IBM og Xen .

Virtualisering kan sees på flere måter:

Program virtuell maskin

Den vanligste betydningen i dag er et program som emulerer en datamaskin (vanligvis en abstrakt datamaskin, det vil si som ikke tilsvarer en ekte datamaskin). Applikasjonsprogrammene er skrevet på et språk kompilert for denne imaginære datamaskinen (dvs. oversatt til dens opprinnelige instruksjoner) og, når de er kompilert, kjøres de på programvarens virtuelle maskin, som kan fungere enten som en tolk eller som en "on the fly"-kompilator ( akkurat i tide ). Siden forskjellige virtuelle maskiner kan skrives for forskjellige plattformer, kan det kompilerte programmet "kjøre" på hvilken som helst plattform som den virtuelle maskinen "kjører" på. Hypervisoren er nøkkelkomponenten for et virtualiseringsbasert system. Den virtuelle maskinovervåkeren må fungere transparent uten å vekte driften og ytelsen til operativsystemene med dens aktivitet.

Et moderne språk som gjør bruk av den virtuelle maskinen er Java: programmer skrevet i Java er faktisk kompilert (dvs. oversatt) i bytekodespråket, som kjører på Java Virtual Machine .

Forfedrene til dagens virtuelle maskiner kan betraktes som både "maskinen P", det vil si den abstrakte datamaskinen som Pascal -programmene ble (og fortsatt er) kompilert for i de tidlige stadiene av kompileringen (som produserer den såkalte P-koden ), og "maskinen S", en annen abstrakt datamaskin (som imidlertid også hadde en" konkret "realisering, dvs. maskinvare ) som programmene i Simula ble kompilert for i de tidlige stadiene av kompileringen (produserte den såkalte S-koden). Hypervisoren allokerer ressurser dynamisk når og der det er nødvendig, reduserer drastisk tiden det tar å sette opp nye systemer , isolerer arkitekturen som helhet fra problemer på operativsystem- og applikasjonsnivå, muliggjør enklere styring av heterogene ressurser og letter testing og feilsøking av kontrollerte miljøer.

Operativsystememulering

Begrepet virtuell maskin brukes noen ganger for å referere til plattformemulering .

Det er mulig gjennom spesielle applikasjoner å lage et "applikasjonsmiljø" slik at det fremstår som en "falsk datamaskin", der det er mulig å installere et annet operativsystem enn det som utstyrer den virkelige datamaskinen.

Mulige bruksområder er:

Parallell virtuell maskin

Hvis konseptet virtuell maskin i sin opprinnelige betydning indikerte underinndelingen av en enkelt datamaskin blant flere brukere, har den stadig økende kraften til datamaskiner gitt opphav til det motsatte behovet: å få et system sammensatt av mange forskjellige datamaskiner til å oppfatte som en enkelt enhet . I dette tilfellet snakker vi om Parallel Virtual Machine . Den mest klassiske bruken av denne teknologien er å lage klynger av hundrevis, om ikke tusenvis, av datamaskiner for å støtte massivt parallelliserbare arbeidsbelastninger.

Merknader

  1. ^ Hva er en virtuell maskin? , på VMware 10. april 2020. Hentet 22. mai 2020 .
  2. ^ Hva er en virtuell maskin? , på redhat.com . Hentet 22. mai 2020 .
  3. ^ Hva en virtuell maskin er og hvordan den fungerer , på azure.microsoft.com . Hentet 22. mai 2020 .

Relaterte elementer