Kas ir virtuālā mašīna - veidi un priekšrocības

Izmēģiniet Mūsu Instrumentu Problēmu Novēršanai





Virtuālās mašīnas jēdziens tika ieviests ap 1960. gadu. Tā ir laika koplietošanas tehnikas attīstība. Laika koplietošanas metodē katrai programmai ir pilnīga piekļuve visiem datora resursiem, taču vienlaikus tiks izpildīta tikai viena programma. Sistēma pārslēdzas starp programmām laika daļās, katru reizi saglabājot un atjaunojot programmu stāvokļus. Izmantojot laika koplietošanas metodi, vairāki lietotāji vienlaikus var izmantot datorsistēmu. IBM pētījumu centri laika koplietošanas metodi attīstīja kā virtuālās mašīnas. Pirmais pieejamais bija CP-67 virtuālās mašīnas arhitektūra . Tika izstrādātas sistēmas ar vairākām virtuālajām mašīnām vienā resursdatorā un vienu virtuālo mašīnu vairākos resursdatoros.

Pirms jaunas aparatūras palaišanas tehnoloģija , tas vispirms tiek pārbaudīts uz emulatora, lai atklātu, atjaunotu un novērstu trūkumus projektēšanā un nepieciešamo darbību novēršanā. Tāpat pirms jaunas programmatūras ieviešanas tā tiek simulēta, lai pārbaudītu, vai nav kļūdu, un tās atkļūdo. Lai veiktu šo uzdevumu, sistēma, kas var darboties kā galvenā vides aizstājējs, lai izveidotu jaunu tehnoloģiju. Šeit attēlā parādās virtuālās mašīnas. Tas darbojas kā datorsistēmas atdarināšana, nodrošinot fiziskās sistēmas pilnīgu funkcionalitāti.




Kas ir virtuālā mašīna?

Ieviešot jaunas tehnoloģijas un jaunākus pētījumu modeļus, tiek palaists daudz aparatūras un programmatūras produktu. Daudzas programmatūras ir atkarīgas no platformas, tāpēc dažreiz ir grūti tās atkļūdot vai pārbaudīt ierobežoto aparatūras resursu dēļ.

VM (virtuālā mašīna) ir datorsistēmas atdarinājums, kur šīs mašīnas izmanto datoru arhitektūras, lai nodrošinātu fiziska datora funkcionalitāti. Fiziskā ierīce, kurā darbojas virtuālās mašīnas, tiek dēvēta par resursdatoru, savukārt virtuālās mašīnas - viesa. Vienam saimniekam var būt vairāki viesu numuri.



Virtuālās mašīnas veidi

Virtuālā mašīna darbojas kā dators, un tā ir smilškastē no pārējās resursdatora sistēmas. Viesa programmatūra nevar veikt izmaiņas resursdatora sistēmas programmatūrā. Tādējādi vīrusu failus var pārbaudīt, izmantojot virtuālo mašīnu, neietekmējot galveno datorsistēmu. Datoru programmatūra, kas izveido un vada virtuālo mašīnu, ir pazīstama kā Hypervisor. Pamatojoties uz to funkcijām, ir divi dažādi virtuālo mašīnu veidi - sistēmas virtuālās mašīnas un virtuālo mašīnu apstrāde.

1). Sistēmas virtuālās mašīnas


Šie VM veidi nodrošina pilnīgu virtualizāciju. Darbojoties kā reālās mašīnas aizstājējs, tie nodrošinās funkcijas, lai izpildītu veselu operētājsistēma . Aparatūras resursi tiek koplietoti un pārvaldīti, veidojot vairākas vides resursdatora sistēmā. Šīs vides ir izolētas viena no otras, bet pastāv vienā un tajā pašā fiziskajā resursdatorā. Tādējādi tie nodrošina laika koplietošanu starp vairākām viena uzdevuma operētājsistēmām.

Atļaut atmiņas koplietošanu starp dažādām virtuālajām mašīnām vienā datorā operētājsistēma , var izmantot atmiņas pārsniegšanas saistību sistēmas. Atmiņas lapas ar identisku saturu var koplietot starp vairākām virtuālajām mašīnām, kas atrodas vienā fiziskajā resursdatorā. Tas ir ļoti noderīgi tikai lasāmām lapām.

2). Procesa virtuālās mašīnas (VM)

