Home | Search | Help  
Home Page Università di Genova

Il software

Argomento della lezione
La macchina hardware da sola non basta: per far funzionare un calcolatore è necessario introdurre il concetto di software, ovvero quell'insieme di programmi che permettono di trasformare un insieme di circuiti elettronici in uno strumento in grado di
  1. gestire in modo efficiente l'elaboratore e le sue risorse
  2. creare un ambiente per l'interazione con l'utente
  3. portare a termine i compiti richiesti dall'utente
In questa lezione vedremo il concetto di macchina virtuale e cominceremo ad introdurre alcuni dei concetti di base legati al sistema operativo. In particolare, vedremo in modo molto astratto come il sistema operativo sia in grado di gestire più programmi "contemporaneamente" attivi.
Materiale scaricabile
Lucidi della lezione
  1. in formato PDF, 2 diapositive per pagina (circa 325 KB)
  2. in formato PDF, 3 diapositive per pagina, con spazio per le note (circa 325 KB)
  3. in formato PDF, 6 diapositive per pagina (circa 315 KB)
Glossario
Le definizioni di questo glossario sono prese dal sito web http://www.webopedia.com
  1. software
  2. shell
  3. prompt
  4. comandi
  5. sistema operativo
    1. Microsoft Windows
    2. Apple Macintosh
    3. UNIX
    4. Linux
  6. boot (bootstrap)
  7. virus
  8. multitasking
  9. time sharing
  10. bug
  11. patch
Esercizi
  1. Supponendo di avere nella coda dei processi pronti i processi P1, P2, P3 e P4 per i quali sono note le durate (in termini di generiche unità di tempo).

    P1: 80 unità P2: 50 unità
    P3: 10 unità P4: 30 unità

    1. Qual è la sequenza di esecuzione dei processi nell'ipotesi di politica di scheduling di tipo Round Robin con quanto di tempo pari a 15 unità?
    2. Dal punto di vista del processo P1, la scelta di una politica di questo tipo è penalizzante?
    3. E dal punto di vista del processo P3? (se queste ultime due domande non sono chiare ... chiedete aiuto al forum ...)

  2. Consideriamo ancora i quattro processi precedenti ma questa volta, oltre alle durate, specifichiamo anche gli istanti di arrivo nella coda dei processi pronti.

    P1: arrivo al tempo 0, durata 80 unità P2: arrivo al tempo 20, durata 50 unità
    P3: arrivo al tempo 25, durata 10 unità P4: arrivo al tempo 150, durata 30 unità

    1. Qual è la sequenza di esecuzione dei processi nell'ipotesi di politica di scheduling di tipo Round Robin con quanto di tempo pari a 15 unità? (confrontate il risultato con quello ottenuto nell'Esercizio 1)

  3. Consideriamo i seguenti processi dei quali sono noti gli istanti di arrivo nella coda dei processi pronti e i tempi di calcolo

    P1: arrivo al tempo 0, durata 30 unità P2: arrivo al tempo 10, durata 15 unità
    P3: arrivo al tempo 20, durata 5 unità P4: arrivo al tempo 40, durata 5 unità

    1. Qual è la sequenza di esecuzione dei processi nell'ipotesi di politica di scheduling di tipo Shortest Job First (SJF)?
    2. Qual è la sequenza di esecuzione dei processi nell'ipotesi di politica di scheduling di tipo Shortest Remaining Time First (SRTF)?

    Ricordo che nella politica SJF ogni volta che c'è un cambio di contesto (cioè quando il processo correntemente in esecuzione richiede una operazione di I/O oppure termina) si manda in esecuzione in processo più breve che è in attesa nella coda dei processi pronti. Nel caso di una politica di tipo SRTF, invece, si manda sempre in esecuzione il processo più breve ma, se nel frattempo arriva nella coda dei pronti un processo che richiede un minor tempo di calcolo, si forza il cambio di contesto, mandando in esecuzione l'ultimo processo arrivato. Quindi, in questo secondo caso, il processo in esecuzione può lasciare autonomamente il processore ma può anche essere temporaneamente sospeso e reinserito nella cosa dei processi pronti. Notate l'analogia con la politica di scheduling Round Robin?

  4. Consideriamo i due processi P1 e P2 dei quali sono noti i tempi di calcolo e i tempi di attesa di operazioni di I/O (quelli in grigio)
    P1
    10 20 10 20 10 20 10

    P2
    30 5 20 40 5


    1. Qual è la sequenza di esecuzione dei processi nell'ipotesi di politica di scheduling di tipo Round Robin con quanto di tempo pari a 10 unità?

    Osservate che in questo esercizio dovete gestire due code di processi, quella dei processi pronti e quella dei processi in attesa ...
Da studiare per questa parte
Introduzione all'informatica: capitolo 4, Il software
Introduzione all'informatica: capitolo 5, Il sistema operativo, fino a pag. 118
(non abbiamo fatto proprio tutto ...)


torna alla lezione precedente
torna alla prima pagina del corso
vai alla prossima lezione