1 IL SISTEMA OPERATIVO A che cosa serve un sistema operativo Quando scriviamo un documento con un programma di videoscrittura o impostiamo un calcolo su un foglio elettronico o usiamo un videogioco, non abbiamo l’impressione di “avere a che fare” con il microprocessore, la RAM, le periferiche ecc. Al contrario abbiamo la sensazione di usare una sofisticata macchina da scrivere, una raffinata calcolatrice o una console di gioco. L’ ( ) attraverso cui interagiamo con il dispositivo, ci nasconde tutti i dettagli legati alla gestione dell’ sottostante. Curiosamente, però, il programma di videoscrittura, il foglio elettronico e il videogioco (così come gli altri programmi applicativi) non interagiscono con l’hardware, ma a loro volta utilizzano un’interfaccia per ottenere servizi da un software sottostante chiamato (SO). interfaccia grafica GUI Graphic User Interface hardware sistema operativo Il , quindi, l’utilizzo dell’ e un’ , senza la quale, oggi, sarebbe impossibile utilizzare un computer. sistema operativo gestisce e coordina hardware fornisce interfaccia utente Interfaccia GUI → Programma applicativo → Sistema operativo → Hardware Come è fatto un sistema operativo Il sistema operativo è un software “a strati”, la cui struttura può essere rappresentata dal diagramma in figura. Ogni strato è una porzione del SO che si occupa di una funzione specifica. Al centro c’è il (nucleo), un software che gestisce i processi e le politiche per la condivisione delle risorse. Gli strati esterni gestiscono la memoria, le periferiche di I/O e il sulle memorie di massa, cioè il modo in cui sono organizzati i file e le cartelle sul supporto fisico. Il kernel viene eseguito con i (modalità superuser) e può accedere a tutte le risorse del sistema senza alcuna limitazione. I programmi applicativi girano in modalità utente (user) e, avendo meno privilegi del kernel, non possono disporre liberamente delle risorse hardware, ma solo di quelle concesse dal sistema operativo. kernel File System massimi privilegi