1. Descrivere in C o pseudo-codice l’algoritmo di Peterson per la mutua esclusione.
3. Differenza tra job, processi, threads e fibre in Windows 2000. Quali di essi vengono schedulati in Windows 2000?
4. Si supponga che tre clienti arrivino ad una stazione di servizio per chiedere un servizio, il cui tempo (espresso in mimuti primi) e’ noto a priori
Cliente |
Ora di arrivo |
Tempo di servizio (minuti) |
P |
10.00 |
8’ |
Q |
10.05 |
4’ |
R |
10.07 |
1’ |
Tenendo presente i dati sopra
riportati, nell’ipotesi che la stazione di servizio alle ore
10.00 sia libera, rispondere alle seguenti domande:
Qual e’ il tempo medio di risposta (tempo medio trascorso dal cliente nel sistema, comprensivo del tempo trascorso in coda e del tempo di servizio) se adottiamo una politica di schedulazione FCFS?
Qual e’ il tempo medio di risposta se adottiamo una politica di schedulazione SJF non preemptive?
(OPZIONALE) Qual e’ il tempo medio di risposta se adottiamo una politica di schedulazione SJF preemptive?
5. Si supponga di avere un sistema con 4 processi e 3 tipi di risorse disponibili. La matrice delle richieste da parte dei processi ha la struttura:
dove
con Max(i,j) si indica il numero massimo di istanze della
risorsa j richieste dal processo i. Il numero totale di
risorse e’ espresso dal vettore:
mentre la matrice di allocazione e’
Allocation(i,j) rappresenta il numero di istanze della risorsa j che sono attualmente allocate al processo i. Si determini:
se il sistema e’ in uno stato sicuro;
se con l’assegnazione di un’instanza della risorsa 1 al processo P1, il sistema e’ in uno stato sicuro.
SECONDA PARTE
6. Si consideri un sistema a memoria virtuale con indirizzi virtuali a 32 bit, indirizzi fisici a 24 bit e pagine di 4K byte, e descrittori di pagina di 8 byte:
di quante pagine sono costituiti rispettivamente lo spazio di indirizzamento virtuale e quello fisico?
di quanti bit è costituito l'offset?
di quante righe è costituita e quanti byte occupa la tavola delle pagine?
quante pagine occupa una procedura il cui codice occupa 9734 byte.
8.
Descrivere l’implementazione dei files utilizzante liste
linkate di blocchi disco con tabella in memoria.
9.
Motivazioni e funzionamento del file locking in Unix.
10. In cosa consiste il problema di
instruction backup in relazione a un page fault e come viene risolto
nelle CPU moderne ?