Virtuális gép (VM, angolul virtual machine ) - szoftver és/vagy hardverrendszer, amely emulálja egy bizonyos platform hardverét (vendég - vendég platform), és programokat hajt végre a vendég platform számára a gazdagép platformon (host - host platform, platform - host) vagy egy bizonyos platform virtualizálása és olyan környezetek létrehozása rajta, amelyek elszigetelik egymástól a programokat, sőt az operációs rendszereket is (lásd: sandbox ); Lásd még néhány számítási környezet specifikációját (például: "C programozási nyelv virtuális gépe").
A virtuális gép valamilyen gépfüggetlen kódot (például bájtkódot , szálas kódot , p-kódot ) vagy valós processzorgépi kódot hajt végre . A processzoron kívül a virtuális gép képes emulálni az egyes hardverösszetevők és egy teljes számítógép (beleértve a BIOS -t , a RAM -ot , a merevlemezt és más perifériákat ) működését. Utóbbi esetben az operációs rendszerek virtuális gépre telepíthetők, akárcsak egy valódi számítógépre (például a Windows futtatható virtuális gépen Linux alatt, vagy fordítva). Egyetlen számítógépen több virtuális gép is futhat (ez használható több szerver szimulálására egyetlen valódi szerveren a kiszolgálói erőforrások felhasználásának optimalizálása érdekében).
A virtuális gép, mint egy valódi gép viselkedését szimuláló erőforrások gyűjteménye, az 1960-as évek végén Cambridge-ben jelent meg az Atlas Manchester számítógép virtuális memória koncepciójának kiterjesztéseként [1] . Összességében a számítási folyamatot e koncepció keretein belül annak a munkamemóriatérnek a tartalma határozza meg, amelyhez hozzáfér. Feltéve, hogy a konkrét helyzet az adott munkaterületen a vártnak megfelelő, a folyamatnak nincs módja annak megállapítására, hogy a számára bemutatott erőforrás valóban egy ilyen típusú fizikai erőforrás-e, vagy más erőforrások olyan műveletei szimulálják, amelyek hasonló változásokat eredményeznek a folyamat munkaterületének tartalma.
Például egy folyamat nem tudja meghatározni, hogy kizárólag a processzort használja, vagy több programozási módban más folyamatokkal együtt. Egy virtuális gépben egyetlen folyamat sem használhat kizárólag erőforrást, és minden rendszererőforrás potenciálisan megosztott erőforrásnak minősül. Ezen túlmenően a virtuális gépek használata több , ugyanabban a számítástechnikai rendszerben dolgozó felhasználó közötti szétválasztást biztosít, bizonyos szintű adatvédelmet biztosítva.
A virtuális gép ötlete számos operációs rendszer mögött áll, különösen az IBM VM/CMS (és annak szovjet klónja, a CBM ) és a DEC VAX/VMS .
A virtuális gépek a következőkre használhatók:
Néhány figyelemre méltó virtuális gép:
Programozási nyelvi környezetek
|
Operációs rendszerek és hipervizorok | Önálló számítógépes emulátorok |
Emulációs és virtualizációs szoftver ( összehasonlítás ) _ | |||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Alkalmazási réteg |
| ||||||||||||||
OS szint (tárolók) |
| ||||||||||||||
Hardver szint |
| ||||||||||||||
Hálózati virtualizáció |
|