Compito di Sistemi Operativi, 26/9/2000
Compito di Sistemi Operativi, Prof. Mancini:
26
settembre 2000
TESTO
-
(punti: -1,4)
La gestione del processore in ordine di arrivo (FIFO):
-
considera il processore una risorsa prerilasciabile e non assegna a tutti
i processi pronti uguale priorità;
-
non considera il processore una risorsa prerilasciabile e non assegna a
tutti i processi pronti uguale priorità;
-
non considera il processore una risorsa prerilasciabile ed assegna a tutti
i processi pronti uguale priorità;
-
considera il processore una risorsa prerilasciabile ed assegna a tutti
i processi pronti uguale priorità;
-
è particolarmene adatta per i processi interattivi;
-
non è particolarmene adatta per i processi interattivi;
-
penalizza i processi che utilizzano il processore per breve tempo;
-
non penalizza i processi che utilizzano il processore per breve tempo;
-
nessuna delle affermazioni precedenti è corretta.
-
(punti: -1,4)
La sincronizzazione fra un processo esterno ed il suo processo
di controllo avviene sugli eventi booleani DBusy e DReady. In particolare:
-
L'operazione wait(DBusy) è eseguita sul dispositivo ed è
interpretabile con attesa attiva;
-
L'operazione wait(DBusy) è eseguita dal processo di controllo ed
è interpretabile con attesa attiva;
-
L'operazione wait(DBusy) è eseguita sul dispositivo ed è
interpretabile come l'assegnamento DBusy:=true;
-
L'operazione wait(DBusy) è eseguita dal processo di controllo ed
è interpretabile come l'assegnamento DBusy:=true;
-
L'operazione signal(DBusy) è eseguita sul dispositivo ed è
interpretabile con attesa attiva;
-
L'operazione signal(DBusy) è eseguita dal processo di controllo
ed è interpretabile con attesa attiva;
-
L'operazione signal(DBusy) è eseguita sul dispositivo ed è
interpretabile come l'assegnamento DBusy:=true;
-
L'operazione signal(DBusy) è eseguita dal processo di controllo
ed è interpretabile come l'assegnamento DBusy:=true;
-
nessuna delle affermazioni precedenti è corretta.
-
(punti: -1,4)
La gestione dei dispositivi è strutturata in più livelli
di astrazione:
-
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.
-
il primo livello ha l'obiettivo di astrarre largamente dai formati e dalle
modalita' di funzionamento dei dispositivi.
-
le funzioni del primo livello includono quelle delle primitive hP ed hV;
-
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;
-
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.
-
il secondo livello ha l'obiettivo di astrarre largamente dai formati e
dalle modalita' di funzionamento dei dispositivi.
-
le funzioni del secondo livello includono quelle delle primitive hP ed
hV;
-
nessuna delle affermazioni precedenti è corretta.
-
(punti: -1,4)
L'insieme di lavoro (working set) WS(t,d)
di un processo P al tempo virtuale t è definito come:
-
l'insieme delle pagine fisiche di memoria virtuale accessibili da P al
tempo t;
-
l'insieme delle pagine dell'intera memoria virtuale marcate come riferite
all'istante t ma non accedute da P;
-
l'insieme delle pagine fisiche di memoria virtuale allocate a P, la dimensione
di tale insieme non è variabile nel tempo;
-
l'insieme delle pagine riferite da P nell'intervallo (t - d,t],
la dimensione di tale insieme è variabile nel tempo;
-
l'insieme delle pagine riferite da P nell'intervallo (t,t---+ d],
la dimensione di tale insieme è variabile nel tempo;
-
l'insieme delle pagine riferite da P nell'intervallo (t - d,t],
la dimensione di tale insieme non è variabile nel tempo;
-
l'insieme delle pagine riferite da P nell'intervallo (t,t---+ d],
la dimensione di tale insieme non è variabile nel tempo;
-
l'insieme delle pagine vittime che sono state rimosse nell'intervallo (t
- d,t];
-
l'insieme delle pagine vittime che sono state rimosse nell'intervallo (t,t
d
];
-
nessuna delle affermazioni precedenti è corretta.
-
(punti: -1,4)
Quali delle seguenti strutture dati appartengono al sistema di archiviazione
di Unix:
-
La TabellaDeiCollegamenti
contiene le copie dei descrittori di archivio in uso da parte di almeno
un processo;
-
La TabellaDeiCollegamenti
registra lo stato di assegnazione su disco dei descrittori di archivio;
-
La TabellaDeiCollegamenti
contiene, fra l'altro, i puntatori alla posizione corrente degli archivi
aperti;
-
La MappaDeiDescrittoriDiArchivio
registra lo stato di assegnazione su disco dei descrittori di archivio;
-
La TabellaDeiDescrittoriInMS
contiene, fra l'altro, i puntatori alla posizione corrente degli archivi
aperti;
-
La MappaDeiDescrittoriDiArchivio
contiene le copie dei descrittori di archivio in uso da parte di almeno
un processo;
-
La TabellaDeiDescrittoriInMS
registra lo stato di assegnazione su disco dei descrittori di archivio;
-
La MappaDeiDescrittoriDiArchivio
contiene, fra l'altro, i puntatori alla posizione corrente degli archivi
aperti;
-
La TabellaDeiDescrittoriInMS
contiene le copie dei descrittori di archivio in uso da parte di almeno
un processo;
-
nessuna delle affermazioni precedenti è corretta.
-
(punti: 6)
Illustrare in al più 70 parole i meccanismi conosciuti per la
sincronizzazione dei processi.
-
(punti: 6)
Illustrare in al più 70 parole le principali caratteristiche
di un sistema multiprogrammato.
-
(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 |
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.
-
Considerare la seguente stringa di riferimenti alla memoria di un processo
in un sistema con memoria virtuale
S = 6 7 8 9 6 7 10 6 7 8 9 10 8 10 6 9 8 6 7 1
-
(punti: 3)
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.
-
(punti: 3)
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.
-
(punti: 16)
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
-
c, f, g
-
a, h
-
c, f
-
d
-
c, d, i
-
-
Si veda p.72 Maestrini
-
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
-
-
ALGORITMO FIFO: di sostituzione pagine memoria 3 blocchi
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
-
-
ALGORITMO FIFO: di sostituzione pagine memoria 4 blocchi
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
-
realizzazione
tipo di dato MiaCondizione