Come funziona e le caratteristiche del Virtual Machine Monitor (VMM)

Come funziona e le caratteristiche del Virtual Machine Monitor (VMM)

Il Virtual Machine Monitor o VMM è un software che risiede e viene eseguito su una macchina reale e che ha il completo controllo delle risorse hardware.
Esso definisce regola e controlla degli ambienti di esecuzione virtuali (VM) che forniscono agli utenti un accesso diretto ed esclusivo alle risorse della macchina fisica.

Come funziona e le caratteristiche del Virtual Machine Monitor (VMM)

Le caratteristiche principali del VMM sono:

1. Equivalenza: Gli effetti dell’esecuzione di un programma attraverso il VMM devono essere identici a quelli dello stesso programma eseguito direttamente sulla macchina originale (ad eccezione del maggior tempo d’esecuzione dovuto all’overhead del VMM e alla ridotta disponibilità di risorse);

2. Efficienza: La maggior parte delle istruzioni eseguite all’interno di tali ambienti deve essere eseguita direttamente sul processore fisico senza l’intervento del VMM (vedi definizione di Popek-Goldberg), ottenendo di conseguenza un degrado minimo delle prestazioni;

3. Controllo delle risorse: il controllo delle risorse deve essere di esclusiva competenza del VMM.

Il VMM è composto per di più da diversi moduli essenziali:

1. Dispatcher: intercetta le istruzioni sensibili eseguite dalle VM (vedi capitolo seguente “Requisiti di Popek-Goldberg”) e lascia il controllo ai moduli predisposti a gestire la situazione;

2. Allocator: fornisce alle macchine virtuali le risorse necessarie evitando i conflitti (gestione delle risorse hardware);

3. Interpreter: simula le istruzioni che fanno riferimento alle risorse in modi da riflettere la loro esecuzione nell’ambiente delle macchine virtuali (indispensabile in quanto le VM non hanno accesso diretto alle risorse fisiche).

Infine, lo scopo della virtualizzazione dei sistemi e quello di condividere in modo trasparente le risorse hardware di una macchina fisica tra i sistemi operativi di più macchine virtuali, di far eseguire loro piu istruzioni possibili direttamente sul processore senza interazione del VMM e di risolvere potenziali cause di malfunzionamenti dovute alle eventuali mancanze dell’architettura nei confronti dei requisiti di Popek-Goldberg.

Si possono inoltre individuare due tipologie di VMM, in base alla collocazione nell’ambiente della macchina fisica:

1. Il VMM di tipo 1 è posto immediatamente sopra l’hardware ed dispone di tutti i meccanismi di un normale kernel o sistema operativo in quanto a gestione delle memoria, delle periferiche e del processore; in più implementa i meccanismi di gestione delle macchine virtuali. Le macchine virtuali eseguite al di sopra del VMM dispongono di un proprio sistema operativo e sono dette macchine “guest”.

Caratteristiche del Virtual Machine Monitor (VMM) di tipo 1
Caratteristiche del Virtual Machine Monitor (VMM) di tipo 1

2. Il VMM di tipo 2 è un normale processo in esecuzione nell’ambito di un sistema operativo detto “host”. Gestisce direttamente le macchine virtuali, che sono suoi sottoprocessi, mentre la gestione dell’hardware e demandata al sistema ospitante.

Caratteristiche del Virtual Machine Monitor (VMM) di tipo 2
Caratteristiche del Virtual Machine Monitor (VMM) di tipo 2
Precedente Che cos'è la virtualizzazione e la macchina virtuale (VM)? Successivo Le principali tipologie di Virtualizzazione di sistemi

Lascia un commento

*