Documente Academic
Documente Profesional
Documente Cultură
Mașina virtuală (VM) reprezintă un sistem de operare sau mediu de aplicație configurat în cadrul
unui sistem de operare existent, având capacitatea de a simula hardware specializat. Implementarea
sistemelor de mașini virtuale a generat progrese semnificative în proiectarea sistemelor informatice.
Mașinile virtuale permit dezvoltarea de sisteme capabile să ofere acces multiplu, să desfășoare
multiprocesare și să efectueze multitasking. Aceasta facilitează clonarea eficientă a unuia sau mai multor
sisteme informatice și permite configurarea diverselor medii de lucru. Mașina virtuală funcționează ca un
sistem de operare autentic.
Avantaje:
Ușurința de Gestiune: Software-ul de virtualizare simplifică gestionarea resurselor printr-o
interfață centralizată pentru control și monitorizare.
Reducerea Costurilor: Virtualizarea optimizează utilizarea resurselor fizice, generând economii
semnificative la nivel de hardware, energie și spațiu.
Ușurința de Migrare și Recuperare: Mașinile virtuale pot fi mutate între servere fizice pentru
recuperare rapidă și minimizare a downtime-ului în caz de defecte hardware.
Upgrade-uri: Platformele de virtualizare permit upgrade-uri simple pentru menținerea mediului
virtualizat la zi cu cele mai recente caracteristici și patch-uri de securitate.
Proprietate Cost-Eficientă: Virtualizarea reduce necesitatea mai multor mașini fizice, aducând
economii semnificative în hardware, energie și întreținere.
Partajarea și Izolarea Resurselor: O mașină fizică poate găzdui mai multe mașini virtuale, cu
alocare ajustabilă a resurselor.
Testare și Dezvoltare: Virtualizarea oferă mediu sigur pentru testarea software-ului înainte de
producție, îmbunătățind fiabilitatea sistemului.
Întreținere Flexibilă a Serverului: Virtualizarea permite întreținerea serverului fără a afecta alte
mașini virtuale, promovând disponibilitatea sistemului.
Dezavantajele:
- Eșuarea root-ului: Dacă sistemul fizic din care se dezvoltă toate celelalte sisteme
cedează, atunci toate sistemele virtuale vor fi afectate.
Oportunitățile sunt strâns legate de toate avantajele pe care le-am enumerat anterior, astfel
oferind industriei informatice o cale largă de beneficii în optimizarea costurilor de energie, timp și
memorie, flexibilitate în utilizarea lor, cât și o metodă eficientă de dezvoltare rapidă a mediilor de
testare, oferind redundanță și o recuperare facilă a resurselor conținute în mai multe sisteme virtuale
izolate.
Reprezentarea unei mașini virtuale implică îndeplinirea mai multor cerințe esențiale: "gazda"
mașinii virtuale trebuie să asigure o duplicare eficientă și sigură a configurației sistemului mașinii fizice;
VMM trebuie să exercite un control complet asupra mașinii virtuale, mai ales asupra resurselor fizice
alocate și a execuției acestora; Microkernelul trebuie să dispună de o reprezentare adecvată a resurselor
mașinii virtuale pentru a impune constrângeri specifice asupra sistemului, cum ar fi izolarea și
integritatea.
2.1 Microkernel
Elementul fundamental al unui sistem de operare este nucleul, însărcinat cu supravegherea
resurselor sistemului. În plus, acționează ca o punte care conectează hardware-ul computerului și
aplicațiile.
Un tip de nucleu de sistem de operare cunoscut sub numele de microkernel este conceput
pentru a îndeplini doar sarcinile de bază ale sistemului, cum ar fi programarea procesorului și
gestionarea memoriei. Procesele la nivel de utilizator care comunică cu microkernel-ul prin mesaje sunt
utilizate pentru a implementa serviciile sistemului mai complexe. Implementarea acestui paradigmă
oferă flexibilitate și modularitate, în contrast cu nucleele tradiționale care gestionează toate serviciile
sistemului.
Aplicarea acestui tip de arhitectură kernel oferă diverse avantaje prin îmbunătățirea stabilității și
securității sistemului de operare. Acest lucru rezultă din faptul că un microkernel mai mic are un număr
redus de servicii, ceea ce la rândul său reduce cantitatea de spațiu disponibil pentru un atac asupra
sistemului de operare. Prin concentrarea microkernel-ului exclusiv pe controlul proceselor și memoriei,
stabilitatea generală a sistemului rămâne neafectată, chiar dacă un proces utilizator eșuează.
Alte avantaje ale designului microkernel-ului includ modularitatea crescută și flexibilitatea sistemului de
operare. Acest lucru duce la o adaptabilitate crescută a sistemului de operare la nevoile specifice ale
utilizatorilor sau aplicațiilor. În plus, facilitează personalizarea sistemului în funcție de cerințele specifice,
permițând o utilizare mai flexibilă și personalizată în ansamblu.Dezavantajul acestui tip nucleu poate
consta în complexitatea crescută ce poate face mai dificilă dezvoltarea și întreținerea SO.
Prin urmare, arhitectura microkernelului este în centrul dezvoltării pentru serviciile cele mai
importante, în timp ce restul serviciilor SO sunt integrate în programele de aplicație de sistem. Cele mai
importante funcții ale sistemului de operare controlat de microkernel sunt următoarele:
Comunicarea intraprocesuală;
gestionarea memoriei;
programarea CPU.
InterProcess Comunication means the way in which processes communicate with each other
Procesarea concurentă este un model de calcul în care mai mulți procesori execută instrucțiuni simultan
pentru o performanță mai bună. "Concurent" înseamnă că se întâmplă în același timp cu altceva.
Sarcinile sunt împărțite în subtipuri, care sunt apoi atribuite diferiților procesoare pentru a fi executate
simultan, spre deosebire de execuția secvențială, așa cum s-ar face de către un singur procesor.
Procesarea concurentă este uneori echivalentă cu procesarea paralelă.
Memoria fizică (RAM) este împărțită între procesele active în momentul respectiv și sistemul de
operare. Astfel că, în funcție de câtă memorie există pe mașina fizică, este posibil să se finalizeze toate
resursele și să nu se mai poată porni un proces nou. Pentru a împiedica petrecerea acestui scenariu s-a
introdus mecanismul de memorie virtuală. Astfel, chiar dacă spațiul virtual (compus din segmentul de
text, data, heap, stivă) al unui proces întrece memoria fizică disponibilă pe sistem, procesul va putea rula
încărcându-și în memorie doar paginile de care are nevoie în timpul execuției.
Spațiul virtual de adrese este împărțit în pagini virtuale (page). Corespondentul pentru memoria
fizică este pagina fizică (frame). Dimensiunile ambelor tipuri de pagini sunt egale. Dimensiunea este dată
de hardware (în majoritatea cazurilor o pagină are 4KB pe un sistem de 32 biți sau 64 biți).
Cât timp un proces rulează, atunci accesează numai pagini rezidente în memorie, adică se
execută așa cum ar avea tot spațiul mapat în memoria fizică. În momentul în care un proces va dori să
acceseze o anumită pagină virtuală, care nu este mapată în memorie, se va genera un page fault, iar în
urma acestui page fault pagina virtuală va fi mapată la o pagină fizică.
---Semaphore semaphore = new Semaphore(1); // Inițializare cu 1, permitând accesul unui singur fir de
execuție la un moment dat
// Firul de execuție 1
semaphore.acquire();
semaphore.release();
// Firul de execuție 2
semaphore.acquire();
semaphore.release();---
Aici se află un exemplu de Domeniu de date configurat după modelul de mai sus:
Sistem de Permisiuni:
Politici de Acces:
-Accesul celorlalti cititori, editori se realizează prin trimiterea unei cereri de aprobare la Bibliotecar.
Controlul Accesului:
Aceasta se realizează prin următoarele aspecte referitoare la protecția memoriei pentru fiecare
mașină virtuală:
2. Paginare și segmentare virtuală - VMM decide ce pagini virtuale sunt mapate la nivel fizic într-
un anumit moment pentru fiecare mașină virtuală.
5. La nivel de rețea pot exista mașini virtuale care cer o politică de criptare mai ridicat în timpul
schimbului de date
Acest nivel de izolare și protecție este esențial în medii virtualizate pentru a asigura securitatea și
integritatea sistemelor.
In acest sens, eroarea unei mașini virtuale sau supunerea unui atac exterior asupra acesteia nu ar trebui
sa afecteze gazda sau celelalte mașini virtuale.
Lipsa alterării sistemului de bază conferă administrarea sistemului gazdă și păstrarea acestuia într-o stare
optimă, indiferent de modul în care mașinile virtuale sunt configurate sau utilizate.
Tehnologia de virtualizare a apărut acum câteva decenii, având scopul de a evita risipa de putere
a procesoarelor costisitoare. Acest ecosistem oferă abordări noi și chiar revoluționare în știința
computerelor, în special pentru studiile privind comportamentul sistemelor de operare în medii
heterogene.
În continuare vom prezenta utilizarea în practică a acestor sisteme de calcul în cadrul a două
studii de caz pe care le vom dezvolta în paragrafele de mai jos pentru a evidenția proprietățiile mașiniilor
virtuale în utilizarea practică a avantajelor și oportunităților de securitate și fiabilitate a acestora
prezentate în punctele anterioare.
4.1 În prima parte vom prezenta studiul de caz realizat de către Nicolae Paraschiv și Gabriel Rădulescu
la Universitatea de Petrol și Gaze din Ploiești care au propus studiul interacțiunilor între sisteme de
operare heterogene pe mașini virtuale.
Autorii prezintă mai întâi arhitectura hardware cu nodul central „(server HP Proliant ML310, pe
platforma Intel (procesor Pentium 4 la 3,2 GHz - tehnologie Hyper-Threading, memorie EC DDR de 1 GB)
cu sistem de stocare RAID și facilități de backup pentru a preveni pierderea datelor utilizatorului)”, în
timp ce clienții sistemului sunt amplasați pe stații de lucru independente „(sisteme tipice Pentium 4:
viteză CPU de 2 GHz, memorie DDR de 512 MB, sistem de stocare ATA), conectate la serverul Proliant
printr-un switch Ethernet gestionat de mare viteză”.
Ca plaformă de virtualizare aceștia au preferat VMware ca cea mai flexibilă soluție, pentru că
totodată aceasta oferă o reprezentare abstractă a hardware-ului și o compatibilitate foarte bună cu toate
sistemele de operare oaspete care se intenționează a fi incluse în sesiunile următoare de testare.
În timpul utilizării sistemului descris anterior atât în teste, cât și în sesiunile de formare pentru
studenți, autorii au desprins următoarele beneficii ale utilizării unui ecosistem bazat pe mașini virtuale:
-se poate înmagazina și distribui materialul didactic în mașini virtuale cu efort considerabil mai
mic, astfel încât autorii afirmă : „În acest sens, o facilitate importantă pe care am creat-o pentru sistemul
nostru este replicarea automată a mașinilor virtuale pe toate stațiile de lucru: atunci când este necesară
o actualizare a software-ului, aceasta trebuie aplicată doar pe o singură mașină, iar noua imagine VM
este multiplicată în rețea, făcând-o disponibilă pe toate stațiile de lucru pentru fiecare utilizator
autorizat.”
-sistemul oferă flexibilitate printr-un proces de stabilire a politici de acces a studenților pentru a
conferi drepturi de utilizator, atunci când se tratează subiecte privind sarcinile de gestionare a SO.
-sistemul astfel configurat hardware și software oferă un timp necesar pentru intervenții tehnice,
activități de întreținere redus drastic.
Autorii acestui studiu conchid prin a evidenția modul în care tehnologia de virtualizare poate fi
aplicată în studiile despre interacțiunile dintre diferite SO într-un mediu hardware omogen și software
heterogen, ca o unealtă valoroasă pentru lucrările de laborator de formare, acesta fiind scopul studiului
de cercetare.
4.2
5. Concluzii
6. Referinte:
1.1 https://mediadigitala.ro/compentente-digitale/304-avantajele-masinii-virtuale-si-virtualizarii
1.3 https://barrazacarlos.com/ro/avantaje-si-dezavantaje-ale-virtualizarii/
1.4 Comparative Study of Virtual Machine Software Packages with RealOperating System by Arunkumar
Jayaraman and Pavankumar Rayapudi
2.1 https://www.slideserve.com/elijah/masini-virtuale
2.2 https://www.geeksforgeeks.org/microkernel-in-operating-systems/
2.4 https://www.easeus.com/knowledge-center/what-is-vmm.html
2.6 https://ocw.cs.pub.ro/courses/so/laboratoare/laborator-06