Compito di Sistemi Operativi, 26/9/2000

Compito di Sistemi Operativi, Prof. Mancini: 26 settembre 2000



TESTO


  1. (punti: -1,4)

  2. La gestione del processore in ordine di arrivo (FIFO):

    1. considera il processore una risorsa prerilasciabile e non assegna a tutti i processi pronti uguale priorità;
    2. non considera il processore una risorsa prerilasciabile e non assegna a tutti i processi pronti uguale priorità;
    3. non considera il processore una risorsa prerilasciabile ed assegna a tutti i processi pronti uguale priorità;
    4. considera il processore una risorsa prerilasciabile ed assegna a tutti i processi pronti uguale priorità;
    5. è particolarmene adatta per i processi interattivi;
    6. non è particolarmene adatta per i processi interattivi;
    7. penalizza i processi che utilizzano il processore per breve tempo;
    8. non penalizza i processi che utilizzano il processore per breve tempo;
    9. nessuna delle affermazioni precedenti è corretta.

  3. (punti: -1,4)

  4. La sincronizzazione fra un processo esterno ed il suo processo di controllo avviene sugli eventi booleani DBusy e DReady. In particolare:

    1. L'operazione wait(DBusy) è eseguita sul dispositivo ed è interpretabile con attesa attiva;
    2. L'operazione wait(DBusy) è eseguita dal processo di controllo ed è interpretabile con attesa attiva;
    3. L'operazione wait(DBusy) è eseguita sul dispositivo ed è interpretabile come l'assegnamento DBusy:=true;
    4. L'operazione wait(DBusy) è eseguita dal processo di controllo ed è interpretabile come l'assegnamento DBusy:=true;
    5. L'operazione signal(DBusy) è eseguita sul dispositivo ed è interpretabile con attesa attiva;
    6. L'operazione signal(DBusy) è eseguita dal processo di controllo ed è interpretabile con attesa attiva;
    7. L'operazione signal(DBusy) è eseguita sul dispositivo ed è interpretabile come l'assegnamento DBusy:=true;
    8. L'operazione signal(DBusy) è eseguita dal processo di controllo ed è interpretabile come l'assegnamento DBusy:=true;
    9. nessuna delle affermazioni precedenti è corretta.

  5. (punti: -1,4)

  6. La gestione dei dispositivi è strutturata in più livelli di astrazione:

    1. il primo livello si occupa dei segnali di sincronizzazione e della trasmissione dell'informazione dall'unità centrale ai dispositivi e viceversa, ed è realizzato interamente dal processo di controllo.
    2. il primo livello ha l'obiettivo di astrarre largamente dai formati e dalle modalita' di funzionamento dei dispositivi.
    3. le funzioni del primo livello includono quelle delle primitive hP ed hV;
    4. il primo livello realizza un gestore degli archivi indipendente dai dispositivi, un utente non specifica esplicitamente quale sistema di archiviazione intende di volta in volta utilizzare ed individua gli archivi per mezzo di cammini definiti in un unica struttura gerarchica;
    5. il secondo livello si occupa dei segnali di sincronizzazione e della trasmissione dell'informazione dall'unità centrale ai dispositivi e viceversa, ed è realizzato dal nucleo.
    6. il secondo livello ha l'obiettivo di astrarre largamente dai formati e dalle modalita' di funzionamento dei dispositivi.
    7. le funzioni del secondo livello includono quelle delle primitive hP ed hV;
    8. nessuna delle affermazioni precedenti è corretta.

  7. (punti: -1,4)

  8. L'insieme di lavoro (working set) WS(t,d) di un processo P al tempo virtuale t è definito come:

    1. l'insieme delle pagine fisiche di memoria virtuale accessibili da P al tempo t;
    2. l'insieme delle pagine dell'intera memoria virtuale marcate come riferite all'istante t ma non accedute da P;
    3. l'insieme delle pagine fisiche di memoria virtuale allocate a P, la dimensione di tale insieme non è variabile nel tempo;
    4. l'insieme delle pagine riferite da P nell'intervallo (t - d,t], la dimensione di tale insieme è variabile nel tempo;
    5. l'insieme delle pagine riferite da P nell'intervallo (t,t---+ d], la dimensione di tale insieme è variabile nel tempo;
    6. l'insieme delle pagine riferite da P nell'intervallo (t - d,t], la dimensione di tale insieme non è variabile nel tempo;
    7. l'insieme delle pagine riferite da P nell'intervallo (t,t---+ d], la dimensione di tale insieme non è variabile nel tempo;
    8. l'insieme delle pagine vittime che sono state rimosse nell'intervallo (t - d,t];
    9. l'insieme delle pagine vittime che sono state rimosse nell'intervallo (t,t

      d];

    10. nessuna delle affermazioni precedenti è corretta.

  9. (punti: -1,4)

  10. Quali delle seguenti strutture dati appartengono al sistema di archiviazione di Unix:

    1. La TabellaDeiCollegamenti contiene le copie dei descrittori di archivio in uso da parte di almeno un processo;
    2. La TabellaDeiCollegamenti  registra lo stato di assegnazione su disco dei descrittori di archivio;
    3. La TabellaDeiCollegamenti  contiene, fra l'altro, i puntatori alla posizione corrente degli archivi aperti;
    4. La MappaDeiDescrittoriDiArchivio registra lo stato di assegnazione su disco dei descrittori di archivio;
    5. La TabellaDeiDescrittoriInMS contiene, fra l'altro, i puntatori alla posizione corrente degli archivi aperti;
    6. La MappaDeiDescrittoriDiArchivio  contiene le copie dei descrittori di archivio in uso da parte di almeno un processo;
    7. La TabellaDeiDescrittoriInMS registra lo stato di assegnazione su disco dei descrittori di archivio;
    8. La MappaDeiDescrittoriDiArchivio  contiene, fra l'altro, i puntatori alla posizione corrente degli archivi aperti;
    9. La TabellaDeiDescrittoriInMS contiene le copie dei descrittori di archivio in uso da parte di almeno un processo;
    10. nessuna delle affermazioni precedenti è corretta.

  11. (punti: 6)

  12. Illustrare in al più 70 parole i meccanismi conosciuti per la sincronizzazione dei processi.

  13. (punti: 6)

  14. Illustrare in al più 70 parole le principali caratteristiche di un sistema multiprogrammato.

  15. (punti: 6)

  16. Considerare un insieme di cinque processi P1, P2, P3, P4, P5  con i seguenti tempi di arrivo e tempi di esecuzione in millisecondi:

    Processo Tempo di arrivo Tempo di esecuzione
    P1 0 13
    P2 3 13
    P3 7 13
    P4 13 7
    P5 19 7
    Assegnare questo insieme di processi ad un processore in base alla politica Round Robin considerando un quanto di tempo di 6 millisecondi. Calcolare il valor medio del tempo di attesa ed il valor medio del tempo di turnaround dei processi.
  17. Considerare la seguente stringa di riferimenti alla memoria di un processo in un sistema con memoria virtuale

  18. S = 6 7 8 9 6 7 10 6 7 8 9 10 8 10 6 9 8 6 7 1

    1. (punti: 3)

    2. Illustrare il comportamento dell'algoritmo FIFO di sostituzione delle pagine per una memoria fisica di 3 blocchi. Calcolare il numero di page fault che si verificano.

    3. (punti: 3)

    4. Illustrare il comportamento dell'algoritmo FIFO di sostituzione delle pagine per una memoria fisica di 4 blocchi. Calcolare il numero di page fault che si verificano.

  19. (punti: 16)

  20. Si consideri la seguente implementazione di un monitor:

      Semaphore mutex; 
      dataType MioMonitor
        begin
        MiaCondizione c1;
        MiaCondizione c2;
        entry mmm () {
            P(mutex);
                ...
            ... c1.myDelay();
                ...
            ...c2.myContinue();
                ...
            V(mutex);
        }
        end MioMonitor
    Definire una classe Java che realizzi il tipo di dato astratto MiaCondizione realizzando le operazioni c.myDelay() e c.myContinue() usate dai processi per sincronizzarsi su una condizione c. La sincronizzazione deve avvenire secondo il modello "Gladiator", cioè con myContinue non bloccanti. Il tipo di dato Semaphore, una implementazione dei semafori, è da considerarsi come dato. Si assuma inoltre che il semaforo mutex sia una variabile globale, ovvero condivisa tanto da oggetti di tipo MioMonitor che da quelli di tipo MiaCondizione.



