Compito di Sistemi Operativi, 6/6/2000

Compito di Sistemi Operativi, Prof. Mancini: 6 giugno 2000



TESTO


 

  1. (punti: -1,4)
    Il codice del seguente processo P contiene una chiamata alla primitiva fork di Unix che termina con successo e genera un processo figlio Pi:

    
    if (fork != 0) {
    		  codice-A
      } else {
    		  exec codice-B
    }
    codice-D
    

    1. Il processo Pi esegue sicuramente il codice-A e potrebbe eseguire il codice-D;
    2. Il processo Pi  esegue sicuramente il codice-A e non esegue mai il codice-D;
    3. Il processo P  esegue sicuramente il codice-A e potrebbe eseguire il codice-D;
    4. Il processo P  esegue sicuramente il codice-A e non esegue mai il codice-D;
    5. Il processo Pi  esegue sicuramente il codice-B e potrebbe eseguire il codice-D;
    6. Il processo Pi  esegue sicuramente il codice-B e non esegue mai il codice-D;
    7. Il processo P  esegue sicuramente il codice-B e potrebbe eseguire il codice-D;
    8. Il processo P  esegue sicuramente il codice-B e non esegue mai il codice-D;
    9. Il processo Pi  esegue sicuramente il codice-D e potrebbe eseguire il codice-B;
    10. Il processo Pi  esegue sicuramente il codice-D e non esegue mai il codice-B;
    11. nessuna delle affermazioni precedenti è corretta.

  2. (punti: -1,4)
    Si parla di risorse prerilasciabili se:

    1. le singole risorse possono essere utilizzate contemporaneamente da più processi. Sono esempi di risorse prerilasciabili le stampanti;
    2. il loro stato non si modifica durante l'utilizzo o comunque può essere facilmente salvato e ripristinato;
    3. la funzione di gestione può sottrarre una risorsa al processo al quale è assegnata senza che questo la rilasci esplicitamente. Sono esempi di risorse prerilasciabili le stampanti;
    4. la funzione di gestione non può sottrarre una risorsa al processo al quale è assegnata senza che questo la rilasci esplicitamente. Sono esempi di risorse prerilasciabili le stampanti;
    5. la funzione di gestione può sottrarre una risorsa al processo al quale è assegnata senza che questo la rilasci esplicitamente. Sono esempi di risorse prerilasciabili i processori;
    6. la funzione di gestione non può sottrarre una risorsa al processo al quale è assegnata senza che questo la rilasci esplicitamente. Sono esempi di risorse prerilasciabili i processori;
    7. le singole risorse sono utilizzabili dai processi in mutua esclusione;
    8. nessuna delle affermazioni precedenti è corretta.

  3. (punti: -1,4)
    Il fenomeno della frammentazione interna:

    1. in caso di organizzazione della memoria centrale con paginazione statica, è tanto più rilevante quanto più la lunghezza media dei programmi è grande rispetto all'ampiezza della pagina;
    2. in caso di organizzazione della memoria centrale con paginazione, è tanto meno rilevante quanto più la lunghezza media dei programmi è grande rispetto all'ampiezza della pagina;
    3. riduce il grado di utilizzazione della memoria;
    4. non riduce il grado di utilizzazione della memoria;
    5. rimuove il vincolo della contiguità dello spazio fisico in memoria centrale;
    6. mantiene il vincolo della contiguità dello spazio fisico in memoria centrale;
    7. nessuna delle affermazioni precedenti è corretta.

  4. (punti: -1,4)
    Ad ogni processo del sistema operativo Unix viene associata logicamente una quadrupla ( proprietario reale, gruppo reale, proprietario effettivo, gruppo effettivo):

    1. si assuma che un processo invochi la chiamata di sistema exec per eseguire il programma contenuto in un archivio Fi ; exec assegna al proprietario reale, e al gruppo reale i valori corrispondenti al proprietario dell'archivio Fi  se e solo se è vera la condizione SETUID contenuta nell' i-node di Fi ;
    2. si assuma che un processo invochi la chiamata di sistema exec per eseguire il programma contenuto in un archivio Fi ; exec assegna al proprietario effettivo, e al gruppo effettivo i valori corrispondenti al proprietario dell'archivio Fi  se e solo se è vera la condizione SETUID contenuta nell' i-node di Fi ;
    3. l'identificazione degli utenti si propaga ai processi, nell'istante di creazione ogni processo è attribuito ad un utente proprietario assegnando opportunamente i valori alla quadrupla che non può mai essere modificata durante l'esecuzione del processo;
    4. l'identificazione degli utenti si propaga ai processi, nell'istante di creazione ogni processo è attribuito ad un utente proprietario assegnando opportunamente i valori alla quadrupla che può essere modificata durante l'esecuzione del processo;
    5. i meccanismi di protezione di Unix non consentono la migrazione dei processi in domini di protezione diversi da quelli dei loro proprietari;
    6. nessuna delle affermazioni precedenti è corretta.

  5. (punti: -1,4)
    Nell'utilizzare più sistemi di archiviazione ospitati su dischi diversi

    1. di un gestore degli archivi dipendente dai dispositivi, un utente specifica esplicitamente quale sistema di archiviazione intende di volta in volta utilizzare ed individua gli archivi per mezzo di cammini definiti nelle strutture gerarchiche dei rispettivi sistemi, che rimangono completamente distinte;
    2. di un gestore degli archivi dipendente 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;
    3. di un gestore degli archivi indipendente dai dispositivi, un utente specifica esplicitamente quale sistema di archiviazione intende di volta in volta utilizzare ed individua gli archivi per mezzo di cammini definiti nelle strutture gerarchiche dei rispettivi sistemi, che rimangono completamente distinte;
    4. di 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. nessuna delle affermazioni precedenti è corretta.

  6. (punti: 6)
    Illustrare in al più 70 parole la nozione di monitor.

  7. (punti: 6)
    Lo stallo di un sistema i cui processi sono in competizione per l'utilizzo di risorse si verifica sotto quattro condizioni: elencarle.

  8. (punti: 6)
    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  11 7
    P2  3 7
    P3  10 10
    P4  6 9
    P5  0 17

    Assegnare questo insieme di processi ad un processore in base alla politica Round Robin considerando un quanto di tempo di 4 millisecondi.

    Calcolare il valor medio del tempo di attesa ed il valor medio del tempo di turnaround dei processi.

  9. Considerare la seguente stringa di riferimenti alla memoria di un processo in un sistema con memoria virtuale
    S = 20 18 15 10 6 2 15 18 20 6 10 11 8 6 10 9 7 8 11 2

    1. (punti: 3)
      Illustrare il comportamento dell'algoritmo LRU di sostituzione delle pagine per una memoria fisica di 5 blocchi. Calcolare il numero di page fault che si verificano.
    2. (punti: 3)
      Illustrare il comportamento dell'algoritmo Second Chance di sostituzione delle pagine per una memoria fisica di 5 blocchi. Calcolare il numero di page fault che si verificano.

  10. (punti: 9)
    Considerare i seguenti tipi di semaforo: il tipo booleano, in cui l'esecuzione di una V su semaforo "verde" non produce effetto, e il tipo contatore in cui un tale evento viene invece ricordato: ogni esecuzione di una V consente la prosecuzione di un processo che esegue una P, sia che quest'ultima avvenga prima, sia che avvenga dopo la V.

    Sia la classe BSem una data implementazione in Java dei semafori di tipo booleano. Usando BSem, definire in Java una classe CSem che realizzi semafori di tipo contatore.



