Documenti di Didattica
Documenti di Professioni
Documenti di Cultura
Strati Funzionali Del Sistema Operativo PDF
Strati Funzionali Del Sistema Operativo PDF
Si ha anche l’interprete dei comandi, che è un’interfaccia di interazione con l’utente; può essere a
linea di comando (CUI) o grafica (GUI).
PROGRAMMI UTENTE
strati INTERPRETE DEI COMANDI (attiva i programmi utente o di sistema)
funzionali FILE SYSTEM (controlla e gestisce l'accesso ai files)
del GESTORE DELLE PERIFERICHE (gestisce le operazioni di I/O delle periferiche)
sistema GESTORE DELLA MEMORIA (alloca e gestisce la RAM)
Ad esempio l’interprete dei comandi può richiedere l’esecuzione di tutte le funzioni di più basso
livello rispetto ad esso; quando l’utente avvia un programma, questo deve divenire un processo in
esecuzione e l’interprete, in modo trasparente all’utente, deve effettuare le seguenti operazioni :
accede al programma scritto sulla memoria di massa tramite il gestore del file system
Allocare la memoria RAM necessaria a caricare il programma tramite il gestore della memoria
Attivare il processo tramite il gestore dei processi
Interrupt
Gli interrupt possono essere di due tipi: sincroni e asincroni.
Quelli sincroni sono detti anche interni perché è il processo stesso che richiede un operazione di
I/O che coinvolge una periferica (fra le periferiche viene inserita anche la memoria di massa); il
processo utente si interrompe ed interviene il sistema operativo: questa chiamata al sistema viene
chiamata Super Visor Call che fa passare l’esecuzione da un processo utente ad uno del kernel del
sistema operativo.
La sospensione avviene in modo tale che il processo riprenda da dove è stato interrotto e con gli
stessi dati: si salva il contesto e si copiano i valori dei registri, tra cui PC (Program Counter) nella
zona di memoria detta descrittore del processo o PCB (process control block).
Quando bisogna rimandare il processo di nuovo in esecuzione si ripristina il contesto copiando i
valori dal descrittore del processo ai registri della CPU.
Il context switching è quell’operazione complessiva di sospensione di un processo, salvataggio dello
stato tramite il PCB e scelta di un altro processo dalla ready list, ripristinandone lo stato e
rendendolo attivo.