Šīs VM ir pazīstamas arī kā lietojumprogrammu virtuālās mašīnas, pārvaldītās izpildlaika vides. Šāda veida VM saimniekdatora operētājsistēmā darbojas kā parasta lietojumprogramma, atbalstot vienu procesu. Tas tiek izveidots ar procesa sākumu un tiek iznīcināts, kad process beidzas. To izmanto, lai nodrošinātu no platformas neatkarīgu programmēšana videi procesu, ļaujot to tādā pašā veidā izpildīt jebkurā citā platformā.

Process-Virtual-Machine

Process-Virtual-Machine

Tie tiek īstenoti, izmantojot tulkus, un nodrošina augsta līmeņa abstrakcijas. Tos populāri izmanto Java programmēšanai, kas programmu izpildei izmanto Java virtuālo mašīnu. Pastāv īpašs gadījums, kad process VM pārņem datoru klastera komunikācijas mehānismu. Tie satur vienu procesu katrai fiziskai mašīnai klasterī. Tie palīdz programmētājam koncentrēties uz algoritmu, nevis saziņas procesu, ko nodrošina starpsavienojums un virtuālā mašīna operētājsistēmā . Lietojumprogrammai, kas darbojas šajos VM, ir piekļuve visiem operētājsistēmas pakalpojumiem. Paralēlā virtuālā mašīna, ziņojumu nodošanas saskarne ir šo virtuālo mašīnu (VM) piemēri.

Arhitektūra

Runtime programmatūra ir virtualizācijas programmatūra, kas ievieš procesa VM. Tas tiek ieviests datora arhitektūras API līmenī virs OS un aparatūras apvienotā slāņa. Tas atdarina lietotāja līmeņa instrukcijas, kā arī OS vai bibliotēkas zvanus. Sistēmas virtuālajai mašīnai virtualizācijas programmatūru sauc par Virtual Machine Monitor (VMM). Šī programmatūra atrodas starp resursdatora aparatūru un viesa programmatūru. VMM atdarina aparatūras ISA, kas ļauj viesa programmatūrai izpildīt citu ISA.

Priekšrocības

Dažas virtuālo mašīnu priekšrocības ir šādas:

  • Virtuālās mašīnas nodrošina programmatūras saderību ar tajā darbināmo programmatūru. Tādējādi visa virtualizētajam resursdatoram uzrakstītā programmatūra darbosies arī virtuālajā mašīnā.
  • Tas nodrošina izolāciju starp dažāda veida operētājsistēmām un procesiem. Tādējādi procesora operētājsistēma, kas darbojas vienā virtuālajā mašīnā, nevar modificēt citu virtuālo mašīnu un resursdatora sistēmas procesus.
  • Tie nodrošina iekapsulēšanu, un virtuālajā mašīnā esošo programmatūru var pārveidot un kontrolēt.
  • Vairāku operētājsistēmu resursdatoram tie nodrošina dažādas funkcijas, piemēram, nav dubultas sāknēšanas, failu pārsūtīšana starp virtuālajām mašīnām, kļūdas vienā operētājsistēmā neietekmē citu resursdatorā esošo operētājsistēmu, viegli pievienojamas operētājsistēmas.
  • Tie nodrošina labu programmatūras pārvaldību, piemēram, šie var palaist pilnu resursdatora programmatūras kaudzi, palaist mantoto OS utt.
  • Šeit ir iespējams koplietot aparatūras resursus ar neatkarīgām programmatūras kaudzēm un līdzsvarot slodzi, virtuālās mašīnas var pārsūtīt uz dažādiem datoriem.

Tādējādi mūsdienu skaitļošanas sistēmas kļūst arvien sarežģītākas, kas satur dažādas cieši mijiedarbojošās programmatūras un aparatūras sastāvdaļas. Šeit virtualizācija darbojas kā starpsavienojuma tehnoloģija. Virtuālās mašīnas padara nesaderīgas apakšsistēmas darbam kopīgas. Tas arī nodrošina elastīgāku un efektīvāku aparatūras resursu izmantošanu starp vairākām operētājsistēmām. Tie nodrošina aparatūras, sistēmas programmatūras un lietojumprogrammu savietojamību. Kādas ir atšķirības starp procesu Virtuālā iekārta un sistēmas virtuālā mašīna?