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