Risposte Compito di Sistemi Operativi, 26/9/2000


  1. c, f, g
  2. a, h
  3. c, f
  4. d
  5. c, d, i
  6.  
  7. Si veda p.72 Maestrini
  8. Politica Round Robin (q=6ms)

P1
P2
P1 P3 P2 P4 P1 P5 P3 P2 P4 P5 P3
0-6ms 6-12 12-18 18-24 24-30 30-36 36-37 37-43 43-49 49-50 50-51 51-52 52-53 53ms
                Tempo medio d'attesa: 148/5
                Turn Around medio: 201/5

  1.  
    1. ALGORITMO FIFO: di sostituzione pagine memoria 3 blocchi

    2.  

       
       
       
       
       
       
       

      Pagina Riferita

  6 7 8 9 6 7 10 6 7 8 9 10 8 10 6 9 8 6 7 1
F0 6 6 6 9 9 9 10 10 10 10 10 10 10 10 6 6 6 6 6 6
F1 7 7 7 6 6 6 6 6 8 8 8 8 8 8 8 8 8 7 7
F2 8 8 8 7 7 7 7 7 9 9 9 9 9 9 9 9 9 1
P P P P P P P P P P P P
                        3---+ 9 = 12 page fault
 


  1.  
    1. ALGORITMO FIFO: di sostituzione pagine memoria 4 blocchi

    2.  

       
       
       
       
       
       
       

      Pagina Riferita

  6 7 8 9 6 7 10 6 7 8 9 10 8 10 6 9 8 6 7 1
F0 6 6 6 6 6 6 10 10 10 10 9 9 9 9 9 9 9 9 9 1
F1 7 7 7 7 7 7 6 6 6 6 10 10 10 10 10 10 10 10 10
F2 8 8 8 8 8 8 7 7 7 7 7 7 6 6 6 6 6 6
F3 9 9 9 9 9 9 8 8 8 8 8 8 8 8 8 7 7
P P P P P P P P P P P P P
                        4---+ 9 = 13 page fault
 
  1.  realizzazione tipo di dato MiaCondizione

Topic revision: r1 - 2001-12-17 - AntonioValletta






 
Questo sito usa cookies, usandolo ne accettate la presenza. (CookiePolicy)
Torna al Dipartimento di Informatica
This site is powered by the TWiki collaboration platform Powered by PerlCopyright © 2008-2024 by the contributing authors. All material on this collaboration platform is the property of the contributing authors.
Ideas, requests, problems regarding TWiki? Send feedback