Logo NEXUS

NEXUS didattica

← Torna indietro
Informatica / Lezione Teorica

Architettura Monolitica e Microkernel

Confronto strutturale tra i sistemi operativi a kernel monolitico e i sistemi basati su microkernel: vantaggi, svantaggi e prestazioni.

1. Introduzione alle Architetture dei Sistemi Operativi

Il modo in cui un sistema operativo organizza le proprie funzioni all'interno del kernel definisce la sua architettura strutturale. Le due filosofie storiche e contrapposte principali sono il Kernel Monolitico e il Microkernel.

2. Il Kernel Monolitico

Nell'architettura monolitica, tutti i servizi di base del sistema operativo (gestione dei processi, memoria, file system, driver di periferica e stack di rete) risiedono ed eseguono all'interno dello stesso grande spazio di indirizzamento in modalità privilegiata ($\text{Ring 0}$).

3. L'Architettura Microkernel

Il approccio Microkernel riduce il codice eseguito in modalità privilegiata allo stretto indispensabile (gestione basilare dei thread, IPC - Inter-Process Communication e gestione della memoria virtuale). Tutti gli altri servizi (driver, file system, server di rete) vengono spostati nello spazio utente ($\text{Ring 3}$) come normali processi isolati.

Confronto Prestazionale: $\text{Prestazioni Monolitiche} > \text{Prestazioni Microkernel}$, ma $\text{Robustezza Microkernel} > \text{Robustezza Monolitica}$. La scelta dipende dal bilanciamento richiesto tra velocità di esecuzione e tolleranza agli errori.

4. Simulatore di Architettura del Kernel

Seleziona un'architettura di sistema per analizzarne il comportamento operativo, la gestione degli errori e l'efficienza di comunicazione.

kernel-architecture-simulator@nexus-ide:~ Monolithic vs Microkernel Inspector
> Seleziona un'architettura per simulare il comportamento dei servizi e la gestione dei fallimenti...