Cos'è un hypervisor?

Un hypervisor è un tipo unico di software che consente a un computer di eseguire più di un sistema operativo (OS). Attraverso un processo noto come virtualizzazione, il software inganna ogni sistema operativo nel pensare che abbia accesso esclusivo a un particolare set di hardware. Si trova tra l'hardware fisico e il sistema operativo e presenta un set virtuale di hardware a tutti gli altri software in esecuzione sulla macchina. Gestisce inoltre il flusso di informazioni tra software, hardware virtualizzato e hardware fisico. Questo tipo di software viene utilizzato sia nelle impostazioni del consumatore che delle imprese.

Nella maggior parte dei casi, il sistema operativo di un computer funziona in uno stato altamente privilegiato in cui ha un accesso senza limiti all'hardware della macchina mentre le applicazioni funzionano in uno stato meno privilegiato e devono fare affidamento sul sistema operativo. Questi diversi livelli di privilegi di accesso hardware sono noti come anelli, con il sistema operativo tradizionalmente in esecuzione nell'anello 0; Le applicazioni utente vengono eseguite negli anelli 1–3, che hanno meno privilegi. Questo modello funziona bene per la maggior parte del tempo,Ma cade completamente quando si cerca di eseguire più di un sistema operativo su un singolo computer contemporaneamente. Un hypervisor risolve questo problema usando una tecnica chiamata virtualizzazione.

La virtualizzazione non è una nuova idea, ma è diventata una parola d'ordine dalla metà degli anni 2000 in quanto le società e l'industria della tecnologia dell'informazione (IT) hanno realizzato il suo potenziale per ridurre i costi e aumentare l'efficienza. Esistono molti approcci diversi alla virtualizzazione, ma l'idea di base è quella di creare set simulati di hardware che sono spesso noti come macchine virtuali. Nel caso di un hypervisor, che può anche essere chiamato un monitor della macchina virtuale, ogni macchina virtuale contiene un sistema operativo "ospite". L'hypervisor stesso può funzionare direttamente sull'hardware fisico, nel qual caso è noto come tipo "nudo metal" o all'interno di un sistema operativo host come hypervisor "software".

Hypervisor deve usare un po 'di sofistaTecniche a gabine per gestire i loro sistemi operativi ospiti e assicurarsi che non siano in conflitto tra loro. Poiché un sistema operativo all'interno di una macchina virtuale non è a conoscenza del fatto che sia stato privato dei privilegi di Ring 0, può tentare di svolgere funzioni limitate senza autorizzazione. In questi casi, l'hypervisor può intercettare una funzione prima che raggiunga l'hardware, esegui le istruzioni in modo da non causare danni ad altri sistemi operativi in ​​esecuzione sull'hardware e restituire il risultato al sistema operativo originale. Conosciuta come una tecnica di "trappola e emulare", questo è solo uno dei tanti concetti avanzati unici per il mondo della virtualizzazione.

Poiché questo tipo di software è diventato più importante e redditizio, più aziende hanno cercato modi per alleviare il carico su un hypervisor e fornire maggiori prestazioni. I fornitori di software hanno modificato i loro sistemi operativi per essere consapevoli delle macchine virtuali su cui stanno eseguendo, il che significa meno tipi di scenari trap-andemular. I fornitori di hardware hanno un fileSupporto DDED per un nuovo livello di privilegi a volte noto come Ring -1. Programmi software più recenti possono trarre vantaggio da una o entrambe queste tecniche per aumentare le prestazioni.

Ipervisori possono ora essere trovati in una varietà di prodotti sia a livello di consumatore che aziendale. I prodotti di consumo che consentono a un sistema operativo di funzionare all'interno di un altro spesso utilizzano un hypervisor di tipo software. Nello spazio aziendale, il software consente di consolidare i server sottoutilizzati che eseguono sistemi operativi diversi. Gli sviluppatori di software potrebbero utilizzare questo approccio per eseguire più istanze di sistemi operativi simili o addirittura identici al fine di testare i problemi di compatibilità.

ALTRE LINGUE

Questo articolo è stato utile? Grazie per il feedback Grazie per il feedback

Come possiamo aiutare? Come possiamo aiutare?