Ce este o mașină virtuală - Tipuri și avantaje

Încercați Instrumentul Nostru Pentru Eliminarea Problemelor





Conceptul de mașină virtuală a fost introdus în jurul anului 1960. Este evoluția tehnicii de partajare a timpului. În metoda de partajare a timpului, fiecare program are acces complet la toate resursele computerului, dar la un moment dat, va fi executat un singur program. Sistemul comută între programe în felii de timp în timp ce salvează și restabilește stările programului de fiecare dată. Cu ajutorul metodei de partajare a timpului, mai mulți utilizatori pot utiliza sistemul computerizat simultan. Centrele de cercetare IBM au dezvoltat metoda de partajare a timpului ca mașini virtuale. CP-67 a fost primul disponibil arhitectura mașinii virtuale . Au fost dezvoltate sisteme cu mai multe mașini virtuale pe o singură gazdă și o singură mașină virtuală pe mai multe gazde.

Înainte de a lansa orice hardware nou tehnologie , este testat mai întâi pe emulator pentru a detecta, recrea și repara defectele în etapele necesare de proiectare și abordare. În mod similar, înainte de a introduce orice software nou, acesta este simulat pentru a verifica eventualele erori și a le depana. Pentru a realiza această sarcină, un sistem care poate acționa ca un substitut pentru mediul principal pentru a construi o nouă tehnologie. Aici apar Mașinile virtuale în imagine. Acționează ca emulare a sistemului computerizat, oferind funcționalitatea deplină a sistemului fizic.




Ce este o mașină virtuală?

Odată cu introducerea noilor tehnologii și a modelelor de cercetare mai noi, se lansează o mulțime de produse hardware și software. Multe dintre software-uri depind de platformă, prin urmare este uneori dificil să le depanăm sau să le verificăm din cauza resurselor hardware limitate.

O mașină virtuală (mașină virtuală) este o emulare a unui sistem computerizat, în care aceste mașini folosesc arhitecturi de calculatoare pentru a oferi funcționalitatea unui computer fizic. Dispozitivul fizic pe care funcționează mașinile virtuale este cunoscut sub numele de Host, în timp ce mașinile virtuale sunt cunoscute sub numele de Guest. O singură gazdă poate avea mai multe numere de invitați.



Tipuri de mașini virtuale

Mașina virtuală funcționează ca un computer și este izolată din restul sistemului gazdă. Software-ul din cadrul oaspetelui nu poate aduce modificări software-ului sistemului gazdă. Astfel, fișierele de viruși pot fi testate folosind o mașină virtuală fără a afecta sistemul principal de computer. Software-ul computerului care creează și rulează mașina virtuală este cunoscut sub numele de Hypervisor. Pe baza funcțiilor lor, există două tipuri diferite de mașini virtuale - Mașini virtuale de sistem și mașini virtuale de proces.

1). Mașini virtuale de sistem


Aceste tipuri de VM oferă virtualizare completă. Acționând ca înlocuitorul mașinii reale, acestea vor oferi funcționalități pentru a executa un întreg sistem de operare . Resursele hardware sunt partajate și gestionate, formând medii multiple pe sistemul gazdă. Aceste medii sunt izolate unele de altele, dar există pe aceeași gazdă fizică. Astfel, acestea oferă schimb de timp între mai multe sisteme de operare cu o singură sarcină.

Pentru a permite partajarea memoriei între diferite mașini virtuale de pe un computer sistem de operare , pot fi aplicate sisteme de supraangajare a memoriei. Paginile de memorie cu conținut identic pot fi partajate între mai multe mașini virtuale prezente pe aceeași gazdă fizică. Acest lucru este extrem de util pentru paginile numai în citire.

2). Mașini virtuale de proces (VM)

Aceste mașini virtuale sunt, de asemenea, cunoscute sub numele de mașini virtuale de aplicații, medii de runtime gestionate. Acest tip de VM rulează ca o aplicație normală în sistemul de operare al gazdei, acceptând un singur proces. Este creat odată cu începerea procesului și este distrus la sfârșitul procesului. Este folosit pentru a oferi o platformă independentă programare mediu la proces, permițându-i să se execute în același mod pe oricare dintre celelalte platforme.

Proces-Virtual-Machine

Proces-Virtual-Machine

Acestea sunt implementate folosind interpreți și oferă abstracții la nivel înalt. Acestea sunt utilizate în mod popular pentru programarea Java care utilizează mașina virtuală Java pentru executarea programelor. Există un caz special al unui proces VM care se rezumă la mecanismul de comunicație al unui cluster de calculatoare. Acestea conțin un proces pe fiecare mașină fizică din cluster. Acestea ajută programatorul să se concentreze asupra algoritmului în locul procesului de comunicare oferit de interconectare și mașină virtuală în sistem de operare . Aplicația care rulează pe aceste VM are acces la toate serviciile sistemului de operare. Mașina virtuală paralelă, interfața de transmitere a mesajelor sunt exemple ale acestor mașini virtuale (VM).

Arhitectură

Runtime software este software-ul de virtualizare care implementează Process VM. Este implementat la nivelul API al arhitecturii computerului deasupra stratului combinat de sistem de operare și hardware. Aceasta emulează instrucțiunile la nivel de utilizator, precum și apelurile OS sau bibliotecă. Pentru mașina virtuală de sistem, software-ul de virtualizare se numește Virtual Machine Monitor (VMM). Acest software este prezent între aparatul hardware gazdă și software-ul pentru oaspeți. VMM emulează hardware-ul ISA permițând software-ului invitat să execute un alt ISA.

Avantaje

Unele dintre avantajele mașinilor virtuale sunt următoarele:

  • Mașinile virtuale oferă compatibilitate software cu software-ul care rulează pe acesta. Astfel, toate software-urile scrise pentru gazda virtualizată vor rula și pe mașina virtuală.
  • Oferă izolare între diferite tipuri de sisteme de operare și procese. Astfel, sistemul de operare al procesorului care rulează pe o mașină virtuală nu poate modifica procesele celorlalte mașini virtuale și ale sistemului gazdă.
  • Acestea oferă încapsulare și software-ul prezent pe o mașină virtuală poate fi modificat și controlat.
  • Pentru sistemul de operare multi-host, acestea oferă diverse caracteristici, cum ar fi lipsa unui boot dual, transferul de fișiere între mașini virtuale, eroarea într-un sistem de operare nu afectează celălalt sistem de operare prezent pe gazdă, sistemul de operare freash poate fi adăugat cu ușurință.
  • Acestea oferă o bună gestionare a software-ului, cum ar fi acestea, care pot rula o stivă completă de software a mașinii gazdă, pot rula sisteme de operare vechi, etc.
  • Aici este posibil să partajați resursele hardware cu stive de software independente și pentru a echilibra sarcina, mașinile virtuale pot fi transferate pe diferite computere.

Astfel, sistemele moderne de calcul devin tot mai complexe, care conțin diverse componente software și hardware care interacționează îndeaproape. Aici, virtualizarea acționează ca o tehnologie de interconectare. Mașinile virtuale fac subsisteme incompatibile pentru a lucra împreună. De asemenea, oferă o utilizare mai flexibilă și mai eficientă a resurselor hardware între mai multe sisteme de operare. Acestea oferă interoperabilitate între hardware, software de sistem și aplicații. Care sunt diferențele dintre Proces Mașină virtuală și mașină virtuală de sistem?