Le funzioni del sistema operativo sono organizzate per livelli gerarchici. Ogni livello definisce un tipo di servizio e le modalità per essere utilizzato dai livelli superiori.
Ogni livello definisce una macchina virtuale aggiungendo nuove funzionalità alla precedente (ad esempio il primo livello arricchisce l'hardware: trasforma, cioè, l'hardware in una macchina virtuale più facilmente utilizzabile dall'utente). Ogni livello usa le funzioni e i servizi dei livelli più interni.
Un sistema operativo assume, così, una struttura a "buccia di cipolla" (onion skin). Lo strato più interno è l'hardware della macchina, gli strati successivi sono via via più vicini all'utente e alle sue applicazioni:
- Gestione CPU
- Gestore memoria
- Gestione I/O
- Gestore memoria di massa
- Programmi di utilità
- Interprete di comandi
- Programmi utente
Ciascuno strato vede una macchina visrtuale, che corrisponde alla macchina fisica più le primitive fornite dagli strati sottostanti. Le primitive di ciascuno strato possono essere invocate solo dagli strati superiori. Tratto da http://corsi.peano.it
Nessun commento:
Posta un commento