Concetti Chiave
- Il sistema operativo funge da interfaccia tra utente e hardware, gestendo l'interazione tra software e componenti fisici del computer.
- Struttura a "buccia di cipolla": i programmi del SO sono organizzati in strati gerarchici, con i livelli più interni a diretto contatto con l'hardware.
- Il nucleo gestisce l'assegnazione della CPU ai vari programmi in esecuzione, permettendo l'esecuzione multiprogrammata.
- La gestione della memoria RAM è cruciale: il SO fraziona i programmi in pagine e segmenti per ottimizzare l'uso della memoria limitata.
- Il file di paging simula una memoria virtuale, consentendo il caricamento e lo scaricamento dei programmi tramite operazioni di swapping.
Il sistema operativo (chiamato SO) è l’interfaccia tra l’uomo e la macchina e gestisce hardware e software. Appartiene al software di base.
Struttura a buccia di cipolla
Il SO è formato da un insieme di programmi con compiti specifici ciascuno secondo lo schema detto “a buccia di cipolla” ( onion skin). Quelli più interni interagiscono di più con l’hardware mentre quelli più esterni con l’utente. Sono disposti in maniera gerarchica, ciascuno strato è dipendente dallo stato inferiore.
Ora vediamo le funzioni dei due strati più interni dello schema Onion skin, sono anche i due strati più importanti: nucle e il gestore della memoria centrale.
Il nucleo ( kernel ) gestisce la CPU e organizza l’esecuzione dei vari programmi. Associa un processo a ogni programma in esecuzione. I moderni SO eseguono contemporaneamente più programmi perciò si dicono multiprogrammati. Infatti nella memoria di un computer possono risiedere più programmi ed è il nucleo a scegliere quale eseguire alternando l’esecuzione di essi portandoli al termine tutti.
Gestione della memoria RAM
Per poter essere eseguiti tutti i programmi devono essere caricati nella memoria RAM ma poiché essa possiede una dimensione limitata non è in grado di contenere nello stesso momento tutti i programmi esecuzione. Il SO si occupa di frazionare la memoria e i programmi in sezioni chiamate pagine e segmenti, effettuando di volta in volta il caricamento e lo scaricamento del programma man mano che viene eseguito oppure termina la sua esecuzione. Inoltre il SO garantisce una grande quantità di memoria, simulando una memoria virtuale rispetto a quella fisica reale (attraverso memorie secondarie.
Quella memoria secondaria è chiamata file di paging . Le operazioni di spostamento dalla memoria di massa a quella fisica sono chiamate swapping.
Domande da interrogazione
- Qual è il ruolo principale del sistema operativo (SO) nel computer?
- Come è strutturato il sistema operativo secondo il modello "a buccia di cipolla"?
- In che modo il sistema operativo gestisce la memoria RAM durante l'esecuzione dei programmi?
Il sistema operativo funge da interfaccia tra l'uomo e la macchina, gestendo sia l'hardware che il software, e appartiene al software di base.
Il SO è composto da vari programmi disposti in modo gerarchico, dove gli strati più interni interagiscono maggiormente con l'hardware e quelli esterni con l'utente, con ogni strato che dipende dallo stato inferiore.
Il SO fraziona la memoria RAM in sezioni chiamate pagine e segmenti, gestendo il caricamento e lo scaricamento dei programmi in esecuzione, e simula una memoria virtuale per ottimizzare l'uso della memoria fisica disponibile.