Corso di Laurea in Informatica Applicata – La
Spezia
5 Aprile
2005
Sistemi Operativi – Prima
prova intermedia
ESERCIZIO n. 1
Cos'è una corsa critica?
ESERCIZIO n. 2
Si scriva in pseudo-C (o in altro pseudo-codice) l'algoritmo di
Peterson per la mutua esclusione
ESERCIZIO n. 3
Descrivere l'algoritmo di schedulazione di Windows 2000
ESERCIZIO n. 4
(a) Spiegare il significato delle chiamate di sistema fork ed exec di
UNIX.
(b) Per ciascuna di esse dare una condizione che ne causa il fallimento.
ESERCIZIO n. 5
Spiegare il funzionamento dei meccanismi hardware e del nucleo del
sistema operativo per l'invocazione delle system call.
ESERCIZIO n. 6
Dei seguenti elementi dire quali sono condivisi tra thread di uno
stesso processo e quali invece sono privati:
a) File aperti
b) Spazio di indirizzamento
c) Stack
d) Program Counter
Dire inoltre se esistono dei meccanismi che permettono ai thread di
proteggere gli eventuali elementi privati da altri thread dello stesso
processo. In caso affermativo spiegare quali sono tali meccanismi, in
caso negativo spiegare perché non esistono.
ESERCIZIO n. 7
Si consideri il problema di servire una sequenza di richieste di
lettura di blocchi utilizzando un file server con singolo thread di
controllo (FA) e un file server multithreaded (FB). Se il blocco si
trova nel buffer cache, il tempo necessario per acquisire la richiesta,
processarla e servirla è di 15ms. Se il blocco non si trova nella cache
sono necessari ulteriori 70 ms per accedere al disco.
Supponendo che 1/5 delle richieste di lettura provochi un cache miss,
calcolare quante richieste al secondo possono essere processate da FA e
da FB.
ESERCIZIO n. 8
Dato il seguente stato dei processi A, B, C, D, E dire quali processi
sono in stallo. Motivare la risposta.
Risorse esistenti: [8,3,6,7]
Risorse Assegnate
Risorse necessarie
R1
R2 R3 R4
R1 R2 R3 R4
Processo A
2 0
0 4
2
0 2 3
Processo B
2 1
2 1
0 2
1 1
Processo C
0 0
1 1
2 1
0 1
Processo D
1 0
2 1
0
1 1 0
Processo E
1 2
0 0
2
0 1 0
ESERCIZIO n. 9
In base a quali criteri viene scelta la durata del quanto in un
sistema di schedulazione round-robin classico?
ESERCIZIO n. 10
Discutere una tecnica per prevenire lo stallo eliminando la condizione
di serialità (o mutua esclusione).