Compito di Sistemi Operativi, Prof. Mancini: 19
gennaio 2000
TESTO
-
(punti: -1,4)
La seguente porzione di codice di un processo P contiene
una chiamata alla primitiva fork di Unix che termina con successo e genera
un processo figlio Pi:
if ($pid = fork) {
codice-A
} elsif (defined $pid) {
exec codice-B
} else {
codice-C
}
codice-D
-
Il processo P esegue sicuramente il codice-A e potrebbe eseguire
il codice-D;
-
Il processo P esegue sicuramente il codice-A e non esegue
mai il codice-D;
-
Il processo P esegue sicuramente il codice-B e potrebbe eseguire
il codice-D;
-
Il processo P esegue sicuramente il codice-B e non esegue
mai il codice-D;
-
Il processo Pi esegue sicuramente il codice-A
e potrebbe eseguire il codice-D;
-
Il processo Pi esegue sicuramente il codice-A
e non esegue mai il codice-D;
-
Il processo Pi esegue sicuramente il codice-B
e potrebbe eseguire il codice-D;
-
Il processo Pi esegue sicuramente il codice-B
e non esegue mai il codice-D;
-
Il processo Pi esegue sicuramente il codice-C
e potrebbe eseguire il codice-D;
-
Il processo Pi esegue sicuramente il codice-C
e non esegue mai il codice-D;
-
nessuna delle affermazioni precedenti è corretta.
-
(punti: -1,4)
Ad ogni processo del sistema operativo Unix viene associata logicamente
una quadrupla ( proprietario reale, gruppo reale, proprietario effettivo,
gruppo effettivo):
-
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;
-
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;
-
i meccanismi di protezione di Unix non consentono la migrazione dei processi
in domini di protezione diversi da quelli dei loro proprietari;
-
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;
-
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;
-
nessuna delle affermazioni precedenti è corretta.
-
(punti: -1,4)
Nell'utilizzare più sistemi di archiviazione ospitati su dischi
diversi
-
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;
-
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;
-
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;
-
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;
-
nessuna delle affermazioni precedenti è corretta.
-
(punti: -1,4)
La gestione del processore in ordine di arrivo:
-
non considera il processore una risorsa prerilasciabile e non assegna a
tutti i processi pronti uguale priorità;
-
considera il processore una risorsa prerilasciabile e non assegna a tutti
i processi pronti uguale priorità;
-
considera il processore una risorsa prerilasciabile ed assegna a tutti
i processi pronti uguale priorità;
-
non considera il processore una risorsa prerilasciabile ed assegna a tutti
i processi pronti uguale priorità;
-
è particolarmente adatta per i processi interattivi;
-
non è particolarmente adatta per i processi interattivi;
-
penalizza i processi CPU-bound rispetto ad eventuali processi I/O-bound;
-
penalizza i processi I/O-bound rispetto ad eventuali processi CPU-bound;
-
nessuna delle affermazioni precedenti è corretta.
-
(punti: 6)
Illustrare in al più 60 parole il meccanismo di controllo degli
accessi basato su capability list.
-
(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 |
0 |
17 |
P2 |
5 |
5 |
P3 |
10 |
10 |
P4 |
7 |
9 |
P5 |
11 |
7 |
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.
-
Considerare la seguente stringa di riferimenti alla memoria di un processo
in un sistema con memoria virtuale
S = 11 8 7 6 10 9 7 8 11 10 6 2 4 6 8 3 1 4 5 11
-
(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.
-
(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.
-
(punti: 9)
Implementare la versione "Mediator" del tipo di dato Monitor utilizzando
un monitor di tipo "Gladiator" (vedi diagrammi allegati).
-
(punti: 9)
Un'archivio contiene una sequenza di n stringhe parzialmente
ordinate,
s1£
s2£...£sm
e sm+1£...£sn.
Realizzare un programma Perl efficiente che ordini l'intero archivio.
Valutare la complessità in tempo e spazio del programma.
Risposte Compito di Sistemi Operativi, 19/1/2000
-
a, h
-
b, e
-
b, c
-
d, f, h
-
Si veda pag. 531 del MAESTRINI
-
Politica Round Robin RoundRobin_19-1-2000.htm (tabella)
-
-
ALGORITMO LRU
Pagina Riferita
|
11 |
8 |
7 |
6 |
10 |
9 |
7 |
8 |
11 |
10 |
6 |
2 |
4 |
6 |
8 |
3 |
1 |
4 |
5 |
11 |
1 |
11 |
11 |
11 |
11 |
11 |
9 |
9 |
9 |
9 |
9 |
6 |
6 |
6 |
6 |
6 |
6 |
6 |
6 |
5 |
5 |
2 |
|
8 |
8 |
8 |
8 |
8 |
8 |
8 |
8 |
8 |
8 |
8 |
4 |
4 |
4 |
4 |
4 |
4 |
4 |
4 |
3 |
|
|
7 |
7 |
7 |
7 |
7 |
7 |
7 |
7 |
7 |
2 |
2 |
2 |
2 |
2 |
1 |
1 |
1 |
1 |
4 |
|
|
|
6 |
6 |
6 |
6 |
6 |
11 |
11 |
11 |
11 |
11 |
11 |
8 |
8 |
8 |
8 |
8 |
11 |
5 |
|
|
|
|
10 |
10 |
10 |
10 |
10 |
10 |
10 |
10 |
10 |
10 |
10 |
3 |
3 |
3 |
3 |
3 |
5 + 10 = 15 page fault
-
-
ALGORITMO SECOND CHANCE
TurnoMS
|
11 |
8 |
7 |
6 |
10 |
9 |
7 |
8 |
11 |
10 |
6 |
2 |
4 |
6 |
8 |
3 |
1 |
4 |
5 |
11 |
1 |
111 |
111 |
111 |
111 |
111 |
91 |
91 |
91 |
91 |
91 |
90 |
90 |
90 |
90 |
81 |
81 |
80 |
80 |
80 |
111 |
2 |
|
81 |
81 |
81 |
81 |
80 |
80 |
80 |
80 |
80 |
61 |
61 |
61 |
61 |
61 |
60 |
11 |
11 |
11 |
11 |
3 |
|
|
71 |
71 |
71 |
70 |
71 |
71 |
70 |
70 |
70 |
21 |
21 |
21 |
21 |
20 |
20 |
20 |
51 |
51 |
4 |
|
|
|
61 |
61 |
60 |
60 |
60 |
111 |
111 |
111 |
111 |
110 |
110 |
110 |
31 |
31 |
31 |
31 |
30 |
5 |
|
|
|
|
101 |
100 |
100 |
100 |
100 |
101 |
100 |
100 |
41 |
41 |
41 |
41 |
40 |
41 |
41 |
40 |
5 + 10 = 15 page fault
-
Soluzione Mediator 19 Gennaio 2000
-
Soluzione Perl 19 Gennaio 2000
This topic: Sistemioperativi1
> 19Gennaio2000
Topic revision: r3 - 2002-01-11 - AntonioValletta