Transcript ppt

Sisteme de Operare Avansate
Mașini Virtuale – Procesul de
virtualizare și accesul la resurse
Student:
Iosif Cătălin
IISC
Introducere
• MV – implementarea software a unei mașini ce execută
procese sau programe asemenea unei mașini fizice.
• Două categorii mari
-tip proces
-tip sistem
2
Necesitatea virtualizării
• Sistemele de operare sunt proiectate pentru a folosi anumite
arhitecturi ale setului de instrucțiuni. (fig. 1)
• Nu va exista interoperabilitate între componentele unor
sisteme cu ISA diferit. (fig. 2)
Fig 1.
Fig 2.
3
Implementarea virtualizării
• Se introduce un strat software, care “traduce” setul de
instrucțiuni.
• Astfel putem rula mai multe tipuri de software pe aceeași
arhitectură
4
Implementări ale mașinilor virtuale
• În figurile următoare se poate observa ca stratul software
poate fi inserat între diverse componente, și poate conecta
mai multe mașini.
5
Virtualizarea în cazul MV de tip proces
Maparea resurselor:
6
Virtualizarea în cazul MV de tip sistem
Maparea resurselor:
7
Abordări pentru virtualizare
Virtualizare completă
Para-virtualizare
Virtualizare asistată
hardware
8
Comparație abordări
Tip virtualizare
Avantaje
Dezavantaje
Completă
Compatibilă
cu orice sistem
performanță scazută
Para-virtualizare
performanța
mai bună
suportă doar anumite
sisteme de operare
Asistată hardware
foarte performantă
costuri de producție mai
mari
9
Arhitectura Xen
10
Safe Hardware Interface
11
Safe Hardware Interface
• izolarea driverelor în domenii distincte (IDD)
(oferă siguranța în caz de defecțiuni)
• Optimizarea interfețelor
se utilizează câteva clase de interfețe unificate
(pentru diferitele tipuri de dispoztive)
12
Obținerea izolării
• operațiile în memorie trebuie executate în domenii separate
• procesorul trebuie sa folosească planificare pentru a evita
încarcarea excesivă
• accesul la setul de instrucțiuni trebuie sa se facă privilegiat
• regiștrii I/O trebuie sa restricționeze accesul la unele zone
• accesul DMA la memoria gazdei trebuie sa fie restricționat.
• în general, dispozitivele trebuie sa restricționeze accesul la
alte dispozitive arbitrare.
13
Decizii constructive pentru SHI
• Spațiile I/O și regiștrii I/O sunt restricționați
• Intreruperile sunt tratat de catre VMM-ul Xen
• Izolarea completă a interacțiunilor dintre gazdă și dispozitive
necesită implementarea unităților IOMMU
• Fiecare domeniu vede doar dispozitivul asociat
14
Decizii constructive pentru SHI
• Canalele de comunicare cu dispozitivele se creează când se
formează conexiunea între IDD și sistemul oaspete
• Partajarea memoriei se face folosind referințe de grant – tuplu
(grant, D, P, R, U)
• Partajarea dispozitivelor si a accesului la rețea se face folosind
o schemă circulară de time-sharing
15
Concluzii
• Gama mașinilor virtuale este foarte diversificată, datorită
aplicațiilor multiple cărora sunt destinate;
• MV se vor dezvolta în continuare pe viitor datorită
popularitații aplicațiilor server-based si a cloud computingului.
• Curent, se studiază numeroase opțiuni pentru creșterea
eficienței în utilizarea resurselor hardware a soluțiilor
virtualizate.
16
Bibliografie
• 1. J.E. Smith & R. Nair – An overview of Virtual
Machines
• 2. R.P. Goldberg – Architecture of Virtual
Machines.
• 3. M. Eisen – Introduction to Virtualization
• 4. C. Scheffy – Virtualization for dummies
• 5. http://en.wikipedia.org/wiki/Virtualization
• 6. K. Fraser , S. Hand - Safe Hadware Access with
the Xen Virtual Machine Monitor
17