10
VMM POSTOLACHE DANIEL- RELU MASTER IISC

MASINI VIRTUALE

  • Upload
    elijah

  • View
    186

  • Download
    5

Embed Size (px)

DESCRIPTION

MASINI VIRTUALE. VMM. POSTOLACHE DANIEL-RELU MASTER IISC. CUPRINS. INTRODUCERE MICROKERNELUL REPREZENTAREA UNEI MASINI VIRTUALE RESURSELE MASINII VIRTUALE PROTECTIA RESURSELOR BIBLIOGRAFIE. INTRODUCERE. - PowerPoint PPT Presentation

Citation preview

Page 1: MASINI VIRTUALE

VMM

POSTOLACHE DANIEL-RELUMASTER IISC

Page 2: MASINI VIRTUALE

INTRODUCERE MICROKERNELUL REPREZENTAREA UNEI MASINI VIRTUALE RESURSELE MASINII VIRTUALE PROTECTIA RESURSELOR BIBLIOGRAFIE

Page 3: MASINI VIRTUALE

- sunt capabile de a asigura refolosirea completa a nivelelor software, permitand rezolvarea unor varietati de probleme :Exploatarea de noi caracteristici hardwareReutilizarea driverelor de dispozitivSecuritatea crescuta- asigura un grad mare de flexibilitate- baza unui astfel de sistem este microkernelul- microkernelul reprezinta cantitatea minima de software ce poate asigura mecanismele necesare pentru implementarea unui sistem de operare- functioneaza pe principiul refolosirii si al izolarii componentelor

Page 4: MASINI VIRTUALE

Manageriaza resursele sistemului si expune interfetele uniform astfel incat aplicatiile la nivel de utilizator ce ruleaza pe masina virtuala sa poata interactiona cu kernelul sistemului

VMM( VIRTUAL MACHINE MONITOR) reprezinta o componenta ce ruleaza pe hardware-ul fizic - > ofera mecanisme puternice de izolare a resurselor

- > insarcinat cu partajarea componentei hardware

- > permite multiplexarea mai multor masini virtuale peste un singur set de resurse

fizice VMM are abilitatea de a suporta executia aplicatiilor “out of the box” Similaritati ahitecturale intre microkernel si VMM Ultimele cercetari isi propun dezvoltarea functionalitatii VMM peste microkernel IPC( Inter-Process Communication) –mecanismul ce permite unor procese

separate sa comunice intre ele doua tipuri de mecanisme IPC sincron

asincron

Page 5: MASINI VIRTUALE

Microkernelul L4 reprezinta a doua generatie de kerneluri, ce isi propunea sa identifice si sa

imbunatateasca problemele ce tineau de designul si implementarea IPC si de asemenea sa imbunatateasca indicii de performanta ale acestui mecanism

asigura o securitate si o izolare a componentelor mult imbunatatita, si care nu depinde de platforma pe care ruleaza

Asigura cele 4 mecanisme de baza : spatiile de adrese, firele de executie, planificarea si comunicarea inter-procese sincrona

Evenimentele generate de catre hardware precum exceptiile si intreruperile sunt convertite in mesaje IPC generate de kernel

Cand are loc o intrerupere hardware, kernelul sintetizeaza mesajul intr-un fir de executie care este inregistrat ca fiind manipulatorul acelei intreruperi

Page 6: MASINI VIRTUALE

Reprezentarea unei masini virtuale presupune indeplinirea urmatoarelor trei cerinte:

“oaspetele” masinii virtuale necesita o duplicare eficienta si de incredere a sistemului masinii fizice

VMM necesita un control complet al masinii virtuale, in special a resurselor fizice alocate si a executiei acestora

Microkernelul are nevoie de o reprezentare a resurselor masinii virtuale pentru a impune anumite constrangeri asupra sistemului precum izolarea si integritatea

Page 7: MASINI VIRTUALE

Memoria fizica- pentru a virtualiza memoria fizica se foloseste memoria virtuala, aceasta

permitand controlul complet asupra accesului memoriei fizice a masinii virtuale

- intr-un microkernel L4 spatiul memoriei virtuale este reprezentat de un spatiu de adrese - > acesta va fi populat folosind mesaje L4 de mapare, mapand si asigurand parti ale propriului spatiu de adrese catre spatiul masinii virtuale

Page 8: MASINI VIRTUALE

Memoria virtuala- exista situatii in care sistemul de operare din cadrul masinii virtuale

doreste crearea proprie a memoriei virtuale- pentru a mentine “iluzia” de acces catre memoria virtuala, sistemul de

masina virtuala trebuie sa transforme adresa virtuala a sistemului oaspete intr-o adresa fizica a sistemului gazda

- shadow page-table – tabel ce permite translatarea directa a adreselor virtuale ale guest-ului in adrese fizice ale sistemului gazda

- generarea acestui tabel implica toate cele trei componente majore arhitecturale -> microkernelul aplica izolarea si independenta diferitelor spatii de adrese ce contin aplicatiile masinii virtuale

-> VMM necesita control deplin asupra resurselor fizice ocupate de catre masina virtuala

-> sistemul de operare oaspete trebuie sa asigura crearea spatiilor virtuale arbitrare de adrese in propria memorie fizica

Page 9: MASINI VIRTUALE

Sistemele de operare moderne sunt dependente puternic de mecanismele software ce ajuta la protectia resurselor fata de utilizatori

Mecanismele hardware sunt ieftine si eficiente in protejarea interfetelor, insa accesul catre setul bogat de resurse precum fisiere, socketuri sau fire de executie este protejat aproape intotdeauna, prin verificari software

Mecanismele hardware sunt deseori rigide, implicite, imprecise si nu au acelasi grad de optimizare ca si cele software

Mecanisme conditionale – permit un control detaliat al accesului prin intermediul unor declaratii de tip “if” incorporatein codul sursa

Definirea domeniul de date – structuri de date per proces ce impiedica implicit setul de resurse pe care un proces le poate accesa

Spatiile de adrese – suport detaliat pentru a controla detaliat folosirea memoriei fizice

Protectia memoriei – suport detaliat pentru un control explicit al citirii, scrierii, si executiei accesului catre adrese existente

Page 10: MASINI VIRTUALE

Sebastian Biemuller, Hardware-Supported Virtualization for the L4 Microkernel, pag. 17-25, Septembrie 2006

Steven Hand, Andrew Warfield, Keir Fraser, Evangelos Kotsovinos, Dan Magenheimer, Are Virtual Machines Monitors Microkernels Done Right?, 2005

Brian Bershad, Stefan Savage, Przemyslaw Pardyak, David Becker, Marc Fiuczynsky, Protection is a Software Issue, Dept. of Computer Science and Engineering, University of Washington, 2002

Xiaoqi Lu, Scott Smith, A Secure Microkernel Virtual Machine, Department of Computer Science, The Johns Hopkins University, 2005

http://en.wikipedia.org/wiki/L4_microkernel_family http://en.wikipedia.org/wiki/Microkernel