1. In che cosa differisce una system call da una ordinaria chiamata
di libreria ?
2. Nell’ambito della comunicazione tra processi introdurre i semafori
e descrivere le operazioni che vengono effettuate su di essi.
3. Presentare un algoritmo (in C o pseudo-codice) che risolva il
problema produttore/consumatore usando i semafori.
4. Cinque lavori batch, indicati con le lettere da A ad E, arrivano al calcolatore approssimativamente allo stesso
istante. I processi hanno un tempo di esecuzione di 8, 10, 2, 4 e 8 minuti,
rispettivamente, mentre le loro priorita’ (determinate esternamente) sono
2, 4, 5, 1 e 3 (dove 5 rappresenta la massima priorita’). Per ognuno dei
seguenti algoritmi di schedulazione determinare il tempo di tornaround (tempo
medio di completamento).
a)
Round Robin (2 min)
b)
Schedulazione a priorita’
c)
FCFS
d)
SJF
Si ignori l’overhead dovuto al cambio di contesto. Nel caso (a)
si assuma che il sistema sia multiprogrammato. Negli altri casi si assuma
che solo un lavoro alla volta venga mandato in esecuzione fino al completamento.
5. Si considerei un sistema
costituito da tre processi, in cui l’unico tipo di risorsa disponibile sia
rappresentato da 12 unita’ a nastro. Utilizzando l’algoritmo del banchiere
si stabilisca quando gli stati seguenti sono sicuri o non sicuri. Se uno
stato e’ sicuro, si mostri secondo quale ordine i processi possono essere
terminati.
Stato 1:
Processo n. |
Risorse allocate
|
Risorse max |
P0 |
1 |
4 |
P1 |
4 |
6 |
P2 |
5 |
8 |
Risorse disponibili |
2 |
Stato 2:
Processo n. |
Risorse allocate
|
Risorse max |
P0 |
8 |
10 |
P1 |
2 |
5 |
P2 |
1 |
3 |
Risorse disponibili |
1 |
Se uno stato e’ sicuro il sistema puo’ comunque evolvere, a partire
da quello stato, verso uno stato non sicuro.
A partire dallo Stato1, si supponga che a P2 sia assegnata una
ulteriore istanza dell’unica risorsa disponibile. Lo stato ottenuto e’ sicuro?
6. Si
consideri una memoria centrale gestita con il metodo delle partizioni multiple.
Sono presenti 5 aree libere di dimensione 100K, 500K,
200K, 300K, 600K (elencate in ordine di indirizzo crescente). Si consideri
una sequenza di quattro processi, P1, P2, P3 e P4, che necessitano, rispettivamente,
di 212K, 417K, 112K, 426K, e si descriva come vengono allocati in memoria
dagli algoritmi First-fit, Best-fit e Worst-fit. Si
confrontino le situazioni risultanti. A quanti KB ammonta nei tre casi la frammentazione interna?
7. Descrivere
l’algoritmo di sostituzione di pagine WSClock (algoritmo dell’orologio basato
sul Working Set)
8. Un
disco possiede 5000 cilindri numerati da 0 a 4999. Il driver del disco sta
attualmente servendo una richiesta al cilindro 153. La coda di richieste
in attesa in ordine FIFO e’:
85, 1470, 913, 1774, 948, 130
Qual
e’ la distanza totale (indicata in cilindri) che deve percorrere il braccio
del disco per soddisfare tutte le richieste in attesa, per ciascuno dei seguenti
algoritmi di scheduling?
a)
First-Come First-Served
b)
Shortest Seek First
c)
Ascensore (a salire)
d)
Ascensore con topologia circolare
(a salire)
9. Come viene verificata la consistenza di directories e files in Unix e Windows ?
10. Si descrivano gli aspetti
principali della struttura di NTFS.