Gestione del processore
Da Wikiversità, l'università aperta.
Questa lezione è solo un abbozzo. Se puoi contribuisci adesso a migliorarla secondo le convenzioni di Wikiversità.
Per l'elenco completo degli stub, vedi la relativa categoria
Per l'elenco completo degli stub, vedi la relativa categoria
|
Gestione del processore
|
|
| Tipo: lezione | |
| Materia: Sistemi operativi | |
| Programma: [[{{{programma1}}}]] | |
| Programma: [[{{{programma2}}}]] | |
| Programma: [[{{{programma3}}}]] | |
| Programma: [[{{{programma4}}}]] | |
Il processore, o unità centrale di elaborazione (o CPU, dall'inglese Central Processing Unit), è una risorsa hardware la cui gestione presenta due problemi:
- In ogni momento, più task possono essere pronti per l'esecuzione, ma solo uno può essere eseguito da un processore; pertanto, occorre decidere quale task eseguire, facendo attendere gli altri. È compito del sistema operativo anche gestire la comunicazione tra processi ed evitare i tempi morti.
- Quando è in esecuzione il sistema operativo, il processore deve poter accedere a tutte le risorse dell'elaboratore; ma, per assicurare l'integrità del sistema, quando è in esecuzione un programma applicativo, il processore deve poter eseguire solo le operazioni consentite dal sistema operativo. Pertanto, occorre fare in modo che il processore funzioni in due modalità: modalità supervisore o modalità utente:
- Nella modalità utente il processore esegue il codice di un utente.
- Nella modalità supervisore (detta anche modalità kernel) il processore esegue il codice del sistema operativo. La CPU passa automaticamente in questa modalità quando avviene un interrupt. Le istruzioni di I/O sono istruzioni privilegiate e possono essere eseguite solamente in questa modalità, pertanto non possono essere gestite direttamente dai programmi. Per questo motivo quando un programma vuole eseguire un'operazione di I/O effettua una chiamata di sistema, ovvero richiede al sistema operativo di effettuare una certa operazione di I/O. Il sistema operativo controlla che i parametri passati siano legali e corretti ed in tal caso gestisce l'I/O.