Risposte Compito di Sistemi Operativi, 6/6/2000


  1. c, f

  2. b, e

  3. b, c

  4. b, d

  5. a,d



  6. Politica Round Robin

P5

P2

P5 P4 P2 P3 P1 P5 P4 P3 P1 P5 P4 P3 P5
0-4ms 4-8 8-12 12-16 16-19 19-23 23-27 27-31 31-35 35-39 39-42 42-46 46-47 47-49 49 - 50

50ms

                Tempo medio d'attesa: 127/5
                Turn Around medio: 177/5


  1.  
    1. ALGORITMO LRU

         Pagina Riferita
  20 18 15 10 6 2 15 18 20 6 10 11 8 6 10 9 7 8 11 2
0 20 20 20 20 20 2 2 2 2 2 10 10 10 10 10 10 10 10 10 2
1 18 18 18 18 18 18 18 18 18 18 18 8 8 8 8 8 8 8 8
2 15 15 15 15 15 15 15 15 15 11 11 11 11 11 7 7 7 7
3 10 10 10 10 10 20 20 20 20 20 20 20 9 9 9 9 9
4 6 6 6 6 6 6 6 6 6 6 6 6 6 6 11 11

                        5 + 9 = 14 page fault

  


  1.  
    1. ALGORITMO SECOND CHANCE

        TurnoMS

  20 18 15 10 6 2 15 18 20 6 10 11 8 6 10 9 7 8 11 2
0 201 201 201 201 201 21 21 21 21 21 20 20 20 61 61 61 60 60 60 21
1 181 181 181 181 180 180 181 180 180 101 101 101 101 101 100 71 71 71 71
2 151 151 151 150 151 151 150 150 150 111 111 111 111 110 110 110 111 110
3 101 101 100 100 100 201 201 201 201 200 200 200 91 91 91 91 90
4 61 60 60 60 60 61 60 60 81 81 81 81 80 81 81 80

                        5 + 9 = 14 page fault

TurnoMS=4

 

 

-- AntonioValletta - 17 Dec 2001


This topic: Sistemioperativi1 > 6Giugno2000
Topic revision: r2 - 2002-01-11 - AntonioValletta
 
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