unina.it - CORSO DI SISTEMI OPERTIVI mod.A (gr....
Transcript of unina.it - CORSO DI SISTEMI OPERTIVI mod.A (gr....
============================================ CORSO DI SISTEMI OPERTIVI mod.A (gr. 1) ============ compito N. 1 del 110609 ==========
=========================================
domanda N. 1:
Si determini la veridicita’ delle seguenti affermazioni:
a) Il livello software che contiene le componenti fondamentali di un sistema operativo e’ chiam-ato kernel. Al kernel appartengono i moduli per: la gestione della memoria centrale, ilcontrollo dei processi, la gestione dell’I/O e la gestione della memoria secondaria. Aquesto elenco di componenti fondamentali del kernel va aggiunto solo il sottosistema perla gestione delle interfacce grafiche e per l’interprete del linguaggio di comando.
b) I sistemi operativi hanno lo scopo primario di permettere alle applicazioni software diinteragire con l’hardware sottostante, e di gestire le risorse hardware e software delsistema in maniera efficiente.
[A] a) vera ; b) falsa
[B] entrambe false
[C] entrambe vere
[D] a) falsa ; b) vera
domanda N. 2:
Si determini la veridicita’ delle seguenti affermazioni:
a) Il meccanismo piu utilizzato dai sistemi operativi per impedire che un processo possamonopolizzare l’uso della CPU consiste nell’assegnare ai processi un numero massimo diistruzioni da eseguire.
b) Quando un processo viene rimosso dalla CPU perchee e scaduto il suo quanto di tempo,viene inserito sempre nella coda dei processi in attesa (waiting queue). Il processo vienerimosso da tale coda solo al momento di tornare in esecuzione
[A] entrambe vere
[B] entrambe false
[C] a) falsa ; b) vera
[D] a) vera ; b) falsa
1
domanda N. 3:
Si determini il numero di processi generati (compreso quello mandato in esecuzione dalla lineadi comando) dal seguente codice C, compilato e fatto eseguire su un sistema con il sistemaoperativo Unix:main(){int pid, i;for (i = 0; i <= 3; i + +){
pid=fork();if (pid == 0 && i > 2) exit(0);
}exit(0);}
[A] 16
[B] 9
[C] 8
[D] 10
domanda N. 4:
Sia dato il seguente insieme di processi:
TA TC
P1 0 8P2 0 2P3 3 4P4 5 6P5 9 2
dove TA e il tempo di arrivo nella coda dei processi pronti e TC e il tempo di utilizzo della CPU.Utilizzando l’algoritmo di scheduling dello Shortest Job First con prelazione, si determini iltempo medio di esecuzione.
[A] 7.5
[B] 8.5
[C] 7
[D] 8
2
domanda N. 5:
Sia dato il seguente insieme di processi:
TA TC
P1 0 5P2 3 6P3 5 7P4 8 6P5 16 3
dove TA e il tempo di arrivo nella coda dei processi pronti e TC e il tempo di utilizzo della CPU.Utilizzando l’algoritmo di scheduling Round Robin con quanto di tempo q = 2, si determini iltempo medio di esecuzione.
[A] 14
[B] 14.2
[C] 13.8
[D] 13.6
domanda N. 6:
Siano dati tre processi che condividono una variabile x e i cui pseudo codici sono di seguitoriportati:
P1 P2 P3
wait(R) wait(S) wait(T)x = x+2; x = x*2; x = x+1;if (x > 0) then signal(T); signal(S);
x = -1; wait(S); wait(T)endif x = -x; x = x+1print x; signal(R); signal(S);
Si determini l’output del processo P1 supponendo che inizialmente x = 1 e i tre semaforibinari siano inizializzati rispettivamente R = 0, S = 0, T = 1.
[A] -1
[B] -3
[C] -4
[D] -2
domanda N. 7:
Si determini la veridicita’ delle seguenti affermazioni:
3
a) Andando dai livelli di memoria piu bassi (dispositivi secondari e terziari) a quelli piu alti(registri e cache), il tempo di accesso diminuisce.
b) In generale, l’overhead a cui si va in contro con l’allocazione non contigua dei processi inmemoria e compensata dal vantaggio di un aumento del grado di multiprogrammazione.
[A] entrambe false
[B] entrambe vere
[C] a) falsa ; b) vera
[D] a) vera ; b) falsa
domanda N. 8:
Sia dato un sistema che gestisce una memoria di 5120 byte mediante partizioni variabili. Sisupponga che nella memoria siano gia presenti 5 processi di dimensioni 740, 875, 250, 1450 e490 byte allocati rispettivamente a partire dagli indirizzi fisici 2048, 3072, 2788, 0 e 4096. Sidetermini l’indirizzo in cui verra allocato un ulteriore processo di 389 byte mediante la tecnicadel worst fit.
[A] 4586
[B] 3038
[C] 3947
[D] 1450
domanda N. 9:
Si consideri un sistema con paginazione su due livelli. Per un processo che richiede 16 pagine,di seguito si riportano la tabella delle pagine di primo livello (P ′) e le 4 tabelle di secondolivello (P”0, P”1, P”2 e P”3), le quali hanno rispettivamente indirizzo iniziale 8192, 8704,9216 e 9728:
P ′
0 8192
1 8704
2 9216
3 9728
P”0
0 0
1 512
2 1024
3 1536
P”1
0 2048
1 2560
2 3072
3 3584
P”2
0 4096
1 4608
2 5120
3 5632
P”3
0 6144
1 6656
2 7168
3 7680
Si determini l’indirizzo fisico corrispondente all’indirizzo logico < 2, 1, 248 >
[A] 4856
[B] 6904
4
[C] 1272
[D] 3320
domanda N. 10:
Si consideri un sistema operativo con paginazione su richiesta basato sull’algoritmo First InFirst Out (FIFO), che assegna ad ogni processo 3 frame di 512 Byte e che richiede 2 Byte perla memorizzazione di un intero. Ponendo attenzione solo agli array A, B e C, e ricordando cheil linguaggio C memorizza gli array 2-dimensionali per righe, si determini il numero di pagefaults del seguente frammento di codice C. ...int A[2][512], B[512], C[512];...N=512;for (i=0; i<2; i++){
for (j=0; j<N; j++){B[j/2 + i*256] = A[i][j] + C[j];
} }
[A] 10
[B] 12
[C] 8
[D] 11
domanda N. 11:
Si consideri un sistema operativo con paginazione su richiesta basato sull’algoritmo LeastRecently Used (LRU), che assegna ad ogni processo 5 frame. Se determini il numero di pagefaults per la squenza di riferimenti alle pagine:
5, 4, 3, 5, 2, 1, 4, 6, 3, 5, 2, 5, 3, 1, 7
[A] 10
[B] 11
[C] 9
[D] 12
domanda N. 12:
Sia dato un disco con 200 tracce e velocita di seek di 1 traccia per ms. All’istante t=0 il
5
sistema operativo sta servendo una richiesta sulla traccia 70 e in coda ci sono richieste per letracce (55; 62; 65; 95; 97; 105). Successivamente arrivano altre richieste all’istante t=7 per latraccia 71 e all’istante t=50 per la traccia 63. Si calcoli il tempo di ricerca complessivo in msper servire tutte le richieste secondo la politica Shortest Seek Time First (SSTF), trascurandola latenza rotazionale e il tempo di trasferimento.
[A] 107
[B] 97
[C] 65
[D] 121
domanda N. 13:
Si determini la veridicita’ delle seguenti affermazioni:
a) La motivazione originale per l’introduzione dei sistemi RAID e stata l’osservazione che lavelocita di trasferimento cresceva ad un tasso molto inferiore a quello della crescita siadella capacita dei dischi sia della potenza di elaborazione delle CPU.
b) L’algorimo di scheduling del disco First Come First Served tende ad avere una accettabilevarianza dei tempi di risposta a spese del numero di richieste servite per unita di tempo.
[A] a) falsa ; b) vera
[B] entrambe vere
[C] a) vera ; b) falsa
[D] entrambe false
domanda N. 14:
Si calcoli la probabilitaa di perdere i dati con un sistema RAID level 1 con 6 dischi, se il MeanTime to Failure (MTF) e di 1300 giorni e il Mean Time to Repair (MTR) e di 16.9 giorni.
[A] 0.00003
[B] 0.00009
[C] 0.00001
[D] 0.00011
domanda N. 15:
Si determini la veridicita’ delle seguenti affermazioni:
6
a) Un modo per risolvere il problema dei numerosi accessi al disco con lo schema di allocazionedei file a lista concatenata e l’utilizzo di blocchi molto grandi. Con tale modifica si ottieneuno schema senza grossi inconvenienti legati alla gestione del disco, che e utilizzato innumerosi sistemi come, ad esempio, Solaris 2.
b) Uno svantaggio dello schema di allocazione contigua di file in un file system e la frammen-tazione esterna del disco.
[A] a) falsa ; b) vera
[B] a) vera ; b) falsa
[C] entrambe vere
[D] entrambe false
domanda N. 16:
Sia dato un file system di 8 MB che gestisca i file mediante allocazione tabellare (ad es. unaFile Allocation Table). Si determini la dimensione della tabella nel caso in cui i blocchi deldisco siano di 512 byte.
[A] 28 KB
[B] 12 KB
[C] 13 KB
[D] 32 KB
domanda N. 17:
Si determini la veridicita delle seguenti affermazioni:
a) Si consideri un file formato da 100 record allocato su disco in forma indicizzata dove irecord del file sono memorizzati uno per blocco e il file descriptor e gia in memoriacentrale. Se non e stato fatto ancora nessun accesso al file, allora per cancellare il 60-morecord sono necessari 35 accessi in lettura e 1 in scrittura.
b) Si consideri un file formato da 100 record allocato su disco in forma contigua dove i recorddel file sono memorizzati uno per blocco e il file descriptor e gia in memoria centrale. Sel’ultimo record letto e’ il record 10 allora per cancellare il 60-mo record sono necessari40 accessi in lettura e 40 in scrittura.
[A] a) falsa ; b) vera
[B] a) vera ; b) falsa
[C] entrambe vere
[D] entrambe false
7
================================================== compito N. 1 del 110609 ==========
=========================================
SVOLTO DA MATRICOLA
domanda 1
domanda 2
domanda 3
domanda 4
domanda 5
domanda 6
domanda 7
domanda 8
domanda 9
domanda 10
domanda 11
domanda 12
domanda 13
domanda 14
domanda 15
domanda 16
domanda 17
• 1.5 punti per ogni risposta esatta
• 0 punti per ogni risposta non data
• 0.5 punti di penalita’ per ogni risposta errata
FIRMA
8
============================================ CORSO DI SISTEMI OPERTIVI mod.A (gr. 1) ============ compito N. 2 del 110609 ==========
=========================================
domanda N. 1:
Si determini la veridicita’ delle seguenti affermazioni:
a) L’ordine delle attivita’ di un sistema operativo e’ determinato da eventi che possono esseregenerati da dispositivi hardware, da errori in un programma in esecuzione oppure da unarichiesta specifica di un programma che intende accedere ai servizi del sistema operativostesso mediante chiamate di sistema.
b) Le routine di servizio relative ai differenti eventi di cui alla affermazione a) sono eseguitesempre in modalita’ sistema, anche nel caso di programmi utente che intendono accedereai servizi del sistema operativo attraverso le chiamate di sistema.
[A] a) falsa ; b) vera
[B] entrambe false
[C] a) vera ; b) falsa
[D] entrambe vere
domanda N. 2:
Si determini la veridicita’ delle seguenti affermazioni:
a) In ogni sistema operativo e presente una tabella (chiamata tabella dei processi o ProcessControl Block = PCB) che tiene traccia di tutti i processi in esecuzione. In tale tabellae memorizzato per ogni processo in esecuzione un identificativo di processo (pid), unpuntatore alla memoria dove sono stati memorizzati il codice e l’area dati, nonche’ tuttele informazioni necessarie per effettuare correttamente il cambio di contesto.
b) Pur avendo alcuni campi sempre presenti in tutti i sistemi operativi, la struttura generaledel PCB dipende dalla implementazione del sistema operativo.
[A] entrambe vere
[B] a) falsa ; b) vera
[C] a) vera ; b) falsa
[D] entrambe false
9
domanda N. 3:
Si determini il numero di processi generati (compreso quello mandato in esecuzione dalla lineadi comando) dal seguente codice C, compilato e fatto eseguire su un sistema con il sistemaoperativo Unix:main(){int pid, i;for (i = 0; i <= 3; i + +){
pid=fork();if (pid == 0 && i > 1) exit(0);
}exit(0);}
[A] 9
[B] 8
[C] 10
[D] 12
domanda N. 4:
Sia dato il seguente insieme di processi:
TA TC P
P1 0 6 3P2 3 3 4P3 7 5 5P4 10 5 2P5 15 4 3
dove TA e il tempo di arrivo nella coda dei processi pronti, TC e il tempo di utilizzo della CPUe P e la priorita (priorita massima = 5). Utilizzando l’algoritmo di scheduling a priorita conprelazione, si determini il tempo medio di esecuzione.
[A] 7.8
[B] 7.6
[C] 7.4
[D] 7.2
10
domanda N. 5:
Sia dato il seguente insieme di processi:
TA TC
P1 0 3P2 1 5P3 3 7P4 8 5P5 10 6
dove TA e il tempo di arrivo nella coda dei processi pronti e TC e il tempo di utilizzo della CPU.Utilizzando l’algoritmo di scheduling Round Robin con quanto di tempo q = 2, si determini iltempo medio di esecuzione.
[A] 13.6
[B] 14
[C] 14.2
[D] 13.8
domanda N. 6:
Siano dati tre processi che condividono una variabile x e i cui psudo codici sono di seguitoriportati:
P1 P2 P3
wait(R) wait(S) wait(T)x = x+1; x = 2*x; x = x+1;if (x > 0) then x = x+1; x = 2*x;
signal(S); signal(T); signal(S);else wait(S); wait(T);
signal(T); x = x+1; print(x);endif signal(T); signal(R);wait(R);
Si determini l’output del processo P3 supponendo che inizialmente x = 0 e i tre semaforibinari siano inizializzati rispettivamente R = 1, S = 0, T = 0.
[A] 9
[B] 8
[C] 10
[D] 11
domanda N. 7:
Si determini la veridicita’ delle seguenti affermazioni:
11
a) Con il termine di memoria virtuale si intende tutta la memoria disponibile in un calcolatore,composta cioe della memoria centrale e da tutta la memoria secondaria.
b) Il dispositivo che effettua la traduzione degli indirizzi virtuali in indirizzi fisici e chiamatoMemory Manager Unit.
[A] entrambe false
[B] entrambe vere
[C] a) falsa ; b) vera
[D] a) vera ; b) falsa
domanda N. 8:
Sia data una memoria di 32MByte gestita mediante paginazione con frame di 512 KByte e sisupponga che il sistema operativo richieda 6 MByte. Si calcoli la dimensione della memoriaeffettivamente ancora utilizzabile dopo l’allocazione di 5 processi rispettivamente di 2530,1840, 785, 3421, 2013 KByte.
[A] 21540 KByte
[B] 15360 KByte
[C] 19456 KByte
[D] 17408 KByte
domanda N. 9:
Si consideri un sistema con paginazione su due livelli. Per un processo che richiede 16 pagine,ognuna di 512 byte, di seguito si riportano la tabella delle pagine di primo livello (P ′) e le4 tabelle di secondo livello (P”0, P”1, P”2 e P”3), le quali hanno rispettivamente indirizzofisico iniziale 0, 512, 1024 e 1536:
P ′
0 0
1 512
2 1024
3 1536
P”0
0 8192
1 11776
2 5120
3 14336
P”1
0 10752
1 7680
2 3072
3 6144
P”2
0 5632
1 10240
2 13824
3 11264
P”3
0 9216
1 3584
2 12800
3 14848
Si determini quale indirizzo fisico, tra quelli proposti, non appartiene allo spazio di indirizza-mento del processo.
[A] 14850
[B] 3070
12
[C] 6146
[D] 9218
domanda N. 10:
Si consideri un sistema operativo con paginazione su richiesta basato sull’algoritmo First InFirst Out (FIFO), che assegna ad ogni processo 3 frame di 512 Byte e che richiede 2 Byte perla memorizzazione di un intero. Ponendo attenzione solo agli array A, B e C, e ricordando cheil linguaggio C memorizza gli array 2-dimensionali per righe, si determini il numero di pagefaults del seguente frammento di codice C. ...int A[2][512], B[256], C[512];...N=256;for (i=0; i<2; i++){
for (j=0; j<N; j++){C[i*N+j] = A[i][2*j] + B[j];
} }
[A] 10
[B] 11
[C] 8
[D] 12
domanda N. 11:
Si consideri un sistema opereativo con paginazione su richiesta basato sull’algoritmo FIFO conseconda chance, che assegna ad ogni processo 5 frame. Si determini il numero di page faultsper la seguente sequenza di riferimenti alle pagine:
7, 4, 5, 7, 3, 6, 4, 1, 2, 7, 4, 6, 5, 4, 7
[A] 7
[B] 8
[C] 9
[D] 10
domanda N. 12:
Sia dato un disco con 200 tracce e velocita di seek di 1 traccia per ms. All’istante t=0 il
13
sistema operativo sta servendo una richiesta sulla traccia 100 e in coda ci sono richieste per letracce (40; 65; 90; 120; 145; 125). Successivamente arrivano altre richieste all’istante t=30 perla traccia 95 e all’istante t=135 per la traccia 100. Si calcoli il tempo di ricerca complessivoper servire tutte le richieste secondo la politica Shortest Seek Time First (SSTF), trascurandola latenza rotazionale e il tempo di trasferimento.
[A] 215
[B] 185
[C] 210
[D] 165
domanda N. 13:
Si determini la veridicita’ delle seguenti affermazioni:
a) Le testine di un disco memorizzano i dati in tracce, che sono una parte di unita piu grandichiamate settori, i quali formano i cilindri quando sono considerati verticalmente
b) L’algoritmo di scheduling del disco Shortest Seek Time First (SSTF) e il piu adatto aisistemi interattivi, in quanto assicura il minor tempo medio di servizio e non risente delproblema della posticipazione indefinita delle richieste.
[A] a) falsa ; b) vera
[B] entrambe vere
[C] entrambe false
[D] a) vera ; b) falsa
domanda N. 14:
Si consideri un disco che opera a 12000 rpm (giri al minuto), dove ogni traccia e composta da160 settori di 512 bytes ognuno. Si determini la velocita di trasferimento necessaria per poterleggere o scrivere una traccia intera durante una rotazione del disco.
[A] circa 8000 KB/sec
[B] circa 19200 KB/sec
[C] circa 16000 KB/sec
[D] circa 9600 KB/sec
domanda N. 15:
Si determini la veridicita’ delle seguenti affermazioni:
14
a) Uno dei vantaggi della bitmap rispetto alla lista dei blocchi liberi e la possibilita, per ilsistema, di determinare in maniera efficiente l’esistenza di un certo numero di blocchiliberi contigui.
b) In un file system con struttura gerarchica (ad es. Unix), il nome di un file e formatodall’insieme dei nomi delle directory a partire dalla directory utente fino al file.
[A] entrambe vere
[B] a) falsa ; b) vera
[C] a) vera ; b) falsa
[D] entrambe false
domanda N. 16:
Sia dato un file system di 8 MB che gestisca i file mediante allocazione tabellare (ad es. unaFile Allocation Table). Si determini la dimensione della tabella nel caso in cui i blocchi deldisco siano di 1024 byte.
[A] 13 KB
[B] 12 KB
[C] 104 KB
[D] 64 KB
domanda N. 17:
Si determini la veridicita delle seguenti affermazioni:
a) Si consideri un file formato da 100 record allocato su disco in forma contigua dove i recorddel file sono memorizzati uno per blocco e il file descriptor e gia in memoria centrale. Sel’ultimo record letto e’ il record 10 allora per cancellare il 50-mo record sono necessari 1accesso in lettura e 1 in scrittura.
b) Si consideri un file formato da 100 record allocato su disco in forma concatenata dovei record del file sono memorizzati uno per blocco e il file descriptor e gia in memoriacentrale. Se l’ultimo record letto e’ il record 15, allora per cancellare il 65-mo recordsono necessari 50 accessi in lettura e 50 in scrittura.
[A] entrambe vere
[B] a) vera ; b) falsa
[C] entrambe false
[D] a) falsa ; b) vera
15
================================================== compito N. 2 del 110609 ==========
=========================================
SVOLTO DA MATRICOLA
domanda 1
domanda 2
domanda 3
domanda 4
domanda 5
domanda 6
domanda 7
domanda 8
domanda 9
domanda 10
domanda 11
domanda 12
domanda 13
domanda 14
domanda 15
domanda 16
domanda 17
• 1.5 punti per ogni risposta esatta
• 0 punti per ogni risposta non data
• 0.5 punti di penalita’ per ogni risposta errata
FIRMA
16
============================================ CORSO DI SISTEMI OPERTIVI mod.A (gr. 1) ============ compito N. 3 del 110609 ==========
=========================================
domanda N. 1:
Si determini la veridicita’ delle seguenti affermazioni:
a) Un sistema operativo che e in grado di utilizzare in maniera efficiente le risorse che vengonoaggiunte al sistema e detto espandibile.
b) Le chiamate di sistema operano in maniera simile alle interruzioni, nel senso che quandoavviene una chiamata di sistema, il sistema si porta in modalita kernel e serve la richiestamediante una apposita routine di servizio.
[A] entrambe vere
[B] a) falsa ; b) vera
[C] entrambe false
[D] a) vera ; b) falsa
domanda N. 2:
Si determini la veridicita’ delle seguenti affermazioni:
a) Il compito principale dello scheduler a lungo termine (anche detto job scheduler) e deter-minare l’ordine con cui i processi accedono alla CPU.
b) L’insieme dei processi che attendono il proprio turno per accedere alla CPU sono organiz-zati in una struttura dati chiamata coda dei processi in attesa (waiting queue).
[A] entrambe vere
[B] entrambe false
[C] a) falsa ; b) vera
[D] a) vera ; b) falsa
domanda N. 3:
Si determini il numero di processi generati (compreso quello mandato in esecuzione dalla lineadi comando) dal seguente codice C, compilato e fatto eseguire su un sistema con il sistemaoperativo Unix:
17
main(){int pid, i;for (i = 0; i <= 3; i + +){
pid=fork();if (pid == 0 && i == 2) exit(0);
}exit(0);}
[A] 8
[B] 10
[C] 14
[D] 12
domanda N. 4:
Sia dato il seguente insieme di processi:
TA TC
P1 0 12P2 2 3P3 6 3P4 11 6P5 14 2
dove TA e il tempo di arrivo nella coda dei processi pronti e TC e il tempo di utilizzo della CPU.Utilizzando l’algoritmo di scheduling dello Shortest Job First con prelazione, si determini iltempo medio di esecuzione.
[A] 8.2
[B] 8.0
[C] 7.8
[D] 8.4
domanda N. 5:
Sia dato il seguente insieme di processi:
TA TC
P1 0 10P2 3 6P3 5 6P4 9 4P5 13 2
18
dove TA e il tempo di arrivo nella coda dei processi pronti e TC e il tempo di utilizzo della CPU.Utilizzando l’algoritmo di scheduling Round Robin con quanto di tempo q = 2, si determini iltempo medio di esecuzione.
[A] 18.0
[B] 18.4
[C] 18.8
[D] 17.6
domanda N. 6:
Siano dati tre processi che condividono una variabile x e i cui pseudo codici sono di seguitoriportati:
P1 P2 P3
wait(R) wait(S) wait(T)x = x-5; x = x+2; x = x+3;signal(T); if(x >= 3)then if(x==1)thenwait(R); signal(R); signal(R);signal(S); else endif
signal(T); wait(T);endifwait(S);signal(T);
Supponendo che i tre semafori binari R, S e T siano inizializzati rispettivamente a R = 0,S = 1 e T = 0, si determini quale valore iniziale della variabile x, tra quelli proposti nellerisposte, non comporti una situazione di stallo per i processi.
[A] x = 2
[B] x = 1
[C] x = −1
[D] x = 0
domanda N. 7:
Si determini la veridicita’ delle seguenti affermazioni:
a) Con il termine di memoria virtuale si intende tutta la memoria disponibile in un calcolatore,composta cioe della memoria centrale e da tutta la memoria secondaria.
b) Il dispositivo che effettua la traduzione degli indirizzi virtuali in indirizzi fisici e chiamatoMemory Manager Unit.
19
[A] entrambe vere
[B] a) falsa ; b) vera
[C] a) vera ; b) falsa
[D] entrambe false
domanda N. 8:
Si consideri un sistema di paginazione con tabella delle pagine in memoria centrale. Suppo-nendo che un riferimento alla memoria centrale richieda 180 ns e che il tempo di accesso airegistri TLB richieda 30 ns, si determini la percentuale di successo nell’accesso ai TLB (hitratio dei TLB) per ottenere un tempo medio di accesso di 280 ns.
[A] 58%
[B] 65%
[C] 68.3333%
[D] 61.111%
domanda N. 9:
Si consideri un sistema con paginazione su due livelli. Per un processo che richiede 16 pagine,di seguito si riportano la tabella delle pagine di primo livello (P ′) e le 4 tabelle di secondolivello (P”0, P”1, P”2 e P”3), le quali hanno rispettivamente indirizzo iniziale 8192, 8704,9216 e 9728:
P ′
0 8192
1 8704
2 9216
3 9728
P”0
0 0
1 512
2 1024
3 1536
P”1
0 2048
1 2560
2 3072
3 3584
P”2
0 4096
1 4608
2 5120
3 5632
P”3
0 6144
1 6656
2 7168
3 7680
Si determini l’indirizzo fisico corrispondente all’indirizzo logico < 1, 2, 341 >
[A] 3413
[B] 1877
[C] 6997
[D] 5461
domanda N. 10:
20
Si consideri un sistema operativo con paginazione su richiesta basato sull’algoritmo First InFirst Out (FIFO), che assegna ad ogni processo 3 frame di 512 Byte e che richiede 2 Byte perla memorizzazione di un intero. Ponendo attenzione solo agli array A, B e C, e ricordando cheil linguaggio C memorizza gli array 2-dimensionali per righe, si determini il numero di pagefaults del seguente frammento di codice C. ...int A[512], B[256], C[2][512];...N=256;for (i=0; i<2; i++){
for (j=0; j<N; j++){C[i][2*j] = A[i*N+j] + B[j];
} }
[A] 11
[B] 10
[C] 8
[D] 12
domanda N. 11:
Si consideri un sistema operativo con paginazione su richiesta basato sull’algoritmo LeastRecently Used (LRU), che assegna ad ogni processo 5 frame. Se determini il numero di pagefaults per la squenza di riferimenti alle pagine:
3, 2, 3, 4, 3, 1, 5, 1, 4, 1, 2, 3, 6, 7, 3
[A] 7
[B] 9
[C] 8
[D] 10
domanda N. 12:
Sia dato un disco con 200 tracce e velocita di seek di 1 traccia per ms. All’istante t=0il sistema operativo sta servendo una richiesta sulla traccia 100 e in coda ci sono richiesteper le tracce (55; 75; 80; 110; 135; 160). Successivamente arrivano altre richieste all’istantet=30 per la traccia 105 e all’istante t=135 per la traccia 100. Si calcoli il tempo di ricercacomplessivo in ms per servire tutte le richieste secondo la politica Shortest Seek Time First(SSTF), trascurando la latenza rotazionale e il tempo di trasferimento.
[A] 155
21
[B] 180
[C] 210
[D] 205
domanda N. 13:
Si determini la veridicita’ delle seguenti affermazioni:
a) Il principale problema dei livelli 3 e 4 dei sistemi RAID che li rende meno preferibili rispettoal livello 5 e la necessita della generazione della parita, che comporta un supplemento dioverhead.
b) Utilizzando un disco con 7 ms di tempo di seek, 10 msec di latenza media rotazionale etempo di trasferimento di 20 msec, il tempo necessario per trasferire in memoria centraleun file composto da 15 blocchi, distanti mediamente 10 tracce, e di 1.5 secondi esatti.
[A] entrambe false
[B] entrambe vere
[C] a) falsa ; b) vera
[D] a) vera ; b) falsa
domanda N. 14:
Si calcoli la probabilitaa di perdere i dati con un sistema RAID level 5 con 5 dischi, se il MeanTime to Failure (MTF) e di 1600 giorni e il Mean Time to Repair (MTR) e di 23.04 giorni.
[A] 0.00009
[B] 0.0002
[C] 0.00003
[D] 0.00011
domanda N. 15:
Si determini la veridicita’ delle seguenti affermazioni:
a) Il principale vantaggio dello schema di allocazione di file con lista concatenata e l’elevataefficienza nella ricerca dei blocchi, poiche sono noti numerosi algoritmi efficienti per lagestione delle liste.
b) La File Allocation Table (FAT) di Microsoft e uno speciale schema di allocazione dei filesu disco che rientra tra le tecniche di allocazione dei file in blocchi contigui.
22
[A] a) vera ; b) falsa
[B] entrambe vere
[C] a) falsa ; b) vera
[D] entrambe false
domanda N. 16:
Sia dato un file system di 2 MB che gestisca i file mediante allocazione tabellare (ad es. unaFile Allocation Table). Si determini la dimensione della tabella nel caso in cui i blocchi deldisco siano di 1024 byte.
[A] ∼ 2.7 KB
[B] ∼ 6 KB
[C] ∼ 64 KB
[D] ∼ 16 KB
domanda N. 17:
Si determini la veridicita delle seguenti affermazioni:
a) Si consideri un file formato da 100 record allocato su disco in forma concatenata dovei record del file sono memorizzati uno per blocco e il file descriptor e gia in memoriacentrale. Se l’ultimo record letto e’ il record 25, allora per cancellare il 60-mo recordsono necessari 35 accessi in lettura e 35 in scrittura.
b) Si consideri un file formato da 100 record allocato su disco in forma contigua dove i recorddel file sono memorizzati uno per blocco e il file descriptor e gia in memoria centrale. Sel’ultimo record letto e’ il record 10 allora per cancellare il 60-mo record sono necessari40 accessi in lettura e 1 in scrittura.
[A] entrambe vere
[B] entrambe false
[C] a) falsa ; b) vera
[D] a) vera ; b) falsa
23
================================================== compito N. 3 del 110609 ==========
=========================================
SVOLTO DA MATRICOLA
domanda 1
domanda 2
domanda 3
domanda 4
domanda 5
domanda 6
domanda 7
domanda 8
domanda 9
domanda 10
domanda 11
domanda 12
domanda 13
domanda 14
domanda 15
domanda 16
domanda 17
• 1.5 punti per ogni risposta esatta
• 0 punti per ogni risposta non data
• 0.5 punti di penalita’ per ogni risposta errata
FIRMA
24
============================================ CORSO DI SISTEMI OPERTIVI mod.A (gr. 1) ============ compito N. 4 del 110609 ==========
=========================================
domanda N. 1:
Si determini la veridicita’ delle seguenti affermazioni:
a) Un sistema operativo che e in grado di utilizzare in maniera efficiente le risorse che vengonoaggiunte al sistema e detto espandibile.
b) Le chiamate di sistema operano in maniera simile alle interruzioni, nel senso che quandoavviene una chiamata di sistema, il sistema si porta in modalita kernel e serve la richiestamediante una apposita routine di servizio.
[A] a) vera ; b) falsa
[B] entrambe vere
[C] a) falsa ; b) vera
[D] entrambe false
domanda N. 2:
Si determini la veridicita’ delle seguenti affermazioni:
a) In ogni sistema operativo e presente una tabella (chiamata tabella dei processi o ProcessControl Block = PCB) che tiene traccia di tutti i processi in esecuzione. In tale tabellae memorizzato per ogni processo in esecuzione un identificativo di processo (pid), unpuntatore alla memoria dove sono stati memorizzati il codice e l’area dati, nonche’ tuttele informazioni necessarie per effettuare correttamente il cambio di contesto.
b) Pur avendo alcuni campi sempre presenti in tutti i sistemi operativi, la struttura generaledel PCB dipende dalla implementazione del sistema operativo.
[A] entrambe vere
[B] a) falsa ; b) vera
[C] a) vera ; b) falsa
[D] entrambe false
domanda N. 3:
Si determini il numero di processi generati (compreso quello mandato in esecuzione dalla linea
25
di comando) dal seguente codice C, compilato e fatto eseguire su un sistema con il sistemaoperativo Unix:main(){int pid, i;for (i = 0; i <= 3; i + +){
pid=fork();if (pid == 0 && i < 3) exit(0);
}exit(0);}
[A] 5
[B] 9
[C] 6
[D] 8
domanda N. 4:
Sia dato il seguente insieme di processi:
TA TC P
P1 1 7 2P2 2 5 4P3 6 4 5P4 7 7 1P5 10 2 3
dove TA e il tempo di arrivo nella coda dei processi pronti, TC e il tempo di utilizzo della CPUe P e la priorita (priorita massima = 5). Utilizzando l’algoritmo di scheduling a priorita conprelazione, si determini il tempo medio di esecuzione.
[A] 10.6
[B] 11
[C] 10.4
[D] 11.2
domanda N. 5:
26
Sia dato il seguente insieme di processi:
TA TC
P1 0 8P2 3 6P3 5 8P4 9 4P5 11 2
dove TA e il tempo di arrivo nella coda dei processi pronti e TC e il tempo di utilizzo della CPU.Utilizzando l’algoritmo di scheduling Round Robin con quanto di tempo q = 2, si determini iltempo medio di esecuzione.
[A] 16.2
[B] 16.4
[C] 16.6
[D] 16
domanda N. 6:
Siano dati tre processi che condividono una variabile x e i cui pseudo codici sono di seguitoriportati:
P1 P2 P3
wait(R) wait(S) wait(T)x = x-5; x = x+2; x = x+3;signal(T); if(x >= 3)then if(x==1)thenwait(R); signal(R); signal(R);signal(S); else endif
signal(T); wait(T);endifwait(S);signal(T);
Supponendo che i tre semafori binari R, S e T siano inizializzati rispettivamente a R = 0,S = 1 e T = 0, si determini quale valore iniziale della variabile x, tra quelli proposti nellerisposte, non comporti una situazione di stallo per i processi.
[A] x = 1
[B] x = −1
[C] x = 0
[D] x = 2
27
domanda N. 7:
Si determini la veridicita’ delle seguenti affermazioni:
a) Andando dai livelli di memoria piu bassi (dispositivi secondari e terziari) a quelli piu alti(registri e cache), il tempo di accesso diminuisce.
b) In generale, l’overhead a cui si va in contro con l’allocazione non contigua dei processi inmemoria e compensata dal vantaggio di un aumento del grado di multiprogrammazione.
[A] a) vera ; b) falsa
[B] entrambe false
[C] entrambe vere
[D] a) falsa ; b) vera
domanda N. 8:
Sia dato un sistema che gestisce una memoria di 5120 byte mediante partizioni variabili. Sisupponga che nella memoria siano gia presenti 5 processi di dimensioni 740, 875, 250, 1450 e490 byte rispettivamente allocati negli indirizzi fisici 2048, 3072, 2788, 0 e 4096. Si determinil’indirizzo in cui verra allocato un ulteriore processo di 389 byte mediante la tecnica del bestfit.
[A] 4586
[B] 1450
[C] 3038
[D] 3947
domanda N. 9:
Si consideri un sistema con paginazione su due livelli. Per un processo che richiede 16 pagine,ognuna di 512 byte, di seguito si riportano la tabella delle pagine di primo livello (P ′) e le4 tabelle di secondo livello (P”0, P”1, P”2 e P”3), le quali hanno rispettivamente indirizzofisico iniziale 0, 512, 1024 e 1536:
P ′
0 0
1 512
2 1024
3 1536
P”0
0 8192
1 11776
2 5120
3 14336
P”1
0 10752
1 7680
2 3072
3 6144
P”2
0 5632
1 10240
2 13824
3 11264
P”3
0 9216
1 3584
2 12800
3 14848
Si determini quale indirizzo fisico, tra quelli proposti, non appartiene allo spazio di indirizza-mento del processo.
28
[A] 3070
[B] 6146
[C] 9218
[D] 14850
domanda N. 10:
Si consideri un sistema operativo con paginazione su richiesta basato sull’algoritmo First InFirst Out (FIFO), che assegna ad ogni processo 3 frame di 512 Byte e che richiede 2 Byte perla memorizzazione di un intero. Ponendo attenzione solo agli array A, B e C, e ricordando cheil linguaggio C memorizza gli array 2-dimensionali per righe, si determini il numero di pagefaults del seguente frammento di codice C. ...int A[512], B[2][256], C[2][512];...N=256;for (i=0; i<2; i++){
for (j=0; j<N; j++){C[i][2*j] = A[i*N+j] + B[i][j];
} }
[A] 10
[B] 11
[C] 12
[D] 8
domanda N. 11:
Si consideri un sistema opereativo con paginazione su richiesta basato sull’algoritmo LeastRecently Used (LRU), che assegna ad ogni processo 5 frame. Si determini il numero di pagefaults per la seguente sequenza di riferimenti alle pagine:
6, 1, 4, 6, 5, 3, 1, 2, 4, 6, 5, 6, 4, 3, 5
[A] 9
[B] 8
[C] 7
[D] 10
29
domanda N. 12:
Sia dato un disco con 200 tracce e velocita di seek di 1 traccia per ms. All’istante t=0 ilsistema operativo sta servendo una richiesta sulla traccia 100 e in coda ci sono richieste per letracce (40; 65; 90; 120; 145; 125). Successivamente arrivano altre richieste all’istante t=30 perla traccia 95 e all’istante t=135 per la traccia 100. Si calcoli il tempo di ricerca complessivoper servire tutte le richieste secondo la politica Shortest Seek Time First (SSTF), trascurandola latenza rotazionale e il tempo di trasferimento.
[A] 165
[B] 215
[C] 185
[D] 210
domanda N. 13:
Si determini la veridicita’ delle seguenti affermazioni:
a) Con un carico del disco pesante, la politica di scheduling SCAN andrebbe sempre preferitaalla politica C-SCAN a causa dell’overhead del ”ritorno a vuoto” della testina che inquesto caso diventa ancora piu significativo.
b) Il livello RAID con il piu alto overhead di memoria secondaria e il livello 5, a causa dellospazio utilizzato per la gestione delle informazioni relative alla parita.
[A] entrambe vere
[B] a) vera ; b) falsa
[C] a) falsa ; b) vera
[D] entrambe false
domanda N. 14:
Si consideri un disco che opera a 12000 rpm (giri al minuto), dove ogni traccia e composta da160 settori di 1024 byte ognuno. Si determini la velocita di trasferimento necessaria per poterleggere o scrivere una traccia intera durante una rotazione del disco.
[A] circa 16000 KB/sec
[B] circa 9600 KB/sec
[C] circa 8000 KB/sec
30
[D] circa 32000 KB/sec
domanda N. 15:
Si determini la veridicita’ delle seguenti affermazioni:
a) Per motivi di efficienza, la lista dei blocchi liberi e generalmente ordinata secondo l’indicedel blocco.
b) I principali compiti di un file system sono: gestire le strutture logiche del file system(directory e file), organizzare i file in blocchi e gestirne l’allocazione, verificare l’integritadei dati, gestire lo spazio libero e verificare che i dati nei file non contengano errori.
[A] entrambe false
[B] a) vera ; b) falsa
[C] entrambe vere
[D] a) falsa ; b) vera
domanda N. 16:
Sia dato un file system che gestisca blocchi da 256 byte e indirizzi da 16 bit mediante unaallocazione indicizzata dei file. Si calcoli la dimensione massima di un file per questo filesystem supponendo che i blocchi indice contengono:
• 8 puntatori diretti a blocchi di dati
• 2 puntatori indiretti a blocchi di dati
[A] 266240 byte
[B] 67584 byte
[C] 271360 byte
[D] 50944 byte
domanda N. 17:
Si determini la veridicita delle seguenti affermazioni:
a) Si consideri un file formato da 100 record allocato su disco in forma indicizzata dove irecord del file sono memorizzati uno per blocco e il file descriptor e gia in memoriacentrale. Se non e stato fatto ancora nessun accesso al file, allora per cancellare il 50-morecord e necessario 1 accesso in lettura e 1 in scrittura.
31
b) Si consideri un file formato da 100 record allocato su disco in forma contigua dove i recorddel file sono memorizzati uno per blocco e il file descriptor e gia in memoria centrale. Sel’ultimo record letto e’ il record 10 allora per cancellare il 75-mo record sono necessari25 accessi in lettura e 1 in scrittura.
[A] entrambe vere
[B] a) vera ; b) falsa
[C] entrambe false
[D] a) falsa ; b) vera
32
================================================== compito N. 4 del 110609 ==========
=========================================
SVOLTO DA MATRICOLA
domanda 1
domanda 2
domanda 3
domanda 4
domanda 5
domanda 6
domanda 7
domanda 8
domanda 9
domanda 10
domanda 11
domanda 12
domanda 13
domanda 14
domanda 15
domanda 16
domanda 17
• 1.5 punti per ogni risposta esatta
• 0 punti per ogni risposta non data
• 0.5 punti di penalita’ per ogni risposta errata
FIRMA
33
============================================ CORSO DI SISTEMI OPERTIVI mod.A (gr. 1) ============ compito N. 5 del 110609 ==========
=========================================
domanda N. 1:
Si determini la veridicita’ delle seguenti affermazioni:
a) Per motivi di sicurezza, le seguenti istruzioni dovrebbero essere sempre eseguite in modalitasistema: lettura del clock di sistema, disabilitazione delle interruzioni, switch dallamodalita utente a quella di sistema, accesso ai dispositivi di I/O.
b) La principale difficolta nello sviluppo di un sistema operativo real time e garantire che iprocessi terminino la loro esecuzione in un fissato intervallo di tempo. In tal senso unruolo chiave e svolto dallo scheduler.
[A] entrambe false
[B] a) falsa ; b) vera
[C] a) vera ; b) falsa
[D] entrambe vere
domanda N. 2:
Si determini la veridicita’ delle seguenti affermazioni:
a) Il compito principale dello scheduler a lungo termine (anche detto job scheduler) e deter-minare l’ordine con cui i processi accedono alla CPU.
b) L’insieme dei processi che attendono il proprio turno per accedere alla CPU sono organiz-zati in una struttura dati chiamata coda dei processi in attesa (waiting queue).
[A] entrambe false
[B] a) falsa ; b) vera
[C] a) vera ; b) falsa
[D] entrambe vere
domanda N. 3:
Si determini il numero di processi generati (compreso quello mandato in esecuzione dalla lineadi comando) dal seguente codice C, compilato e fatto eseguire su un sistema con il sistemaoperativo Unix:
34
main(){int pid, i;for (i = 0; i <= 3; i + +){
pid=fork();if (pid == 0 && i < 3) exit(0);
}exit(0);}
[A] 9
[B] 6
[C] 8
[D] 5
domanda N. 4:
Sia dato il seguente insieme di processi:
TA TC
P1 0 10P2 1 8P3 4 3P4 9 2P5 12 4
dove TA e il tempo di arrivo nella coda dei processi pronti e TC e il tempo di utilizzo della CPU.Utilizzando l’algoritmo di scheduling dello Shortest Job First con prelazione, si determini iltempo medio di esecuzione.
[A] 10.2
[B] 9.8
[C] 10.0
[D] 10.4
domanda N. 5:
Sia dato il seguente insieme di processi:
TA TC
P1 0 10P2 3 6P3 5 6P4 9 4P5 13 2
35
dove TA e il tempo di arrivo nella coda dei processi pronti e TC e il tempo di utilizzo della CPU.Utilizzando l’algoritmo di scheduling Round Robin con quanto di tempo q = 2, si determini iltempo medio di esecuzione.
[A] 18.8
[B] 17.6
[C] 18.0
[D] 18.4
domanda N. 6:
Siano dati tre processi che condividono una variabile x e i cui pseudo codici sono di seguitoriportati:
P1 P2 P3
wait(R) wait(S) wait(T)x = x+3; x = x-5; x = x+2;if(x==4)then signal(R); if(x >= 5)then
signal(S); wait(S); signal(S);endif signal(T); elsewait(R); signal(R);
endifwait(T);signal(R);
Supponendo che i tre semafori binari R, S e T siano inizializzati rispettivamente a R = 0,S = 0 e T = 1, si determini quale valore iniziale della variabile x, tra quelli proposti nellerisposte, non comporti una situazione di stallo per i processi.
[A] x = 4
[B] x = 1
[C] x = 3
[D] x = 2
domanda N. 7:
Si determini la veridicita’ delle seguenti affermazioni:
a) Il significativo overhrad associato alla tecnica del compattamento usata per ridurre il prob-lema della frammentazione esterna, rende tale tecnica poco adatta per un utilizzo neisistemi operativi real-time.
b) In un sistema operativo che gestisce la memoria centrale mediante partizioni fisse, i registrichiamati base e limit vengono utilizzati per decidere in quale partizione allocare i processi.
36
[A] entrambe false
[B] a) vera ; b) falsa
[C] a) falsa ; b) vera
[D] entrambe vere
domanda N. 8:
Sia dato un sistema che gestisce una memoria di 5120 byte mediante partizioni variabili. Sisupponga che nella memoria siano gia presenti 5 processi di dimensioni 740, 875, 250, 1450 e490 byte rispettivamente allocati negli indirizzi fisici 2048, 3072, 2788, 0 e 4096. Si determinil’indirizzo in cui verra allocato un ulteriore processo di 389 byte mediante la tecnica del bestfit.
[A] 4586
[B] 1450
[C] 3038
[D] 3947
domanda N. 9:
Si consideri un sistema con paginazione su due livelli. Per un processo che richiede 16 pagine,di seguito si riportano la tabella delle pagine di primo livello (P ′) e le 4 tabelle di secondolivello (P”0, P”1, P”2 e P”3), le quali hanno rispettivamente indirizzo iniziale 8192, 8704,9216 e 9728:
P ′
0 8192
1 8704
2 9216
3 9728
P”0
0 0
1 512
2 1024
3 1536
P”1
0 2048
1 2560
2 3072
3 3584
P”2
0 4096
1 4608
2 5120
3 5632
P”3
0 6144
1 6656
2 7168
3 7680
Si determini l’indirizzo fisico corrispondente all’indirizzo logico < 1, 2, 341 >
[A] 1877
[B] 6997
[C] 5461
[D] 3413
37
domanda N. 10:
Si consideri un sistema operativo con paginazione su richiesta basato sull’algoritmo First InFirst Out (FIFO), che assegna ad ogni processo 3 frame di 512 Byte e che richiede 2 Byte perla memorizzazione di un intero. Ponendo attenzione solo agli array A e B, e ricordando cheil linguaggio C memorizza gli array 2-dimensionali per righe, si determini il numero di pagefaults del seguente frammento di codice C. ...int A[1024], B[2][512];...N=512;for (i=0; i<2; i++){
for (j=0; j<N/2; j++){B[i][2*j] = A[i*N+j] + A[i*N+2*j];
} }
[A] 10
[B] 8
[C] 11
[D] 12
domanda N. 11:
Si consideri un sistema operativo con paginazione su richiesta basato sull’algoritmo LeastRecently Used (LRU), che assegna ad ogni processo 5 frame. Se determini il numero di pagefaults per la squenza di riferimenti alle pagine:
3, 2, 3, 4, 3, 1, 5, 1, 4, 1, 2, 3, 6, 7, 3
[A] 9
[B] 8
[C] 10
[D] 7
domanda N. 12:
Sia dato un disco con 200 tracce e velocita di seek di 1 traccia per ms. All’istante t=0 ilsistema operativo sta servendo una richiesta sulla traccia 70 e in coda ci sono richieste per letracce (55; 62; 65; 95; 97; 105). Successivamente arrivano altre richieste all’istante t=7 per latraccia 71 e all’istante t=50 per la traccia 63. Si calcoli il tempo di ricerca complessivo in msper servire tutte le richieste secondo la politica Shortest Seek Time First (SSTF), trascurandola latenza rotazionale e il tempo di trasferimento.
38
[A] 97
[B] 65
[C] 121
[D] 107
domanda N. 13:
Si determini la veridicita’ delle seguenti affermazioni:
a) La motivazione originale per l’introduzione dei sistemi RAID e stata l’osservazione che lavelocita di trasferimento cresceva ad un tasso molto inferiore a quello della crescita siadella capacita dei dischi sia della potenza di elaborazione delle CPU.
b) L’algorimo di scheduling del disco First Come First Served tende ad avere una accettabilevarianza dei tempi di risposta a spese del numero di richieste servite per unita di tempo.
[A] a) vera ; b) falsa
[B] entrambe false
[C] a) falsa ; b) vera
[D] entrambe vere
domanda N. 14:
Si consideri un disco che opera a 12000 rpm (giri al minuto), dove ogni traccia e composta da160 settori di 1024 byte ognuno. Si determini la velocita di trasferimento necessaria per poterleggere o scrivere una traccia intera durante una rotazione del disco.
[A] circa 32000 KB/sec
[B] circa 16000 KB/sec
[C] circa 9600 KB/sec
[D] circa 8000 KB/sec
domanda N. 15:
Si determini la veridicita’ delle seguenti affermazioni:
a) Lo schema di allocazione basato sulla File Allocation Table (FAT) di Microsoft e unoschema che, con poca richiesta di memoria (necessaria solo per la tabella) e con pochiacccessi al disco assicura una gestione efficiente del file system anche se di grandi di-mensioni. Per tale motivo e ancora alla base di tutti i file system dei sistemi operativiMicrosoft.
39
b) Se il numero di blocchi usati in un file system e molto elevato, la memoria richiesta perla gestione dei blocchi liberi mediante lista concatenata puo essere inferiore a quellarichiesta dalla bitmap, nonostante quest’ultima usi solo un bit per blocco.
[A] a) vera ; b) falsa
[B] entrambe false
[C] a) falsa ; b) vera
[D] entrambe vere
domanda N. 16:
Sia dato un file system che gestisca blocchi da 256 byte e indirizzi da 32 bit mediante unaallocazione indicizzata dei file. Si calcoli la dimensione massima di un file per questo filesystem supponendo che i blocchi indice contengono:
• 7 puntatori diretti a blocchi di dati
• 3 puntatori indiretti a blocchi di dati
[A] 50944 byte
[B] 266240 byte
[C] 330240 byte
[D] 67584 byte
domanda N. 17:
Si determini la veridicita delle seguenti affermazioni:
a) Si consideri un file formato da 100 record allocato su disco in forma concatenata dovei record del file sono memorizzati uno per blocco e il file descriptor e gia in memoriacentrale. Se l’ultimo record letto e’ il record 35, allora per cancellare il 60-mo recordsono necessari 25 accessi in lettura e 1 in scrittura.
b) Si consideri un file formato da 100 record allocato su disco in forma contigua dove i recorddel file sono memorizzati uno per blocco e il file descriptor e gia in memoria centrale. Sel’ultimo record letto e’ il record 10 allora per cancellare il 75-mo record sono necessari25 accessi in lettura e 25 in scrittura.
[A] entrambe vere
[B] a) vera ; b) falsa
[C] entrambe false
[D] a) falsa ; b) vera
40
================================================== compito N. 5 del 110609 ==========
=========================================
SVOLTO DA MATRICOLA
domanda 1
domanda 2
domanda 3
domanda 4
domanda 5
domanda 6
domanda 7
domanda 8
domanda 9
domanda 10
domanda 11
domanda 12
domanda 13
domanda 14
domanda 15
domanda 16
domanda 17
• 1.5 punti per ogni risposta esatta
• 0 punti per ogni risposta non data
• 0.5 punti di penalita’ per ogni risposta errata
FIRMA
41
============================================ CORSO DI SISTEMI OPERTIVI mod.A (gr. 1) ============ compito N. 6 del 110609 ==========
=========================================
domanda N. 1:
Si determini la veridicita’ delle seguenti affermazioni:
a) L’ordine delle attivita’ di un sistema operativo e’ determinato da eventi che possono esseregenerati da dispositivi hardware, da errori in un programma in esecuzione oppure da unarichiesta specifica di un programma che intende accedere ai servizi del sistema operativostesso mediante chiamate di sistema.
b) Le routine di servizio relative ai differenti eventi di cui alla affermazione a) sono eseguitesempre in modalita’ sistema, anche nel caso di programmi utente che intendono accedereai servizi del sistema operativo attraverso le chiamate di sistema.
[A] entrambe false
[B] a) vera ; b) falsa
[C] entrambe vere
[D] a) falsa ; b) vera
domanda N. 2:
Si determini la veridicita’ delle seguenti affermazioni:
a) Il meccanismo piu utilizzato dai sistemi operativi per impedire che un processo possamonopolizzare l’uso della CPU consiste nell’assegnare ai processi un numero massimo diistruzioni da eseguire.
b) Quando un processo viene rimosso dalla CPU perchee e scaduto il suo quanto di tempo,viene inserito sempre nella coda dei processi in attesa (waiting queue). Il processo vienerimosso da tale coda solo al momento di tornare in esecuzione
[A] entrambe vere
[B] entrambe false
[C] a) falsa ; b) vera
[D] a) vera ; b) falsa
42
domanda N. 3:
Si determini il numero di processi generati (compreso quello mandato in esecuzione dalla lineadi comando) dal seguente codice C, compilato e fatto eseguire su un sistema con il sistemaoperativo Unix:main(){int pid, i;for (i = 0; i <= 3; i + +){
pid=fork();if (pid == 0 && i > 1) exit(0);
}exit(0);}
[A] 12
[B] 9
[C] 8
[D] 10
domanda N. 4:
Sia dato il seguente insieme di processi:
TA TC
P1 0 8P2 0 2P3 3 4P4 5 6P5 9 2
dove TA e il tempo di arrivo nella coda dei processi pronti e TC e il tempo di utilizzo della CPU.Utilizzando l’algoritmo di scheduling dello Shortest Job First con prelazione, si determini iltempo medio di esecuzione.
[A] 7
[B] 8
[C] 7.5
[D] 8.5
43
domanda N. 5:
Sia dato il seguente insieme di processi:
TA TC
P1 0 8P2 1 4P3 3 6P4 7 2P5 9 2
dove TA e il tempo di arrivo nella coda dei processi pronti e TC e il tempo di utilizzo della CPU.Utilizzando l’algoritmo di scheduling Round Robin con quanto di tempo q = 2, si determini iltempo medio di esecuzione.
[A] 12.6
[B] 13.2
[C] 13.0
[D] 12.8
domanda N. 6:
Siano dati tre processi che condividono una variabile x e i cui pseudo codici sono di seguitoriportati:
P1 P2 P3
wait(R) wait(S) wait(T)x = x-5; x = x+2; x = x+3;signal(T); if(x >= 5)then if(x==1)thenwait(R); signal(T); signal(R);signal(S); else endif
signal(R); wait(T);endifwait(S);signal(T);
Supponendo che i tre semafori binari R, S e T siano inizializzati rispettivamente a R = 0,S = 1 e T = 0, si determini quale valore iniziale della variabile x, tra quelli proposti nellerisposte, non comporti una situazione di stallo per i processi.
[A] x = 4
[B] x = 1
[C] x = 2
[D] x = 3
44
domanda N. 7:
Si determini la veridicita’ delle seguenti affermazioni:
a) Il principale vantaggio dell’introduzione dei meccanismi di memoria virtuale (sia paginatache segmentata) e l’eliminazione del problema della frammentazione.
b) Si consideri un sistema con memoria virtuale che rappresenti un indirizzo virtuale v medi-ante la coppia (b, d) usando 32 bit. Se il numero di pagina b e specificato usando n = 20bit, allora la dimensione delle pagine e di 4096 byte.
[A] a) falsa ; b) vera
[B] a) vera ; b) falsa
[C] entrambe false
[D] entrambe vere
domanda N. 8:
Sia data una memoria di 32MByte gestita mediante paginazione con frame di 512 KByte e sisupponga che il sistema operativo richieda 6 MByte. Si calcoli la dimensione della memoriaeffettivamente ancora utilizzabile dopo l’allocazione di 5 processi rispettivamente di 2530,1840, 785, 3421, 2013 KByte.
[A] 15360 KByte
[B] 19456 KByte
[C] 17408 KByte
[D] 21540 KByte
domanda N. 9:
Si consideri un sistema con paginazione su due livelli. Per un processo che richiede 16 pagine,di seguito si riportano la tabella delle pagine di primo livello (P ′) e le 4 tabelle di secondolivello (P”0, P”1, P”2 e P”3), le quali hanno rispettivamente indirizzo iniziale 8192, 8704,9216 e 9728:
P ′
0 8192
1 8704
2 9216
3 9728
P”0
0 0
1 512
2 1024
3 1536
P”1
0 2048
1 2560
2 3072
3 3584
P”2
0 4096
1 4608
2 5120
3 5632
P”3
0 6144
1 6656
2 7168
3 7680
Si determini l’indirizzo fisico corrispondente all’indirizzo logico < 0, 3, 408 >
45
[A] 1944
[B] 7803
[C] 6267
[D] 4731
domanda N. 10:
Si consideri un sistema operativo con paginazione su richiesta basato sull’algoritmo First InFirst Out (FIFO), che assegna ad ogni processo 3 frame di 512 Byte e che richiede 2 Byte perla memorizzazione di un intero. Ponendo attenzione solo agli array A, B e C, e ricordando cheil linguaggio C memorizza gli array 2-dimensionali per righe, si determini il numero di pagefaults del seguente frammento di codice C. ...int A[512], B[2][256], C[2][512];...N=256;for (i=0; i<2; i++){
for (j=0; j<N; j++){C[i][2*j] = A[i*N+j] + B[i][j];
} }
[A] 12
[B] 8
[C] 10
[D] 11
domanda N. 11:
Si consideri un sistema operativo con paginazione su richiesta basato sull’algoritmo First InFirst Out con seconda chance, che assegna ad ogni processo 5 frame. Se determini il numerodi page faults per la squenza di riferimenti alle pagine:
1, 2, 3, 1, 4, 5, 2, 6, 7, 1, 2, 5, 3, 2, 1
[A] 9
[B] 10
[C] 7
[D] 8
46
domanda N. 12:
Sia dato un disco con 200 tracce e velocita di seek di 1 traccia per ms. All’istante t=0 ilsistema operativo sta servendo una richiesta sulla traccia 100 e in coda ci sono richieste per letracce (40; 65; 90; 120; 145; 125). Successivamente arrivano altre richieste all’istante t=30 perla traccia 95 e all’istante t=135 per la traccia 100. Si calcoli il tempo di ricerca complessivoper servire tutte le richieste secondo la politica Shortest Seek Time First (SSTF), trascurandola latenza rotazionale e il tempo di trasferimento.
[A] 165
[B] 215
[C] 185
[D] 210
domanda N. 13:
Si determini la veridicita’ delle seguenti affermazioni:
a) Un problema frequente nell’algoritmo First Come First Served (FCFS) di scheduling deldisco e la posticipazione indefinita di alcune richieste di servizio.
b) La latenza rotazionale e identica per ogni accesso al disco.
[A] a) falsa ; b) vera
[B] entrambe vere
[C] entrambe false
[D] a) vera ; b) falsa
domanda N. 14:
Si consideri un disco che opera a 7200 rpm (giri al minuto), dove ogni traccia e composta da160 settori di 512 bytes ognuno. Si determini la velocita di trasferimento necessaria per poterleggere o scrivere una traccia intera durante una rotazione del disco.
[A] circa 13400 KB/sec
[B] circa 19200 KB/sec
[C] circa 9600 KB/sec
[D] circa 4800 KB/sec
47
domanda N. 15:
Si determini la veridicita’ delle seguenti affermazioni:
a) Il principale vantaggio dello schema di allocazione di file con lista concatenata e l’elevataefficienza nella ricerca dei blocchi, poiche sono noti numerosi algoritmi efficienti per lagestione delle liste.
b) La File Allocation Table (FAT) di Microsoft e uno speciale schema di allocazione dei filesu disco che rientra tra le tecniche di allocazione dei file in blocchi contigui.
[A] a) falsa ; b) vera
[B] entrambe false
[C] a) vera ; b) falsa
[D] entrambe vere
domanda N. 16:
Sia dato un file system di 8 MB che gestisca i file mediante allocazione tabellare (ad es. unaFile Allocation Table). Si determini la dimensione della tabella nel caso in cui i blocchi deldisco siano di 1024 byte.
[A] 13 KB
[B] 12 KB
[C] 104 KB
[D] 64 KB
domanda N. 17:
Si determini la veridicita delle seguenti affermazioni:
a) Si consideri un file formato da 100 record allocato su disco in forma concatenata dovei record del file sono memorizzati uno per blocco e il file descriptor e gia in memoriacentrale. Se l’ultimo record letto e’ il record 35, allora per cancellare il 60-mo recordsono necessari 25 accessi in lettura e 1 in scrittura.
b) Si consideri un file formato da 100 record allocato su disco in forma contigua dove i recorddel file sono memorizzati uno per blocco e il file descriptor e gia in memoria centrale. Sel’ultimo record letto e’ il record 10 allora per cancellare il 75-mo record sono necessari25 accessi in lettura e 25 in scrittura.
[A] entrambe false
48
[B] a) falsa ; b) vera
[C] entrambe vere
[D] a) vera ; b) falsa
49
================================================== compito N. 6 del 110609 ==========
=========================================
SVOLTO DA MATRICOLA
domanda 1
domanda 2
domanda 3
domanda 4
domanda 5
domanda 6
domanda 7
domanda 8
domanda 9
domanda 10
domanda 11
domanda 12
domanda 13
domanda 14
domanda 15
domanda 16
domanda 17
• 1.5 punti per ogni risposta esatta
• 0 punti per ogni risposta non data
• 0.5 punti di penalita’ per ogni risposta errata
FIRMA
50
============================================ CORSO DI SISTEMI OPERTIVI mod.A (gr. 1) ============ compito N. 7 del 110609 ==========
=========================================
domanda N. 1:
Si determini la veridicita’ delle seguenti affermazioni:
a) Uno degli scopi principali delle chiamate di sistema e’ quello di fornire ai programmi deimetodi di accesso diretto alle funzionalita’ del sistema operativo in maniera protetta.
b) Poiche’ le chiamate di sistema sono l’unico modo con cui un processo utente puo’ accedereai servizi del sistema operativo, il relativo codice e’ eseguito in modalita’ utente
[A] a) falsa ; b) vera
[B] entrambe false
[C] entrambe vere
[D] a) vera ; b) falsa
domanda N. 2:
Si determini la veridicita’ delle seguenti affermazioni:
a) L’insieme delle informazioni che caratterizzano un processo in esecuzione e che sono mem-orizzate nel Process Control Block e chiamato contesto. Per tale motivo la proceura chesospende un processo in esecuzione per mandarne un altro e detta cambio di contesto(context switch).
b) Il tempo medio di esecuzione di un insieme di processi di un sistema operativo time sharingdiminuisce sempre quando aumenta la frequenza dei context switch, in quanto i processiin esecuzione si avvicendano piu rapidemente nell’uso della CPU.
[A] entrambe vere
[B] a) vera ; b) falsa
[C] entrambe false
[D] a) falsa ; b) vera
domanda N. 3:
Si determini il numero di processi generati (compreso quello mandato in esecuzione dalla linea
51
di comando) dal seguente codice C, compilato e fatto eseguire su un sistema con il sistemaoperativo Unix:main(){int pid, i;for (i = 0; i <= 3; i + +){
pid=fork();if (pid == 0 && i == 2) exit(0);
}exit(0);}
[A] 8
[B] 10
[C] 14
[D] 12
domanda N. 4:
Sia dato il seguente insieme di processi:
TA TC P
P1 1 7 2P2 2 5 4P3 6 4 5P4 7 7 1P5 10 2 3
dove TA e il tempo di arrivo nella coda dei processi pronti, TC e il tempo di utilizzo della CPUe P e la priorita (priorita massima = 5). Utilizzando l’algoritmo di scheduling a priorita conprelazione, si determini il tempo medio di esecuzione.
[A] 11.2
[B] 10.6
[C] 11
[D] 10.4
domanda N. 5:
52
Sia dato il seguente insieme di processi:
TA TC
P1 0 8P2 1 4P3 3 6P4 7 2P5 9 2
dove TA e il tempo di arrivo nella coda dei processi pronti e TC e il tempo di utilizzo della CPU.Utilizzando l’algoritmo di scheduling Round Robin con quanto di tempo q = 2, si determini iltempo medio di esecuzione.
[A] 13.0
[B] 12.8
[C] 12.6
[D] 13.2
domanda N. 6:
Siano dati tre processi che condividono una variabile x e i cui pseudo codici sono di seguitoriportati:
P1 P2 P3
wait(R) wait(S) wait(T)x = x+2; x = x*2; x = x+1;if (x > 0) then signal(T); signal(S);
x = -1; wait(S); wait(T)endif x = -x; x = x+1print x; signal(R); signal(S);
Si determini l’output del processo P1 supponendo che inizialmente x = 1 e i tre semaforibinari siano inizializzati rispettivamente R = 0, S = 0, T = 1.
[A] -2
[B] -1
[C] -3
[D] -4
domanda N. 7:
Si determini la veridicita’ delle seguenti affermazioni:
53
a) Il tempo necessario a prelevare un dato dalla memoria in un sistema operativo che usa lamemoria virtuale e lo stesso di un sistema operativo che non ne fa uso.
b) Sia dato un processo di 6 pagine, in un sistema che assegna 5 frame ad ogni processo. Sel’esecuzione di tale processo richiede 15 riferimenti in memoria, l’algoritmo di paginazioneFIFO richiede almeno 6 page faults.
[A] a) vera ; b) falsa
[B] entrambe false
[C] a) falsa ; b) vera
[D] entrambe vere
domanda N. 8:
Sia data una memoria di 32MByte gestita mediante paginazione con frame di 512 KByte e sisupponga che il sistema operativo richieda 7 MByte. Si calcoli la dimensione della memoriaeffettivamente ancora utilizzabile dopo l’allocazione di 5 processi rispettivamente di 2343,1724, 489, 1270, 2110 KByte.
[A] 15360 KByte
[B] 19456 KByte
[C] 21504 KByte
[D] 16384 KByte
domanda N. 9:
Si consideri un sistema con paginazione su due livelli. Per un processo che richiede 16 pagine,ognuna di 512 byte, di seguito si riportano la tabella delle pagine di primo livello (P ′) e le4 tabelle di secondo livello (P”0, P”1, P”2 e P”3), le quali hanno rispettivamente indirizzofisico iniziale 0, 512, 1024 e 1536:
P ′
0 0
1 512
2 1024
3 1536
P”0
0 8192
1 11776
2 5120
3 14336
P”1
0 10752
1 7680
2 3072
3 6144
P”2
0 5632
1 10240
2 13824
3 11264
P”3
0 9216
1 3584
2 12800
3 14848
Si determini quale indirizzo fisico, tra quelli proposti, non appartiene allo spazio di indirizza-mento del processo.
[A] 9218
[B] 14850
54
[C] 3070
[D] 6146
domanda N. 10:
Si consideri un sistema operativo con paginazione su richiesta basato sull’algoritmo First InFirst Out (FIFO), che assegna ad ogni processo 3 frame di 512 Byte e che richiede 2 Byte perla memorizzazione di un intero. Ponendo attenzione solo agli array A, B e C, e ricordando cheil linguaggio C memorizza gli array 2-dimensionali per righe, si determini il numero di pagefaults del seguente frammento di codice C. ...int A[2][512], B[512], C[512];...N=512;for (i=0; i<2; i++){
for (j=0; j<N; j++){B[j/2 + i*256] = A[i][j] + C[j];
} }
[A] 12
[B] 8
[C] 11
[D] 10
domanda N. 11:
Si consideri un sistema operativo con paginazione su richiesta basato sull’algoritmo First InFirst Out con seconda chance, che assegna ad ogni processo 5 frame. Se determini il numerodi page faults per la squenza di riferimenti alle pagine:
7, 6, 5, 7, 4, 3, 6, 2, 1, 7, 6, 3, 5, 4, 7
[A] 8
[B] 10
[C] 7
[D] 9
domanda N. 12:
Sia dato un disco con 200 tracce e velocita di seek di 1 traccia per ms. All’istante t=0 il sistema
55
operativo sta servendo una richiesta sulla traccia 100 e in coda ci sono richieste per le tracce(10; 30; 55; 80; 92; 130). Successivamente arrivano altre richieste all’istante t=40 per la traccia50 e all’istante t=100 per la traccia 15. Si calcoli il tempo di ricerca complessivo per serviretutte le richieste secondo la politica LOOK, iniziando in ordine discendente e trascurando lalatenza rotazionale e il tempo di trasferimento.
[A] 110
[B] 215
[C] 285
[D] 325
domanda N. 13:
Si determini la veridicita’ delle seguenti affermazioni:
a) Le tecniche di ottimizzazione rotazionale del disco hanno avuto una importanza crescentenegli ultimi anni perche i moderni dischi rigidi esibiscono tempi di seek e latenze mediedello stesso ordine di grandezza.
b) Il livello RAID 1 e il migliore per ambienti in cui l’affidabilita ha una priorita superiore alcosto o alle prestazioni.
[A] entrambe vere
[B] entrambe false
[C] a) vera ; b) falsa
[D] a) falsa ; b) vera
domanda N. 14:
Si calcoli la probabilitaa di perdere i dati con un sistema RAID level 5 con 5 dischi, se il MeanTime to Failure (MTF) e di 1600 giorni e il Mean Time to Repair (MTR) e di 23.04 giorni.
[A] 0.0002
[B] 0.00003
[C] 0.00011
[D] 0.00009
domanda N. 15:
Si determini la veridicita’ delle seguenti affermazioni:
56
a) Un vantaggio dello schema di allocazione contigua di file in un file system e la velocita diaccesso poiche non si devono effettuare ulteriori operazioni di ricerche dei blocchi dopoaver individuato il primo blocco
b) Un problema nella prima versione della File Allocation Table di Microsoft (FAT12) era laframmentazione interna per i dischi di grandi dimensioni. Tale problema sussiste anchecon le nuove versioni FAT16 e FAT32, per cui esse vengono oramai utilizzate solo per ifile systen dei floppy disk.
[A] entrambe false
[B] entrambe vere
[C] a) vera ; b) falsa
[D] a) falsa ; b) vera
domanda N. 16:
Sia dato un file system che gestisca blocchi da 256 byte e indirizzi da 32 bit mediante unaallocazione indicizzata dei file. Si calcoli la dimensione massima di un file per questo filesystem supponendo che i blocchi indice contengono:
• 7 puntatori diretti a blocchi di dati
• 3 puntatori indiretti a blocchi di dati
[A] 67584 byte
[B] 50944 byte
[C] 266240 byte
[D] 330240 byte
domanda N. 17:
Si determini la veridicita delle seguenti affermazioni:
a) Si consideri un file formato da 100 record allocato su disco in forma concatenata dovei record del file sono memorizzati uno per blocco e il file descriptor e gia in memoriacentrale. Se l’ultimo record letto e’ il record 25, allora per cancellare il 60-mo recordsono necessari 35 accessi in lettura e 35 in scrittura.
b) Si consideri un file formato da 100 record allocato su disco in forma contigua dove i recorddel file sono memorizzati uno per blocco e il file descriptor e gia in memoria centrale. Sel’ultimo record letto e’ il record 10 allora per cancellare il 60-mo record sono necessari40 accessi in lettura e 1 in scrittura.
[A] entrambe false
57
[B] a) falsa ; b) vera
[C] a) vera ; b) falsa
[D] entrambe vere
58
================================================== compito N. 7 del 110609 ==========
=========================================
SVOLTO DA MATRICOLA
domanda 1
domanda 2
domanda 3
domanda 4
domanda 5
domanda 6
domanda 7
domanda 8
domanda 9
domanda 10
domanda 11
domanda 12
domanda 13
domanda 14
domanda 15
domanda 16
domanda 17
• 1.5 punti per ogni risposta esatta
• 0 punti per ogni risposta non data
• 0.5 punti di penalita’ per ogni risposta errata
FIRMA
59
============================================ CORSO DI SISTEMI OPERTIVI mod.A (gr. 1) ============ compito N. 8 del 110609 ==========
=========================================
domanda N. 1:
Si determini la veridicita’ delle seguenti affermazioni:
a) Per motivi di sicurezza, le seguenti istruzioni dovrebbero essere sempre eseguite in modalitasistema: lettura del clock di sistema, disabilitazione delle interruzioni, switch dallamodalita utente a quella di sistema, accesso ai dispositivi di I/O.
b) La principale difficolta nello sviluppo di un sistema operativo real time e garantire che iprocessi terminino la loro esecuzione in un fissato intervallo di tempo. In tal senso unruolo chiave e svolto dallo scheduler.
[A] entrambe vere
[B] entrambe false
[C] a) falsa ; b) vera
[D] a) vera ; b) falsa
domanda N. 2:
Si determini la veridicita’ delle seguenti affermazioni:
a) Il sistema operativo accede molto spesso ai Process Control Blocks. Di conseguenza moltiprocessori possiedono un registro hardware che fa riferimento al PCB del processo inesecuzione in modo da facilitare il cambio di contesto.
b) Una delle operazioni che un processo puo’ effettuare quando riceve un segnale e di ignorarlo.Con tale termine si intende la capacita di redirigere il segnale ad un altro processo.
[A] a) vera ; b) falsa
[B] entrambe false
[C] a) falsa ; b) vera
[D] entrambe vere
domanda N. 3:
Si determini il numero di processi generati (compreso quello mandato in esecuzione dalla linea
60
di comando) dal seguente codice C, compilato e fatto eseguire su un sistema con il sistemaoperativo Unix:main(){int pid, i;for (i = 0; i <= 3; i + +){
pid=fork();if (pid == 0 && i > 2) exit(0);
}exit(0);}
[A] 16
[B] 9
[C] 8
[D] 10
domanda N. 4:
Sia dato il seguente insieme di processi:
TA TC P
P1 0 6 3P2 3 4 5P3 4 6 4P4 11 2 5P5 14 4 1
dove TA e il tempo di arrivo nella coda dei processi pronti, TC e il tempo di utilizzo della CPUe P e la priorita (priorita massima = 5). Utilizzando l’algoritmo di scheduling a priorita conprelazione, si determini il tempo medio di esecuzione.
[A] 8.8
[B] 8.6
[C] 8.2
[D] 8.4
domanda N. 5:
61
Sia dato il seguente insieme di processi:
TA TC
P1 0 7P2 1 7P3 7 7P4 11 3P5 13 2
dove TA e il tempo di arrivo nella coda dei processi pronti e TC e il tempo di utilizzo della CPU.Utilizzando l’algoritmo di scheduling Round Robin con quanto di tempo q = 2, si determini iltempo medio di esecuzione.
[A] 15
[B] 14.6
[C] 14.4
[D] 14.8
domanda N. 6:
Siano dati tre processi che condividono una variabile x e i cui pseudo codici sono di seguitoriportati:
P1 P2 P3
wait(R) wait(S) wait(T);x = x+2; x = x+4; x = x-5;if(x >= 4)then if(x==1)then signal(S);signal(S); signal(T); wait(T);
else endif signal(R);signal(T); wait(S);
endifwait(R);signal(S);
Supponendo che i tre semafori binari R, S e T siano inizializzati rispettivamente a R = 1,S = 0 e T = 0, si determini quale valore iniziale della variabile x, tra quelli proposti nellerisposte, non comporti una situazione di stallo per i processi.
[A] x = 2
[B] x = 0
[C] x = 1
[D] x = 3
62
domanda N. 7:
Si determini la veridicita’ delle seguenti affermazioni:
a) I semafori possono essere usati in sistemi con allocazione contigua della memoria per evitareche i processi effetuino accessi illegali (ad esempio all’area di memoria assegnata alsistema operativo).
b) Per limitare il problema della frammentazione esterna, la tecnica del compattamento uniscebuchi adiacenti in memoria, mentre la tecnica della coalescenza rialloca i processi in ese-cuzione in maniera contigua in maniera da creare un unico spazio di memoria disponibileper i nuovi processi.
[A] entrambe vere
[B] a) vera ; b) falsa
[C] entrambe false
[D] a) falsa ; b) vera
domanda N. 8:
Sia dato un sistema che gestisce una memoria di 5120 byte mediante partizioni variabili. Sisupponga che nella memoria siano gia presenti 5 processi di dimensioni 740, 875, 250, 1450 e490 byte allocati rispettivamente a partire dagli indirizzi fisici 2048, 3072, 2788, 0 e 4096. Sidetermini l’indirizzo in cui verra allocato un ulteriore processo di 389 byte mediante la tecnicadel worst fit.
[A] 3038
[B] 3947
[C] 1450
[D] 4586
domanda N. 9:
Si consideri un sistema con paginazione su due livelli. Per un processo che richiede 16 pagine,ognuna di 512 byte, di seguito si riportano la tabella delle pagine di primo livello (P ′) e le4 tabelle di secondo livello (P”0, P”1, P”2 e P”3), le quali hanno rispettivamente indirizzofisico iniziale 0, 512, 1024 e 1536:
P ′
0 0
1 512
2 1024
3 1536
P”0
0 8192
1 11776
2 5120
3 14336
P”1
0 10752
1 7680
2 3072
3 6144
P”2
0 5632
1 10240
2 13824
3 11264
P”3
0 9216
1 3584
2 12800
3 14848
63
Si determini quale indirizzo fisico, tra quelli proposti, non appartiene allo spazio di indirizza-mento del processo.
[A] 13826
[B] 5118
[C] 10241
[D] 5634
domanda N. 10:
Si consideri un sistema operativo con paginazione su richiesta basato sull’algoritmo First InFirst Out (FIFO), che assegna ad ogni processo 3 frame di 512 Byte e che richiede 2 Byte perla memorizzazione di un intero. Ponendo attenzione solo agli array A, B e C, e ricordando cheil linguaggio C memorizza gli array 2-dimensionali per righe, si determini il numero di pagefaults del seguente frammento di codice C. ...int A[512], B[256], C[2][512];...N=256;for (i=0; i<2; i++){
for (j=0; j<N; j++){C[i][2*j] = A[i*N+j] + B[j];
} }
[A] 11
[B] 10
[C] 8
[D] 12
domanda N. 11:
Si consideri un sistema operativo con paginazione su richiesta basato sull’algoritmo del Work-ing Set con dimensione della finestra di osservazione w = 6. Si determini, a partire dall’istantet = 6, il minimo e massimo numero di frame che il sistema assegna ad un processo di 6 pagineche vengono referenziate nel seguente ordine:
4, 2, 1, 1, 6, 6, 4, 1, 1, 6, 5, 6, 3, 5, 3, 5, 4, 3, 2, 6, 5, 2, 3, 2, 1
[A] min=2, max=5
[B] min=2, max=4
[C] min=3, max=4
64
[D] min=3, max=5
domanda N. 12:
Sia dato un disco con 200 tracce e velocita di seek di 1 traccia per ms. All’istante t=0 ilsistema operativo sta servendo una richiesta sulla traccia 100 e in coda ci sono richieste per letracce (40; 65; 90; 120; 145; 125). Successivamente arrivano altre richieste all’istante t=30 perla traccia 95 e all’istante t=135 per la traccia 100. Si calcoli il tempo di ricerca complessivoper servire tutte le richieste secondo la politica Shortest Seek Time First (SSTF), trascurandola latenza rotazionale e il tempo di trasferimento.
[A] 185
[B] 210
[C] 165
[D] 215
domanda N. 13:
Si determini la veridicita’ delle seguenti affermazioni:
a) Il principale motivo per cui l’algoritmo di scheduling del disco Shortest Seek Time First epoco utilizzato nei sistemi di tipo generale e la possibilita di posticipazione indefinita dialcune richieste.
b) Uno dei parametri per la valutazione delle strategie di scheduling del disco e la varianzadei tempi di risposta che e una misura del numero di richieste servite per unita di tempo
[A] entrambe vere
[B] a) vera ; b) falsa
[C] entrambe false
[D] a) falsa ; b) vera
domanda N. 14:
Si consideri un disco che opera a 12000 rpm (giri al minuto), dove ogni traccia e composta da160 settori di 1024 byte ognuno. Si determini la velocita di trasferimento necessaria per poterleggere o scrivere una traccia intera durante una rotazione del disco.
[A] circa 32000 KB/sec
[B] circa 16000 KB/sec
65
[C] circa 9600 KB/sec
[D] circa 8000 KB/sec
domanda N. 15:
Si determini la veridicita’ delle seguenti affermazioni:
a) Il principale vantaggio dello schema di allocazione di file con lista concatenata e l’elevataefficienza nella ricerca dei blocchi, poiche sono noti numerosi algoritmi efficienti per lagestione delle liste.
b) La File Allocation Table (FAT) di Microsoft e uno speciale schema di allocazione dei filesu disco che rientra tra le tecniche di allocazione dei file in blocchi contigui.
[A] entrambe false
[B] a) vera ; b) falsa
[C] entrambe vere
[D] a) falsa ; b) vera
domanda N. 16:
Sia dato un file system che gestisca blocchi da 1024 byte e indirizzi da 32 bit mediante unaallocazione indicizzata dei file. Si calcoli la dimensione massima di un file per questo filesystem supponendo che i blocchi indice contengono:
• 9 puntatori diretti a blocchi di dati
• 1 puntatori indiretti a blocchi di dati
[A] 330240 byte
[B] 271360 byte
[C] 50944 byte
[D] 266240 byte
domanda N. 17:
Si determini la veridicita delle seguenti affermazioni:
a) Si consideri un file formato da 100 record allocato su disco in forma contigua dove i recorddel file sono memorizzati uno per blocco e il file descriptor e gia in memoria centrale. Sel’ultimo record letto e’ il record 10 allora per cancellare il 50-mo record sono necessari 1accesso in lettura e 1 in scrittura.
66
b) Si consideri un file formato da 100 record allocato su disco in forma concatenata dovei record del file sono memorizzati uno per blocco e il file descriptor e gia in memoriacentrale. Se l’ultimo record letto e’ il record 15, allora per cancellare il 65-mo recordsono necessari 50 accessi in lettura e 50 in scrittura.
[A] a) vera ; b) falsa
[B] entrambe false
[C] a) falsa ; b) vera
[D] entrambe vere
67
================================================== compito N. 8 del 110609 ==========
=========================================
SVOLTO DA MATRICOLA
domanda 1
domanda 2
domanda 3
domanda 4
domanda 5
domanda 6
domanda 7
domanda 8
domanda 9
domanda 10
domanda 11
domanda 12
domanda 13
domanda 14
domanda 15
domanda 16
domanda 17
• 1.5 punti per ogni risposta esatta
• 0 punti per ogni risposta non data
• 0.5 punti di penalita’ per ogni risposta errata
FIRMA
68
============================================ CORSO DI SISTEMI OPERTIVI mod.A (gr. 1) ============ compito N. 9 del 110609 ==========
=========================================
domanda N. 1:
Si determini la veridicita’ delle seguenti affermazioni:
a) Il livello software che contiene le componenti fondamentali di un sistema operativo e’ chiam-ato kernel. Al kernel appartengono i moduli per: la gestione della memoria centrale, ilcontrollo dei processi, la gestione dell’I/O e la gestione della memoria secondaria. Aquesto elenco di componenti fondamentali del kernel va aggiunto solo il sottosistema perla gestione delle interfacce grafiche e per l’interprete del linguaggio di comando.
b) I sistemi operativi hanno lo scopo primario di permettere alle applicazioni software diinteragire con l’hardware sottostante, e di gestire le risorse hardware e software delsistema in maniera efficiente.
[A] entrambe false
[B] entrambe vere
[C] a) falsa ; b) vera
[D] a) vera ; b) falsa
domanda N. 2:
Si determini la veridicita’ delle seguenti affermazioni:
a) Le prestazioni di una qualunque applicazione multithreading e sempre piu’ efficiente nelcaso di una implementazione dei thread utente secondo il modello molti a uno rispettoad una implementazione secondo il modello uno a uno. Cio e’ dovuto al fatto che con ilmodello molti a uno, i thread a livello utente non richiamano il kernel per le operazionidi scheduling e sincronizzazione.
b) Uno svantaggio dell’implementazione dei threads secondo il modello uno a uno e la scarsaportabilita delle applicazioni, in quanto esse devono interfacciarsi direttamente con lechiamate di sistema relative al sistema operativo su cui deve essere eseguita l’applicazione.I sistemi operativi conformi ad interfacce standard, ad esempio POSIX, riducono il prob-lema.
[A] entrambe vere
[B] a) vera ; b) falsa
[C] entrambe false
69
[D] a) falsa ; b) vera
domanda N. 3:
Si determini il numero di processi generati (compreso quello mandato in esecuzione dalla lineadi comando) dal seguente codice C, compilato e fatto eseguire su un sistema con il sistemaoperativo Unix:main(){int pid, i;for (i = 0; i <= 3; i + +){
pid=fork();if (pid == 0 && i <= 1) exit(0);
}exit(0);}
[A] 6
[B] 9
[C] 8
[D] 10
domanda N. 4:
Sia dato il seguente insieme di processi:
TA TC
P1 0 8P2 0 2P3 3 4P4 5 6P5 9 2
dove TA e il tempo di arrivo nella coda dei processi pronti e TC e il tempo di utilizzo della CPU.Utilizzando l’algoritmo di scheduling dello Shortest Job First con prelazione, si determini iltempo medio di esecuzione.
[A] 8.5
[B] 7
[C] 8
[D] 7.5
70
domanda N. 5:
Sia dato il seguente insieme di processi:
TA TC
P1 0 8P2 3 6P3 5 8P4 9 4P5 11 2
dove TA e il tempo di arrivo nella coda dei processi pronti e TC e il tempo di utilizzo della CPU.Utilizzando l’algoritmo di scheduling Round Robin con quanto di tempo q = 2, si determini iltempo medio di esecuzione.
[A] 16.2
[B] 16.4
[C] 16.6
[D] 16
domanda N. 6:
Siano dati tre processi che condividono una variabile x e i cui pseudo codici sono di seguitoriportati:
P1 P2 P3
wait(R) wait(S) wait(T)x = x+2; x = x*2; x = x+1;if (x > 0) then signal(T); signal(S);
x = -1; wait(S); wait(T)endif x = -x; x = x+1print x; signal(R); signal(S);
Si determini l’output del processo P1 supponendo che inizialmente x = 1 e i tre semaforibinari siano inizializzati rispettivamente R = 0, S = 0, T = 1.
[A] -1
[B] -3
[C] -4
[D] -2
domanda N. 7:
Si determini la veridicita’ delle seguenti affermazioni:
71
a) Il tempo necessario a prelevare un dato dalla memoria in un sistema operativo che usa lamemoria virtuale e lo stesso di un sistema operativo che non ne fa uso.
b) Sia dato un processo di 6 pagine, in un sistema che assegna 5 frame ad ogni processo. Sel’esecuzione di tale processo richiede 15 riferimenti in memoria, l’algoritmo di paginazioneFIFO richiede almeno 6 page faults.
[A] entrambe vere
[B] a) vera ; b) falsa
[C] entrambe false
[D] a) falsa ; b) vera
domanda N. 8:
Sia data una memoria di 32MByte gestita mediante paginazione con frame di 512 KByte e sisupponga che il sistema operativo richieda 7 MByte. Si calcoli la dimensione della memoriaeffettivamente ancora utilizzabile dopo l’allocazione di 5 processi rispettivamente di 2343,1724, 489, 1270, 2110 KByte.
[A] 16384 KByte
[B] 15360 KByte
[C] 19456 KByte
[D] 21504 KByte
domanda N. 9:
Si consideri un sistema con paginazione su due livelli. Per un processo che richiede 16 pagine,ognuna di 512 byte, di seguito si riportano la tabella delle pagine di primo livello (P ′) e le4 tabelle di secondo livello (P”0, P”1, P”2 e P”3), le quali hanno rispettivamente indirizzofisico iniziale 0, 512, 1024 e 1536:
P ′
0 0
1 512
2 1024
3 1536
P”0
0 8192
1 11776
2 5120
3 14336
P”1
0 10752
1 7680
2 3072
3 6144
P”2
0 5632
1 10240
2 13824
3 11264
P”3
0 9216
1 3584
2 12800
3 14848
Si determini quale indirizzo fisico, tra quelli proposti, non appartiene allo spazio di indirizza-mento del processo.
[A] 10754
[B] 12802
72
[C] 5122
[D] 13314
domanda N. 10:
Si consideri un sistema operativo con paginazione su richiesta basato sull’algoritmo First InFirst Out (FIFO), che assegna ad ogni processo 3 frame di 512 Byte e che richiede 2 Byte perla memorizzazione di un intero. Ponendo attenzione solo agli array A, B e C, e ricordando cheil linguaggio C memorizza gli array 2-dimensionali per righe, si determini il numero di pagefaults del seguente frammento di codice C. ...int A[2][512], B[512], C[512];...N=512;for (i=0; i<2; i++){
for (j=0; j<N; j++){B[j/2 + i*256] = A[i][j] + C[j];
} }
[A] 10
[B] 12
[C] 8
[D] 11
domanda N. 11:
Si consideri un sistema operativo con paginazione su richiesta basato sull’algoritmo First InFirst Out con seconda chance, che assegna ad ogni processo 5 frame. Se determini il numerodi page faults per la squenza di riferimenti alle pagine:
5, 4, 3, 5, 2, 1, 4, 6, 3, 5, 2, 5, 3, 1, 2
[A] 8
[B] 7
[C] 9
[D] 10
domanda N. 12:
Sia dato un disco con 200 tracce e velocita di seek di 1 traccia per ms. All’istante t=0 il sistema
73
operativo sta servendo una richiesta sulla traccia 100 e in coda ci sono richieste per le tracce(10; 30; 55; 80; 92; 130). Successivamente arrivano altre richieste all’istante t=40 per la traccia50 e all’istante t=100 per la traccia 15. Si calcoli il tempo di ricerca complessivo per serviretutte le richieste secondo la politica LOOK, iniziando in ordine discendente e trascurando lalatenza rotazionale e il tempo di trasferimento.
[A] 325
[B] 110
[C] 215
[D] 285
domanda N. 13:
Si determini la veridicita’ delle seguenti affermazioni:
a) Il principale motivo per cui l’algoritmo di scheduling del disco Shortest Seek Time First epoco utilizzato nei sistemi di tipo generale e la possibilita di posticipazione indefinita dialcune richieste.
b) Uno dei parametri per la valutazione delle strategie di scheduling del disco e la varianzadei tempi di risposta che e una misura del numero di richieste servite per unita di tempo
[A] a) vera ; b) falsa
[B] entrambe false
[C] a) falsa ; b) vera
[D] entrambe vere
domanda N. 14:
Si calcoli la probabilitaa di perdere i dati con un sistema RAID level 1 con 6 dischi, se il MeanTime to Failure (MTF) e di 1300 giorni e il Mean Time to Repair (MTR) e di 16.9 giorni.
[A] 0.00003
[B] 0.00009
[C] 0.00001
[D] 0.00011
domanda N. 15:
Si determini la veridicita’ delle seguenti affermazioni:
74
a) Un modo per risolvere il problema dei numerosi accessi al disco con lo schema di allocazionedei file a lista concatenata e l’utilizzo di blocchi molto grandi. Con tale modifica si ottieneuno schema senza grossi inconvenienti legati alla gestione del disco, che e utilizzato innumerosi sistemi come, ad esempio, Solaris 2.
b) Uno svantaggio dello schema di allocazione contigua di file in un file system e la frammen-tazione esterna del disco.
[A] a) vera ; b) falsa
[B] entrambe vere
[C] entrambe false
[D] a) falsa ; b) vera
domanda N. 16:
Sia dato un file system che gestisca blocchi da 256 byte e indirizzi da 32 bit mediante unaallocazione indicizzata dei file. Si calcoli la dimensione massima di un file per questo filesystem supponendo che i blocchi indice contengono:
• 7 puntatori diretti a blocchi di dati
• 3 puntatori indiretti a blocchi di dati
[A] 266240 byte
[B] 330240 byte
[C] 67584 byte
[D] 50944 byte
domanda N. 17:
Si determini la veridicita delle seguenti affermazioni:
a) Si consideri un file formato da 100 record allocato su disco in forma contigua dove i recorddel file sono memorizzati uno per blocco e il file descriptor e gia in memoria centrale. Sel’ultimo record letto e’ il record 25 allora per cancellare il 70-mo record sono necessari30 accessi in lettura e 30 in scrittura.
b) Si consideri un file formato da 100 record allocato su disco in forma concatenata dovei record del file sono memorizzati uno per blocco e il file descriptor e gia in memoriacentrale. Se l’ultimo record letto e’ il record 35, allora per cancellare il 75-mo recordsono necessari 40 accessi in lettura e 1 in scrittura.
[A] a) vera ; b) falsa
75
[B] entrambe false
[C] a) falsa ; b) vera
[D] entrambe vere
76
================================================== compito N. 9 del 110609 ==========
=========================================
SVOLTO DA MATRICOLA
domanda 1
domanda 2
domanda 3
domanda 4
domanda 5
domanda 6
domanda 7
domanda 8
domanda 9
domanda 10
domanda 11
domanda 12
domanda 13
domanda 14
domanda 15
domanda 16
domanda 17
• 1.5 punti per ogni risposta esatta
• 0 punti per ogni risposta non data
• 0.5 punti di penalita’ per ogni risposta errata
FIRMA
77
============================================ CORSO DI SISTEMI OPERTIVI mod.A (gr. 1) ============ compito N. 10 del 110609 ==========
=========================================
domanda N. 1:
Si determini la veridicita’ delle seguenti affermazioni:
a) La principale differenza tra un sistema operativo con architettura a strati ed uno con ar-chitettura a microkernel e che nel primo caso e consentita la comunicazione solo tramoduli appartenenti a strati adiacenti, mentre nel secondo caso e consentita la comuni-cazione attraverso tutti i moduli del sistema attraverso il kernel.
b) Per tolleranza ai guasti si intendela capacita di un sisietam operativo di correggere eventualierrori delle applicazioni degli utenti.
[A] a) vera ; b) falsa
[B] a) falsa ; b) vera
[C] entrambe vere
[D] entrambe false
domanda N. 2:
Si determini la veridicita’ delle seguenti affermazioni:
a) Il meccanismo piu utilizzato dai sistemi operativi per impedire che un processo possamonopolizzare l’uso della CPU consiste nell’assegnare ai processi un numero massimo diistruzioni da eseguire.
b) Quando un processo viene rimosso dalla CPU perchee e scaduto il suo quanto di tempo,viene inserito sempre nella coda dei processi in attesa (waiting queue). Il processo vienerimosso da tale coda solo al momento di tornare in esecuzione
[A] entrambe false
[B] a) falsa ; b) vera
[C] a) vera ; b) falsa
[D] entrambe vere
domanda N. 3:
Si determini il numero di processi generati (compreso quello mandato in esecuzione dalla linea
78
di comando) dal seguente codice C, compilato e fatto eseguire su un sistema con il sistemaoperativo Unix:main(){int pid, i;for (i = 0; i <= 3; i + +){
pid=fork();if (pid == 0 && i <= 1) exit(0);
}exit(0);}
[A] 8
[B] 10
[C] 6
[D] 9
domanda N. 4:
Sia dato il seguente insieme di processi:
TA TC
P1 0 10P2 1 8P3 4 3P4 9 2P5 12 4
dove TA e il tempo di arrivo nella coda dei processi pronti e TC e il tempo di utilizzo della CPU.Utilizzando l’algoritmo di scheduling dello Shortest Job First con prelazione, si determini iltempo medio di esecuzione.
[A] 10.2
[B] 9.8
[C] 10.0
[D] 10.4
domanda N. 5:
79
Sia dato il seguente insieme di processi:
TA TC
P1 0 10P2 3 6P3 5 6P4 9 4P5 13 2
dove TA e il tempo di arrivo nella coda dei processi pronti e TC e il tempo di utilizzo della CPU.Utilizzando l’algoritmo di scheduling Round Robin con quanto di tempo q = 2, si determini iltempo medio di esecuzione.
[A] 18.8
[B] 17.6
[C] 18.0
[D] 18.4
domanda N. 6:
Siano dati tre processi che condividono una variabile x e i cui pseudo codici sono di seguitoriportati:
P1 P2 P3
wait(R) wait(S) wait(T)x = -x; x = x-1; x = x+1;signal(S); if (x > 0) then signal(R);wait(R); x = x-1; wait(T);x = -x; signal(T); print x;signal(T); else
signal(R);endif
Si determini l’output del processo P3 supponendo che inizialmente x = 1 e i tre semaforibinari siano inizializzati rispettivamente S = 0, R = 0, T = 1.
[A] 5
[B] 6
[C] 3
[D] 4
domanda N. 7:
Si determini la veridicita’ delle seguenti affermazioni:
80
a) Nei moderni sistemi operativi le tecniche di gestione della memoria centrale sono pocoimportanti a causa del basso costo economico delle stesse.
b) Andando dai livelli di memoria piu bassi (dispositivi secondari e terziari) a quelli piu alti(registri e cache), il costo economico per bit aumenta.
[A] a) falsa ; b) vera
[B] entrambe vere
[C] a) vera ; b) falsa
[D] entrambe false
domanda N. 8:
Si consideri un sistema di paginazione con tabella delle pagine in memoria centrale. Suppo-nendo che un riferimento alla memoria centrale richieda 190 ns e che il tempo di accesso airegistri TLB richieda 25 ns, si determini la percentuale di successo nell’accesso ai TLB (hitratio dei TLB) per ottenere un tempo medio di accesso di 272 ns.
[A] 76.6666%
[B] 68%
[C] 70%
[D] 73.5%
domanda N. 9:
Si consideri un sistema con paginazione su due livelli. Per un processo che richiede 16 pagine,di seguito si riportano la tabella delle pagine di primo livello (P ′) e le 4 tabelle di secondolivello (P”0, P”1, P”2 e P”3), le quali hanno rispettivamente indirizzo iniziale 8192, 8704,9216 e 9728:
P ′
0 8192
1 8704
2 9216
3 9728
P”0
0 0
1 512
2 1024
3 1536
P”1
0 2048
1 2560
2 3072
3 3584
P”2
0 4096
1 4608
2 5120
3 5632
P”3
0 6144
1 6656
2 7168
3 7680
Si determini l’indirizzo fisico corrispondente all’indirizzo logico < 0, 3, 408 >
[A] 6267
[B] 4731
[C] 1944
81
[D] 7803
domanda N. 10:
Si consideri un sistema operativo con paginazione su richiesta basato sull’algoritmo First InFirst Out (FIFO), che assegna ad ogni processo 3 frame di 512 Byte e che richiede 2 Byte perla memorizzazione di un intero. Ponendo attenzione solo agli array A e B, e ricordando cheil linguaggio C memorizza gli array 2-dimensionali per righe, si determini il numero di pagefaults del seguente frammento di codice C. ...int A[1024], B[2][512];...N=512;for (i=0; i<2; i++){
for (j=0; j<N/2; j++){B[i][2*j] = A[i*N+j] + A[i*N+2*j];
} }
[A] 11
[B] 12
[C] 10
[D] 8
domanda N. 11:
Si consideri un sistema operativo con paginazione su richiesta basato sull’algoritmo LeastRecently Used (LRU), che assegna ad ogni processo 5 frame. Se determini il numero di pagefaults per la squenza di riferimenti alle pagine:
5, 3, 2, 5, 2, 4, 1, 6, 4, 1, 3, 7, 4, 6, 2
[A] 8
[B] 10
[C] 7
[D] 9
domanda N. 12:
Sia dato un disco con 2000 tracce. Una operazione di lettura di un blocco richiede 3 msper lo spostamento tra due tracce adiacenti, 5 ms per la latenza rotazionale e 10 ms per iltrasferimento di un blocco di dati. Si calcoli il tempo necessario per leggere un file costituitoda 45 blocchi nel caso in cui questi ultimi siano distanti mediamente 15 tracce l’uno dall’altro.
82
[A] 12.15 sec
[B] 2.04 sec
[C] 8.44 sec
[D] 2.7 sec
domanda N. 13:
Si determini la veridicita’ delle seguenti affermazioni:
a) Un problema frequente nell’algoritmo First Come First Served (FCFS) di scheduling deldisco e la posticipazione indefinita di alcune richieste di servizio.
b) La latenza rotazionale e identica per ogni accesso al disco.
[A] entrambe false
[B] a) vera ; b) falsa
[C] a) falsa ; b) vera
[D] entrambe vere
domanda N. 14:
Si consideri un disco che opera a 12000 rpm (giri al minuto), dove ogni traccia e composta da160 settori di 512 bytes ognuno. Si determini la velocita di trasferimento necessaria per poterleggere o scrivere una traccia intera durante una rotazione del disco.
[A] circa 8000 KB/sec
[B] circa 19200 KB/sec
[C] circa 16000 KB/sec
[D] circa 9600 KB/sec
domanda N. 15:
Si determini la veridicita’ delle seguenti affermazioni:
a) Rispetto allo schema di allocazione dei file con lista concatenata, il principale vantaggiodella allocazione indicizzata dei file in un file system e la possibilita di effettuare laricerca nel solo blocco indice, migliorando enormemente i tempi di attraversamento delfile.
83
b) Lo schema di gestione dei blocchi liberi basato sulla bitmap introduce sempre un minorsovraccarico di memoria rispetto alla lista dei blocchi liberi, poiche mediante la bitmapviene utilizzato un solo bit per blocco, mentre la lista richiede l’indice del blocco chepuo’ essere grande 16 o 32 bit.
[A] a) vera ; b) falsa
[B] entrambe vere
[C] a) falsa ; b) vera
[D] entrambe false
domanda N. 16:
Sia dato un file system che gestisca blocchi da 256 byte e indirizzi da 32 bit mediante unaallocazione indicizzata dei file. Si calcoli la dimensione massima di un file per questo filesystem supponendo che i blocchi indice contengono:
• 7 puntatori diretti a blocchi di dati
• 3 puntatori indiretti a blocchi di dati
[A] 50944 byte
[B] 266240 byte
[C] 330240 byte
[D] 67584 byte
domanda N. 17:
Si determini la veridicita delle seguenti affermazioni:
a) Si consideri un file formato da 100 record allocato su disco in forma concatenata dovei record del file sono memorizzati uno per blocco e il file descriptor e gia in memoriacentrale. Se l’ultimo record letto e’ il record 25, allora per cancellare il 60-mo recordsono necessari 35 accessi in lettura e 35 in scrittura.
b) Si consideri un file formato da 100 record allocato su disco in forma contigua dove i recorddel file sono memorizzati uno per blocco e il file descriptor e gia in memoria centrale. Sel’ultimo record letto e’ il record 10 allora per cancellare il 60-mo record sono necessari40 accessi in lettura e 1 in scrittura.
[A] a) vera ; b) falsa
[B] entrambe vere
[C] entrambe false
[D] a) falsa ; b) vera
84
================================================== compito N. 10 del 110609 ==========
=========================================
SVOLTO DA MATRICOLA
domanda 1
domanda 2
domanda 3
domanda 4
domanda 5
domanda 6
domanda 7
domanda 8
domanda 9
domanda 10
domanda 11
domanda 12
domanda 13
domanda 14
domanda 15
domanda 16
domanda 17
• 1.5 punti per ogni risposta esatta
• 0 punti per ogni risposta non data
• 0.5 punti di penalita’ per ogni risposta errata
FIRMA
85
============================================ CORSO DI SISTEMI OPERTIVI mod.A (gr. 1) ============ compito N. 11 del 110609 ==========
=========================================
domanda N. 1:
Si determini la veridicita’ delle seguenti affermazioni:
a) Uno dei vantaggi delle macchine virtuali e’ la possibilita’ di creare ambienti di elaborazionecompletamente separati, permettendo una protezione efficace delle risorse del sistemaoperativo e dei programmi tra loro.
b) Uno dei vantaggi delle macchine virtuali e’ la loro facile realizzazione, in quanto e’ suf-ficiente replicare una copia di un sistema operativo monoutente in piu’ partizioni deldisco, dando cosi’ ad ogni utente l’illusione di essere l’unico utente del sistema.
[A] a) vera ; b) falsa
[B] a) falsa ; b) vera
[C] entrambe false
[D] entrambe vere
domanda N. 2:
Si determini la veridicita’ delle seguenti affermazioni:
a) In ogni sistema operativo e presente una tabella (chiamata tabella dei processi o ProcessControl Block = PCB) che tiene traccia di tutti i processi in esecuzione. In tale tabellae memorizzato per ogni processo in esecuzione un identificativo di processo (pid), unpuntatore alla memoria dove sono stati memorizzati il codice e l’area dati, nonche’ tuttele informazioni necessarie per effettuare correttamente il cambio di contesto.
b) Pur avendo alcuni campi sempre presenti in tutti i sistemi operativi, la struttura generaledel PCB dipende dalla implementazione del sistema operativo.
[A] a) falsa ; b) vera
[B] a) vera ; b) falsa
[C] entrambe false
[D] entrambe vere
86
domanda N. 3:
Si determini il numero di processi generati (compreso quello mandato in esecuzione dalla lineadi comando) dal seguente codice C, compilato e fatto eseguire su un sistema con il sistemaoperativo Unix:main(){int pid, i;for (i = 0; i <= 3; i + +){
pid=fork();if (pid == 0 && i == 1) exit(0);
}exit(0);}
[A] 10
[B] 6
[C] 8
[D] 9
domanda N. 4:
Sia dato il seguente insieme di processi:
TA TC
P1 0 12P2 2 3P3 6 3P4 11 6P5 14 2
dove TA e il tempo di arrivo nella coda dei processi pronti e TC e il tempo di utilizzo della CPU.Utilizzando l’algoritmo di scheduling dello Shortest Job First con prelazione, si determini iltempo medio di esecuzione.
[A] 7.8
[B] 8.4
[C] 8.2
[D] 8.0
87
domanda N. 5:
Sia dato il seguente insieme di processi:
TA TC
P1 0 7P2 1 7P3 7 7P4 11 3P5 13 2
dove TA e il tempo di arrivo nella coda dei processi pronti e TC e il tempo di utilizzo della CPU.Utilizzando l’algoritmo di scheduling Round Robin con quanto di tempo q = 2, si determini iltempo medio di esecuzione.
[A] 14.8
[B] 15
[C] 14.6
[D] 14.4
domanda N. 6:
Siano dati tre processi che condividono una variabile x e i cui pseudo codici sono di seguitoriportati:
P1 P2 P3
wait(R) wait(S) wait(T)x = x-5; x = x+2; x = x+3;signal(T); if(x >= 3)then if(x==1)thenwait(R); signal(R); signal(R);signal(S); else endif
signal(T); wait(T);endifwait(S);signal(T);
Supponendo che i tre semafori binari R, S e T siano inizializzati rispettivamente a R = 0,S = 1 e T = 0, si determini quale valore iniziale della variabile x, tra quelli proposti nellerisposte, non comporti una situazione di stallo per i processi.
[A] x = 1
[B] x = −1
[C] x = 0
[D] x = 2
88
domanda N. 7:
Si determini la veridicita’ delle seguenti affermazioni:
a) I semafori possono essere usati in sistemi con allocazione contigua della memoria per evitareche i processi effetuino accessi illegali (ad esempio all’area di memoria assegnata alsistema operativo).
b) Per limitare il problema della frammentazione esterna, la tecnica del compattamento uniscebuchi adiacenti in memoria, mentre la tecnica della coalescenza rialloca i processi in ese-cuzione in maniera contigua in maniera da creare un unico spazio di memoria disponibileper i nuovi processi.
[A] a) falsa ; b) vera
[B] entrambe vere
[C] a) vera ; b) falsa
[D] entrambe false
domanda N. 8:
Sia data una memoria di 32MByte gestita mediante paginazione con frame di 512 KByte e sisupponga che il sistema operativo richieda 7 MByte. Si calcoli la dimensione della memoriaeffettivamente ancora utilizzabile dopo l’allocazione di 5 processi rispettivamente di 1229, 341,2831, 1710, 2116 KByte.
[A] 15360 KByte
[B] 19456 KByte
[C] 21540 KByte
[D] 15872 KByte
domanda N. 9:
Si consideri un sistema con paginazione su due livelli. Per un processo che richiede 16 pagine,di seguito si riportano la tabella delle pagine di primo livello (P ′) e le 4 tabelle di secondolivello (P”0, P”1, P”2 e P”3), le quali hanno rispettivamente indirizzo iniziale 8192, 8704,9216 e 9728:
P ′
0 8192
1 8704
2 9216
3 9728
P”0
0 0
1 512
2 1024
3 1536
P”1
0 2048
1 2560
2 3072
3 3584
P”2
0 4096
1 4608
2 5120
3 5632
P”3
0 6144
1 6656
2 7168
3 7680
Si determini l’indirizzo fisico corrispondente all’indirizzo logico < 3, 3, 123 >
89
[A] 2171
[B] 7291
[C] 7803
[D] 635
domanda N. 10:
Si consideri un sistema operativo con paginazione su richiesta basato sull’algoritmo First InFirst Out (FIFO), che assegna ad ogni processo 3 frame di 512 Byte e che richiede 2 Byte perla memorizzazione di un intero. Ponendo attenzione solo agli array A, B e C, e ricordando cheil linguaggio C memorizza gli array 2-dimensionali per righe, si determini il numero di pagefaults del seguente frammento di codice C. ...int A[2][512], B[512], C[512];...N=512;for (i=0; i<2; i++){
for (j=0; j<N; j++){B[j/2 + i*256] = A[i][j] + C[j];
} }
[A] 10
[B] 12
[C] 8
[D] 11
domanda N. 11:
Si consideri un sistema opereativo con paginazione su richiesta basato sull’algoritmo FIFO conseconda chance, che assegna ad ogni processo 5 frame. Si determini il numero di page faultsper la seguente sequenza di riferimenti alle pagine:
7, 4, 5, 7, 3, 6, 4, 1, 2, 7, 4, 6, 5, 4, 7
[A] 9
[B] 10
[C] 7
[D] 8
90
domanda N. 12:
Sia dato un disco con 200 tracce e velocita di seek di 1 traccia per ms. All’istante t=0 ilsistema operativo sta servendo una richiesta sulla traccia 50 e in coda ci sono richieste per letracce (58; 15; 23; 25; 65; 55). Successivamente arrivano altre richieste all’istante t=7 per latraccia 49 e all’istante t=50 per la traccia 57. Si calcoli il tempo di ricerca complessivo perservire tutte le richieste secondo la politica Shortest Seek Time First (SSTF), trascurando lalatenza rotazionale e il tempo di trasferimento.
[A] 98
[B] 107
[C] 65
[D] 117
domanda N. 13:
Si determini la veridicita’ delle seguenti affermazioni:
a) Le tecniche di ottimizzazione rotazionale del disco hanno avuto una importanza crescentenegli ultimi anni perche i moderni dischi rigidi esibiscono tempi di seek e latenze mediedello stesso ordine di grandezza.
b) Il livello RAID 1 e il migliore per ambienti in cui l’affidabilita ha una priorita superiore alcosto o alle prestazioni.
[A] a) falsa ; b) vera
[B] entrambe vere
[C] entrambe false
[D] a) vera ; b) falsa
domanda N. 14:
Si calcoli la probabilitaa di perdere i dati con un sistema RAID level 5 con 5 dischi, se il MeanTime to Failure (MTF) e di 1600 giorni e il Mean Time to Repair (MTR) e di 23.04 giorni.
[A] 0.0002
[B] 0.00003
[C] 0.00011
[D] 0.00009
91
domanda N. 15:
Si determini la veridicita’ delle seguenti affermazioni:
a) Un modo per risolvere il problema dei numerosi accessi al disco con lo schema di allocazionedei file a lista concatenata e l’utilizzo di blocchi molto grandi. Con tale modifica si ottieneuno schema senza grossi inconvenienti legati alla gestione del disco, che e utilizzato innumerosi sistemi come, ad esempio, Solaris 2.
b) Uno svantaggio dello schema di allocazione contigua di file in un file system e la frammen-tazione esterna del disco.
[A] entrambe vere
[B] entrambe false
[C] a) falsa ; b) vera
[D] a) vera ; b) falsa
domanda N. 16:
Sia dato un file system che gestisca blocchi da 1024 byte e indirizzi da 32 bit mediante unaallocazione indicizzata dei file. Si calcoli la dimensione massima di un file per questo filesystem supponendo che i blocchi indice contengono:
• 9 puntatori diretti a blocchi di dati
• 1 puntatori indiretti a blocchi di dati
[A] 266240 byte
[B] 330240 byte
[C] 271360 byte
[D] 50944 byte
domanda N. 17:
Si determini la veridicita delle seguenti affermazioni:
a) Si consideri un file formato da 100 record allocato su disco in forma contigua dove i recorddel file sono memorizzati uno per blocco e il file descriptor e gia in memoria centrale. Sel’ultimo record letto e’ il record 10 allora per cancellare il 50-mo record sono necessari 1accesso in lettura e 1 in scrittura.
92
b) Si consideri un file formato da 100 record allocato su disco in forma concatenata dovei record del file sono memorizzati uno per blocco e il file descriptor e gia in memoriacentrale. Se l’ultimo record letto e’ il record 15, allora per cancellare il 65-mo recordsono necessari 50 accessi in lettura e 50 in scrittura.
[A] entrambe vere
[B] a) vera ; b) falsa
[C] entrambe false
[D] a) falsa ; b) vera
93
================================================== compito N. 11 del 110609 ==========
=========================================
SVOLTO DA MATRICOLA
domanda 1
domanda 2
domanda 3
domanda 4
domanda 5
domanda 6
domanda 7
domanda 8
domanda 9
domanda 10
domanda 11
domanda 12
domanda 13
domanda 14
domanda 15
domanda 16
domanda 17
• 1.5 punti per ogni risposta esatta
• 0 punti per ogni risposta non data
• 0.5 punti di penalita’ per ogni risposta errata
FIRMA
94
============================================ CORSO DI SISTEMI OPERTIVI mod.A (gr. 1) ============ compito N. 12 del 110609 ==========
=========================================
domanda N. 1:
Si determini la veridicita’ delle seguenti affermazioni:
a) Per motivi di sicurezza, le seguenti istruzioni dovrebbero essere sempre eseguite in modalitasistema: lettura del clock di sistema, disabilitazione delle interruzioni, switch dallamodalita utente a quella di sistema, accesso ai dispositivi di I/O.
b) La principale difficolta nello sviluppo di un sistema operativo real time e garantire che iprocessi terminino la loro esecuzione in un fissato intervallo di tempo. In tal senso unruolo chiave e svolto dallo scheduler.
[A] a) vera ; b) falsa
[B] entrambe vere
[C] entrambe false
[D] a) falsa ; b) vera
domanda N. 2:
Si determini la veridicita’ delle seguenti affermazioni:
a) Il compito principale dello scheduler a lungo termine (anche detto job scheduler) e deter-minare l’ordine con cui i processi accedono alla CPU.
b) L’insieme dei processi che attendono il proprio turno per accedere alla CPU sono organiz-zati in una struttura dati chiamata coda dei processi in attesa (waiting queue).
[A] entrambe vere
[B] entrambe false
[C] a) falsa ; b) vera
[D] a) vera ; b) falsa
domanda N. 3:
Si determini il numero di processi generati (compreso quello mandato in esecuzione dalla lineadi comando) dal seguente codice C, compilato e fatto eseguire su un sistema con il sistemaoperativo Unix:
95
main(){int pid, i;for (i = 0; i <= 3; i + +){
pid=fork();if (pid == 0 && i == 1) exit(0);
}exit(0);}
[A] 9
[B] 10
[C] 6
[D] 8
domanda N. 4:
Sia dato il seguente insieme di processi:
TA TC
P1 0 12P2 2 3P3 6 3P4 11 6P5 14 2
dove TA e il tempo di arrivo nella coda dei processi pronti e TC e il tempo di utilizzo della CPU.Utilizzando l’algoritmo di scheduling dello Shortest Job First con prelazione, si determini iltempo medio di esecuzione.
[A] 8.2
[B] 8.0
[C] 7.8
[D] 8.4
domanda N. 5:
Sia dato il seguente insieme di processi:
TA TC
P1 0 8P2 3 6P3 5 8P4 9 4P5 11 2
96
dove TA e il tempo di arrivo nella coda dei processi pronti e TC e il tempo di utilizzo della CPU.Utilizzando l’algoritmo di scheduling Round Robin con quanto di tempo q = 2, si determini iltempo medio di esecuzione.
[A] 16.4
[B] 16.6
[C] 16
[D] 16.2
domanda N. 6:
Siano dati tre processi che condividono una variabile x e i cui pseudo codici sono di seguitoriportati:
P1 P2 P3
wait(R) wait(S) wait(T)x = x-5; x = x+2; x = x+3;signal(T); if(x >= 3)then if(x==1)thenwait(R); signal(R); signal(R);signal(S); else endif
signal(T); wait(T);endifwait(S);signal(T);
Supponendo che i tre semafori binari R, S e T siano inizializzati rispettivamente a R = 0,S = 1 e T = 0, si determini quale valore iniziale della variabile x, tra quelli proposti nellerisposte, non comporti una situazione di stallo per i processi.
[A] x = 1
[B] x = −1
[C] x = 0
[D] x = 2
domanda N. 7:
Si determini la veridicita’ delle seguenti affermazioni:
a) Nei moderni sistemi operativi le tecniche di gestione della memoria centrale sono pocoimportanti a causa del basso costo economico delle stesse.
b) Andando dai livelli di memoria piu bassi (dispositivi secondari e terziari) a quelli piu alti(registri e cache), il costo economico per bit aumenta.
97
[A] a) falsa ; b) vera
[B] entrambe vere
[C] a) vera ; b) falsa
[D] entrambe false
domanda N. 8:
Sia data una memoria di 32MByte gestita mediante paginazione con frame di 512 KByte e sisupponga che il sistema operativo richieda 7 MByte. Si calcoli la dimensione della memoriaeffettivamente ancora utilizzabile dopo l’allocazione di 5 processi rispettivamente di 1229, 341,2831, 1710, 2116 KByte.
[A] 21540 KByte
[B] 15872 KByte
[C] 15360 KByte
[D] 19456 KByte
domanda N. 9:
Si consideri un sistema con paginazione su due livelli. Per un processo che richiede 16 pagine,di seguito si riportano la tabella delle pagine di primo livello (P ′) e le 4 tabelle di secondolivello (P”0, P”1, P”2 e P”3), le quali hanno rispettivamente indirizzo iniziale 8192, 8704,9216 e 9728:
P ′
0 8192
1 8704
2 9216
3 9728
P”0
0 0
1 512
2 1024
3 1536
P”1
0 2048
1 2560
2 3072
3 3584
P”2
0 4096
1 4608
2 5120
3 5632
P”3
0 6144
1 6656
2 7168
3 7680
Si determini l’indirizzo fisico corrispondente all’indirizzo logico < 1, 2, 341 >
[A] 5461
[B] 3413
[C] 1877
[D] 6997
domanda N. 10:
98
Si consideri un sistema operativo con paginazione su richiesta basato sull’algoritmo First InFirst Out (FIFO), che assegna ad ogni processo 3 frame di 512 Byte e che richiede 2 Byte perla memorizzazione di un intero. Ponendo attenzione solo agli array A, B e C, e ricordando cheil linguaggio C memorizza gli array 2-dimensionali per righe, si determini il numero di pagefaults del seguente frammento di codice C. ...int A[2][512], B[2][256], C[512];...N=256;for (i=0; i<2; i++){
for (j=0; j<N; j++){C[i*N+j] = A[i][2*j] + B[i][j];
} }
[A] 12
[B] 8
[C] 10
[D] 11
domanda N. 11:
Si consideri un sistema opereativo con paginazione su richiesta basato sull’algoritmo LeastRecently Used (LRU), che assegna ad ogni processo 5 frame. Si determini il numero di pagefaults per la seguente sequenza di riferimenti alle pagine:
4, 2, 7, 4, 7, 1, 5, 3, 1, 6, 5, 2, 6, 1, 3, 7
[A] 10
[B] 7
[C] 9
[D] 8
domanda N. 12:
Sia dato un disco con 2000 tracce. Una operazione di lettura di un blocco richiede 3 msper lo spostamento tra due tracce adiacenti, 5 ms per la latenza rotazionale e 10 ms per iltrasferimento di un blocco di dati. Si calcoli il tempo necessario per leggere un file costituitoda 45 blocchi nel caso in cui questi ultimi siano distanti mediamente 15 tracce l’uno dall’altro.
[A] 2.7 sec
[B] 12.15 sec
99
[C] 2.04 sec
[D] 8.44 sec
domanda N. 13:
Si determini la veridicita’ delle seguenti affermazioni:
a) Il principale problema dei livelli 3 e 4 dei sistemi RAID che li rende meno preferibili rispettoal livello 5 e la necessita della generazione della parita, che comporta un supplemento dioverhead.
b) Utilizzando un disco con 7 ms di tempo di seek, 10 msec di latenza media rotazionale etempo di trasferimento di 20 msec, il tempo necessario per trasferire in memoria centraleun file composto da 15 blocchi, distanti mediamente 10 tracce, e di 1.5 secondi esatti.
[A] a) falsa ; b) vera
[B] a) vera ; b) falsa
[C] entrambe false
[D] entrambe vere
domanda N. 14:
Si consideri un disco che opera a 7200 rpm (giri al minuto), dove ogni traccia e composta da160 settori di 1024 byte ognuno. Si determini la velocita di trasferimento necessaria per poterleggere o scrivere una traccia intera durante una rotazione del disco.
[A] circa 9600 KB/sec
[B] circa 4800 KB/sec
[C] circa 13400 KB/sec
[D] circa 19200 KB/sec
domanda N. 15:
Si determini la veridicita’ delle seguenti affermazioni:
a) Uno dei vantaggi della bitmap rispetto alla lista dei blocchi liberi e la possibilita, per ilsistema, di determinare in maniera efficiente l’esistenza di un certo numero di blocchiliberi contigui.
b) In un file system con struttura gerarchica (ad es. Unix), il nome di un file e formatodall’insieme dei nomi delle directory a partire dalla directory utente fino al file.
100
[A] a) vera ; b) falsa
[B] entrambe false
[C] entrambe vere
[D] a) falsa ; b) vera
domanda N. 16:
Sia dato un file system che gestisca blocchi da 256 byte e indirizzi da 32 bit mediante unaallocazione indicizzata dei file. Si calcoli la dimensione massima di un file per questo filesystem supponendo che i blocchi indice contengono:
• 7 puntatori diretti a blocchi di dati
• 3 puntatori indiretti a blocchi di dati
[A] 67584 byte
[B] 50944 byte
[C] 266240 byte
[D] 330240 byte
domanda N. 17:
Si determini la veridicita delle seguenti affermazioni:
a) Si consideri un file formato da 100 record allocato su disco in forma indicizzata dove irecord del file sono memorizzati uno per blocco e il file descriptor e gia in memoriacentrale. Se non e stato fatto ancora nessun accesso al file, allora per cancellare il 60-morecord sono necessari 35 accessi in lettura e 1 in scrittura.
b) Si consideri un file formato da 100 record allocato su disco in forma contigua dove i recorddel file sono memorizzati uno per blocco e il file descriptor e gia in memoria centrale. Sel’ultimo record letto e’ il record 10 allora per cancellare il 60-mo record sono necessari40 accessi in lettura e 40 in scrittura.
[A] a) falsa ; b) vera
[B] a) vera ; b) falsa
[C] entrambe vere
[D] entrambe false
101
================================================== compito N. 12 del 110609 ==========
=========================================
SVOLTO DA MATRICOLA
domanda 1
domanda 2
domanda 3
domanda 4
domanda 5
domanda 6
domanda 7
domanda 8
domanda 9
domanda 10
domanda 11
domanda 12
domanda 13
domanda 14
domanda 15
domanda 16
domanda 17
• 1.5 punti per ogni risposta esatta
• 0 punti per ogni risposta non data
• 0.5 punti di penalita’ per ogni risposta errata
FIRMA
102
============================================ CORSO DI SISTEMI OPERTIVI mod.A (gr. 1) ============ compito N. 13 del 110609 ==========
=========================================
domanda N. 1:
Si determini la veridicita’ delle seguenti affermazioni:
a) I seguenti sono tutti nomi di sistemi operativi realmente esistiti: Unix, MS-DOS, Solaris,Multics, CTSS, Minix, MacOS, Xenix.
b) Il modulo del sistema operativo che si occupa di determinare quando e per quanto tempoun processo deve accedere alla CPU e chiamato Interprocessor Communication Manager.
[A] a) vera ; b) falsa
[B] a) falsa ; b) vera
[C] entrambe vere
[D] entrambe false
domanda N. 2:
Si determini la veridicita’ delle seguenti affermazioni:
a) Il principale vantaggio nell’uso di due threads cooperanti di uno stesso processo, al postodi due processi distinti e che nel primo caso non e necessario sincronizzare i threads inquanto gia condividono lo spazio di indirizzamento, mentre nel secondo caso e’ necessariol’uso dei semafori.
b) La comunicazione tra threads cooperanti di uno stesso processo e sempre piu efficientedella comunicazione tra processi distinti in quanto i threads possono utilizzare lo spaziodi indirizzamento condiviso senza fare uso degli strumenti di comunicazione tra processigestiti dal kernel.
[A] entrambe vere
[B] entrambe false
[C] a) falsa ; b) vera
[D] a) vera ; b) falsa
domanda N. 3:
Si determini il numero di processi generati (compreso quello mandato in esecuzione dalla linea
103
di comando) dal seguente codice C, compilato e fatto eseguire su un sistema con il sistemaoperativo Unix:main(){int pid, i;for (i = 0; i <= 3; i + +){
pid=fork();if (pid == 0 && i < 2) exit(0);
}exit(0);}
[A] 9
[B] 10
[C] 6
[D] 8
domanda N. 4:
Sia dato il seguente insieme di processi:
TA TC P
P1 1 7 2P2 2 5 4P3 6 4 5P4 7 7 1P5 10 2 3
dove TA e il tempo di arrivo nella coda dei processi pronti, TC e il tempo di utilizzo della CPUe P e la priorita (priorita massima = 5). Utilizzando l’algoritmo di scheduling a priorita conprelazione, si determini il tempo medio di esecuzione.
[A] 10.4
[B] 11.2
[C] 10.6
[D] 11
domanda N. 5:
104
Sia dato il seguente insieme di processi:
TA TC
P1 0 10P2 3 6P3 5 6P4 9 4P5 13 2
dove TA e il tempo di arrivo nella coda dei processi pronti e TC e il tempo di utilizzo della CPU.Utilizzando l’algoritmo di scheduling Round Robin con quanto di tempo q = 2, si determini iltempo medio di esecuzione.
[A] 18.0
[B] 18.4
[C] 18.8
[D] 17.6
domanda N. 6:
Siano dati tre processi che condividono una variabile x e i cui pseudo codici sono di seguitoriportati:
P1 P2 P3
wait(R) wait(S) wait(T)x = x+3; x = x-5; x = x+2;if(x==4)then signal(R); if(x >= 5)then
signal(S); wait(S); signal(S);endif signal(T); elsewait(R); signal(R);
endifwait(T);signal(R);
Supponendo che i tre semafori binari R, S e T siano inizializzati rispettivamente a R = 0,S = 0 e T = 1, si determini quale valore iniziale della variabile x, tra quelli proposti nellerisposte, non comporti una situazione di stallo per i processi.
[A] x = 1
[B] x = 3
[C] x = 2
[D] x = 4
105
domanda N. 7:
Si determini la veridicita’ delle seguenti affermazioni:
a) In un sistema operativo con memoria virtuale, una differenza tra indirizzo logico e indirizzofisico e che il primo e generato dalla CPU mentre il secondo e generato dal MemoryManagement Unit (MMU).
b) Uno spazio di indirizzamento di 8 pagine, ognuna di 1024 byte, richiede 13 bit.
[A] a) falsa ; b) vera
[B] a) vera ; b) falsa
[C] entrambe false
[D] entrambe vere
domanda N. 8:
Sia dato un sistema che gestisce una memoria di 5120 byte mediante partizioni variabili. Sisupponga che nella memoria siano gia presenti 5 processi di dimensioni 740, 875, 250, 1450 e490 byte rispettivamente allocati negli indirizzi fisici 2048, 3072, 2788, 0 e 4096. Si determinil’indirizzo in cui verra allocato un ulteriore processo di 389 byte mediante la tecnica del bestfit.
[A] 1450
[B] 3038
[C] 3947
[D] 4586
domanda N. 9:
Si consideri un sistema con paginazione su due livelli. Per un processo che richiede 16 pagine,di seguito si riportano la tabella delle pagine di primo livello (P ′) e le 4 tabelle di secondolivello (P”0, P”1, P”2 e P”3), le quali hanno rispettivamente indirizzo iniziale 8192, 8704,9216 e 9728:
P ′
0 8192
1 8704
2 9216
3 9728
P”0
0 0
1 512
2 1024
3 1536
P”1
0 2048
1 2560
2 3072
3 3584
P”2
0 4096
1 4608
2 5120
3 5632
P”3
0 6144
1 6656
2 7168
3 7680
Si determini l’indirizzo fisico corrispondente all’indirizzo logico < 1, 2, 341 >
106
[A] 1877
[B] 6997
[C] 5461
[D] 3413
domanda N. 10:
Si consideri un sistema operativo con paginazione su richiesta basato sull’algoritmo First InFirst Out (FIFO), che assegna ad ogni processo 3 frame di 512 Byte e che richiede 2 Byte perla memorizzazione di un intero. Ponendo attenzione solo agli array A, B e C, e ricordando cheil linguaggio C memorizza gli array 2-dimensionali per righe, si determini il numero di pagefaults del seguente frammento di codice C. ...int A[2][512], B[256], C[512];...N=256;for (i=0; i<2; i++){
for (j=0; j<N; j++){C[i*N+j] = A[i][2*j] + B[j];
} }
[A] 10
[B] 11
[C] 8
[D] 12
domanda N. 11:
Si consideri un sistema operativo con paginazione su richiesta basato sull’algoritmo First InFirst Out con seconda chance, che assegna ad ogni processo 5 frame. Se determini il numerodi page faults per la squenza di riferimenti alle pagine:
1, 2, 3, 1, 4, 5, 2, 6, 7, 1, 2, 5, 3, 2, 1
[A] 8
[B] 9
[C] 10
[D] 7
107
domanda N. 12:
Sia dato un disco con 200 tracce e velocita di seek di 1 traccia per ms. All’istante t=0il sistema operativo sta servendo una richiesta sulla traccia 100 e in coda ci sono richiesteper le tracce (55; 75; 80; 110; 135; 160). Successivamente arrivano altre richieste all’istantet=30 per la traccia 105 e all’istante t=135 per la traccia 100. Si calcoli il tempo di ricercacomplessivo in ms per servire tutte le richieste secondo la politica Shortest Seek Time First(SSTF), trascurando la latenza rotazionale e il tempo di trasferimento.
[A] 180
[B] 210
[C] 205
[D] 155
domanda N. 13:
Si determini la veridicita’ delle seguenti affermazioni:
a) Le versioni ”circolari” C-SCAN e C-LOOK degli algoritmi di scheduling del disco SCAN eLOOK, nonostante abbiano un overhead maggiore rispetto alle versioni standard SCANe LOOK a causa del ”ritorno a vuoto della testina”, sono particolarmente utili per unsistema di tipo generale poiche hanno tempi di risposta piu omogenei.
b) Negli ultimi anni la capacita dei supporti di memorizzazione secondaria (ad es. i dischi)e aumentata, il tempo di accesso e diminuito mentre il costo per MByte e rimastopressocche costante.
[A] a) falsa ; b) vera
[B] entrambe vere
[C] a) vera ; b) falsa
[D] entrambe false
domanda N. 14:
Si consideri un disco che opera a 7200 rpm (giri al minuto), dove ogni traccia e composta da160 settori di 1024 byte ognuno. Si determini la velocita di trasferimento necessaria per poterleggere o scrivere una traccia intera durante una rotazione del disco.
[A] circa 4800 KB/sec
[B] circa 13400 KB/sec
108
[C] circa 19200 KB/sec
[D] circa 9600 KB/sec
domanda N. 15:
Si determini la veridicita’ delle seguenti affermazioni:
a) Per motivi di efficienza, la lista dei blocchi liberi e generalmente ordinata secondo l’indicedel blocco.
b) I principali compiti di un file system sono: gestire le strutture logiche del file system(directory e file), organizzare i file in blocchi e gestirne l’allocazione, verificare l’integritadei dati, gestire lo spazio libero e verificare che i dati nei file non contengano errori.
[A] entrambe vere
[B] a) falsa ; b) vera
[C] entrambe false
[D] a) vera ; b) falsa
domanda N. 16:
Sia dato un file system di 8 MB che gestisca i file mediante allocazione tabellare (ad es. unaFile Allocation Table). Si determini la dimensione della tabella nel caso in cui i blocchi deldisco siano di 1024 byte.
[A] 12 KB
[B] 104 KB
[C] 64 KB
[D] 13 KB
domanda N. 17:
Si determini la veridicita delle seguenti affermazioni:
a) Si consideri un file formato da 100 record allocato su disco in forma indicizzata dove irecord del file sono memorizzati uno per blocco e il file descriptor e gia in memoriacentrale. Se non e stato fatto ancora nessun accesso al file, allora per cancellare il 50-morecord e necessario 1 accesso in lettura e 1 in scrittura.
b) Si consideri un file formato da 100 record allocato su disco in forma contigua dove i recorddel file sono memorizzati uno per blocco e il file descriptor e gia in memoria centrale. Sel’ultimo record letto e’ il record 10 allora per cancellare il 75-mo record sono necessari25 accessi in lettura e 1 in scrittura.
109
[A] entrambe false
[B] a) falsa ; b) vera
[C] entrambe vere
[D] a) vera ; b) falsa
110
================================================== compito N. 13 del 110609 ==========
=========================================
SVOLTO DA MATRICOLA
domanda 1
domanda 2
domanda 3
domanda 4
domanda 5
domanda 6
domanda 7
domanda 8
domanda 9
domanda 10
domanda 11
domanda 12
domanda 13
domanda 14
domanda 15
domanda 16
domanda 17
• 1.5 punti per ogni risposta esatta
• 0 punti per ogni risposta non data
• 0.5 punti di penalita’ per ogni risposta errata
FIRMA
111
============================================ CORSO DI SISTEMI OPERTIVI mod.A (gr. 1) ============ compito N. 14 del 110609 ==========
=========================================
domanda N. 1:
Si determini la veridicita’ delle seguenti affermazioni:
a) Un sistema operativo che e in grado di utilizzare in maniera efficiente le risorse che vengonoaggiunte al sistema e detto espandibile.
b) Le chiamate di sistema operano in maniera simile alle interruzioni, nel senso che quandoavviene una chiamata di sistema, il sistema si porta in modalita kernel e serve la richiestamediante una apposita routine di servizio.
[A] entrambe false
[B] a) vera ; b) falsa
[C] entrambe vere
[D] a) falsa ; b) vera
domanda N. 2:
Si determini la veridicita’ delle seguenti affermazioni:
a) Uno svantaggio nell’uso dei threads rispetto all’uso di piu processi cooperanti che comuni-cano attraverso una memoria condivisa e la necessita della sincronizzazione.
b) Il meccanismo piu utilizzato dai sistemi operativi di tipo generale per impedire che unprocesso possa monopolizzare l’uso della CPU , consiste nell’assegnare ai processi untempo massimo di utilizzo continuativo della CPU, scaduto il quale il processo vienesospeso.
[A] a) vera ; b) falsa
[B] entrambe false
[C] entrambe vere
[D] a) falsa ; b) vera
domanda N. 3:
Si determini il numero di processi generati (compreso quello mandato in esecuzione dalla linea
112
di comando) dal seguente codice C, compilato e fatto eseguire su un sistema con il sistemaoperativo Unix:main(){int pid, i;for (i = 0; i <= 3; i + +){
pid=fork();if (pid == 0 && i == 0) exit(0);
}exit(0);}
[A] 8
[B] 10
[C] 9
[D] 6
domanda N. 4:
Sia dato il seguente insieme di processi:
TA TC
P1 0 10P2 1 8P3 4 3P4 9 2P5 12 4
dove TA e il tempo di arrivo nella coda dei processi pronti e TC e il tempo di utilizzo della CPU.Utilizzando l’algoritmo di scheduling dello Shortest Job First con prelazione, si determini iltempo medio di esecuzione.
[A] 10.2
[B] 9.8
[C] 10.0
[D] 10.4
domanda N. 5:
113
Sia dato il seguente insieme di processi:
TA TC
P1 0 5P2 3 6P3 5 7P4 8 6P5 16 3
dove TA e il tempo di arrivo nella coda dei processi pronti e TC e il tempo di utilizzo della CPU.Utilizzando l’algoritmo di scheduling Round Robin con quanto di tempo q = 2, si determini iltempo medio di esecuzione.
[A] 13.6
[B] 14
[C] 14.2
[D] 13.8
domanda N. 6:
Siano dati tre processi che condividono una variabile x e i cui pseudo codici sono di seguitoriportati:
P1 P2 P3
wait(R) wait(S) wait(T)x = x-5; x = x+2; x = x+3;signal(T); if(x >= 5)then if(x==1)thenwait(R); signal(T); signal(R);signal(S); else endif
signal(R); wait(T);endifwait(S);signal(T);
Supponendo che i tre semafori binari R, S e T siano inizializzati rispettivamente a R = 0,S = 1 e T = 0, si determini quale valore iniziale della variabile x, tra quelli proposti nellerisposte, non comporti una situazione di stallo per i processi.
[A] x = 2
[B] x = 3
[C] x = 4
[D] x = 1
114
domanda N. 7:
Si determini la veridicita’ delle seguenti affermazioni:
a) Il principale vantaggio dell’introduzione dei meccanismi di memoria virtuale (sia paginatache segmentata) e l’eliminazione del problema della frammentazione.
b) Si consideri un sistema con memoria virtuale che rappresenti un indirizzo virtuale v medi-ante la coppia (b, d) usando 32 bit. Se il numero di pagina b e specificato usando n = 20bit, allora la dimensione delle pagine e di 4096 byte.
[A] a) falsa ; b) vera
[B] a) vera ; b) falsa
[C] entrambe false
[D] entrambe vere
domanda N. 8:
Sia data una memoria di 32MByte gestita mediante paginazione con frame di 512 KByte e sisupponga che il sistema operativo richieda 7 MByte. Si calcoli la dimensione della memoriaeffettivamente ancora utilizzabile dopo l’allocazione di 5 processi rispettivamente di 2343,1724, 489, 1270, 2110 KByte.
[A] 19456 KByte
[B] 21504 KByte
[C] 16384 KByte
[D] 15360 KByte
domanda N. 9:
Si consideri un sistema con paginazione su due livelli. Per un processo che richiede 16 pagine,ognuna di 512 byte, di seguito si riportano la tabella delle pagine di primo livello (P ′) e le4 tabelle di secondo livello (P”0, P”1, P”2 e P”3), le quali hanno rispettivamente indirizzofisico iniziale 0, 512, 1024 e 1536:
P ′
0 0
1 512
2 1024
3 1536
P”0
0 8192
1 11776
2 5120
3 14336
P”1
0 10752
1 7680
2 3072
3 6144
P”2
0 5632
1 10240
2 13824
3 11264
P”3
0 9216
1 3584
2 12800
3 14848
Si determini quale indirizzo fisico, tra quelli proposti, non appartiene allo spazio di indirizza-mento del processo.
115
[A] 14338
[B] 3074
[C] 7666
[D] 11266
domanda N. 10:
Si consideri un sistema operativo con paginazione su richiesta basato sull’algoritmo First InFirst Out (FIFO), che assegna ad ogni processo 3 frame di 512 Byte e che richiede 2 Byte perla memorizzazione di un intero. Ponendo attenzione solo agli array A, B e C, e ricordando cheil linguaggio C memorizza gli array 2-dimensionali per righe, si determini il numero di pagefaults del seguente frammento di codice C. ...int A[2][512], B[512], C[512];...N=512;for (i=0; i<2; i++){
for (j=0; j<N; j++){B[j/2 + i*256] = A[i][j] + C[j];
} }
[A] 8
[B] 11
[C] 10
[D] 12
domanda N. 11:
Si consideri un sistema operativo con paginazione su richiesta basato sull’algoritmo del Work-ing Set con dimensione della finestra di osservazione w = 6. Si determini, a partire dall’istantet = 6, il minimo e massimo numero di frame che il sistema assegna ad un processo di 6 pagineche vengono referenziate nel seguente ordine:
1, 4, 2, 1, 2, 4, 1, 6, 2, 1, 6, 6, 1, 6, 1, 5, 3, 5, 1, 6, 4, 3, 5, 4, 4
[A] min=3, max=5
[B] min=2, max=4
[C] min=3, max=4
[D] min=2, max=5
116
domanda N. 12:
Sia dato un disco con 200 tracce e velocita di seek di 1 traccia per ms. All’istante t=0 ilsistema operativo sta servendo una richiesta sulla traccia 100 e in coda ci sono richieste per letracce (40; 65; 90; 120; 145; 125). Successivamente arrivano altre richieste all’istante t=30 perla traccia 95 e all’istante t=135 per la traccia 100. Si calcoli il tempo di ricerca complessivoper servire tutte le richieste secondo la politica Shortest Seek Time First (SSTF), trascurandola latenza rotazionale e il tempo di trasferimento.
[A] 215
[B] 185
[C] 210
[D] 165
domanda N. 13:
Si determini la veridicita’ delle seguenti affermazioni:
a) Il principale problema dei livelli 3 e 4 dei sistemi RAID che li rende meno preferibili rispettoal livello 5 e la necessita della generazione della parita, che comporta un supplemento dioverhead.
b) Utilizzando un disco con 7 ms di tempo di seek, 10 msec di latenza media rotazionale etempo di trasferimento di 20 msec, il tempo necessario per trasferire in memoria centraleun file composto da 15 blocchi, distanti mediamente 10 tracce, e di 1.5 secondi esatti.
[A] a) falsa ; b) vera
[B] a) vera ; b) falsa
[C] entrambe false
[D] entrambe vere
domanda N. 14:
Si calcoli la probabilitaa di perdere i dati con un sistema RAID level 5 con 5 dischi, se il MeanTime to Failure (MTF) e di 1400 giorni e il Mean Time to Repair (MTR) e di 19.6 giorni.
[A] 0.0001
[B] 0.00003
[C] 0.00009
117
[D] 0.00011
domanda N. 15:
Si determini la veridicita’ delle seguenti affermazioni:
a) Uno dei vantaggi della bitmap rispetto alla lista dei blocchi liberi e la possibilita, per ilsistema, di determinare in maniera efficiente l’esistenza di un certo numero di blocchiliberi contigui.
b) In un file system con struttura gerarchica (ad es. Unix), il nome di un file e formatodall’insieme dei nomi delle directory a partire dalla directory utente fino al file.
[A] entrambe false
[B] entrambe vere
[C] a) falsa ; b) vera
[D] a) vera ; b) falsa
domanda N. 16:
Sia dato un file system che gestisca blocchi da 512 byte e indirizzi da 32 bit mediante unaallocazione indicizzata dei file. Si calcoli la dimensione massima di un file per questo filesystem supponendo che i blocchi indice contengono:
• 5 puntatori diretti a blocchi di dati
• 5 puntatori indiretti a blocchi di dati
[A] 50944 byte
[B] 330240 byte
[C] 67584 byte
[D] 271360 byte
domanda N. 17:
Si determini la veridicita delle seguenti affermazioni:
a) Si consideri un file formato da 100 record allocato su disco in forma indicizzata dove irecord del file sono memorizzati uno per blocco e il file descriptor e gia in memoriacentrale. Se non e stato fatto ancora nessun accesso al file, allora per cancellare il 50-morecord e necessario 1 accesso in lettura e 1 in scrittura.
118
b) Si consideri un file formato da 100 record allocato su disco in forma contigua dove i recorddel file sono memorizzati uno per blocco e il file descriptor e gia in memoria centrale. Sel’ultimo record letto e’ il record 10 allora per cancellare il 75-mo record sono necessari25 accessi in lettura e 1 in scrittura.
[A] entrambe false
[B] a) falsa ; b) vera
[C] entrambe vere
[D] a) vera ; b) falsa
119
================================================== compito N. 14 del 110609 ==========
=========================================
SVOLTO DA MATRICOLA
domanda 1
domanda 2
domanda 3
domanda 4
domanda 5
domanda 6
domanda 7
domanda 8
domanda 9
domanda 10
domanda 11
domanda 12
domanda 13
domanda 14
domanda 15
domanda 16
domanda 17
• 1.5 punti per ogni risposta esatta
• 0 punti per ogni risposta non data
• 0.5 punti di penalita’ per ogni risposta errata
FIRMA
120
============================================ CORSO DI SISTEMI OPERTIVI mod.A (gr. 1) ============ compito N. 15 del 110609 ==========
=========================================
domanda N. 1:
Si determini la veridicita’ delle seguenti affermazioni:
a) Uno degli scopi principali delle chiamate di sistema e’ quello di fornire ai programmi deimetodi di accesso diretto alle funzionalita’ del sistema operativo in maniera protetta.
b) Poiche’ le chiamate di sistema sono l’unico modo con cui un processo utente puo’ accedereai servizi del sistema operativo, il relativo codice e’ eseguito in modalita’ utente
[A] entrambe vere
[B] a) vera ; b) falsa
[C] a) falsa ; b) vera
[D] entrambe false
domanda N. 2:
Si determini la veridicita’ delle seguenti affermazioni:
a) L’insieme delle informazioni che caratterizzano un processo in esecuzione e che sono mem-orizzate nel Process Control Block e chiamato contesto. Per tale motivo la proceura chesospende un processo in esecuzione per mandarne un altro e detta cambio di contesto(context switch).
b) Il tempo medio di esecuzione di un insieme di processi di un sistema operativo time sharingdiminuisce sempre quando aumenta la frequenza dei context switch, in quanto i processiin esecuzione si avvicendano piu rapidemente nell’uso della CPU.
[A] a) vera ; b) falsa
[B] entrambe false
[C] a) falsa ; b) vera
[D] entrambe vere
domanda N. 3:
Si determini il numero di processi generati (compreso quello mandato in esecuzione dalla linea
121
di comando) dal seguente codice C, compilato e fatto eseguire su un sistema con il sistemaoperativo Unix:main(){int pid, i;for (i = 0; i <= 3; i + +){
pid=fork();if (pid == 0 && i < 3) exit(0);
}exit(0);}
[A] 5
[B] 9
[C] 6
[D] 8
domanda N. 4:
Sia dato il seguente insieme di processi:
TA TC P
P1 0 6 3P2 3 4 5P3 4 6 4P4 11 2 5P5 14 4 1
dove TA e il tempo di arrivo nella coda dei processi pronti, TC e il tempo di utilizzo della CPUe P e la priorita (priorita massima = 5). Utilizzando l’algoritmo di scheduling a priorita conprelazione, si determini il tempo medio di esecuzione.
[A] 8.4
[B] 8.8
[C] 8.6
[D] 8.2
domanda N. 5:
122
Sia dato il seguente insieme di processi:
TA TC
P1 0 10P2 3 6P3 5 6P4 9 4P5 13 2
dove TA e il tempo di arrivo nella coda dei processi pronti e TC e il tempo di utilizzo della CPU.Utilizzando l’algoritmo di scheduling Round Robin con quanto di tempo q = 2, si determini iltempo medio di esecuzione.
[A] 18.8
[B] 17.6
[C] 18.0
[D] 18.4
domanda N. 6:
Siano dati tre processi che condividono una variabile x e i cui pseudo codici sono di seguitoriportati:
P1 P2 P3
wait(R) wait(S) wait(T)x = x-5; x = x+2; x = x+3;signal(T); if(x >= 3)then if(x==1)thenwait(R); signal(R); signal(R);signal(S); else endif
signal(T); wait(T);endifwait(S);signal(T);
Supponendo che i tre semafori binari R, S e T siano inizializzati rispettivamente a R = 0,S = 1 e T = 0, si determini quale valore iniziale della variabile x, tra quelli proposti nellerisposte, non comporti una situazione di stallo per i processi.
[A] x = 0
[B] x = 2
[C] x = 1
[D] x = −1
123
domanda N. 7:
Si determini la veridicita’ delle seguenti affermazioni:
a) In generale, nel caso di gestione della memoria mediante paginazione, il problema dellaframmentazione aumenta col cresere della dimensione delle pagine.
b) La segmentazione e uno schema di gestione della memoria in cui un programma e divisoin moduli della stessa dimensione (i segmenti) che sono poi allocati in frame di memorialiberi.
[A] a) falsa ; b) vera
[B] a) vera ; b) falsa
[C] entrambe false
[D] entrambe vere
domanda N. 8:
Sia dato un sistema che gestisce una memoria di 5120 byte mediante partizioni variabili. Sisupponga che nella memoria siano gia presenti 5 processi di dimensioni 740, 875, 250, 1450 e490 byte rispettivamente allocati negli indirizzi fisici 2048, 3072, 2788, 0 e 4096. Si determinil’indirizzo in cui verra allocato un ulteriore processo di 389 byte mediante la tecnica del bestfit.
[A] 4586
[B] 1450
[C] 3038
[D] 3947
domanda N. 9:
Si consideri un sistema con paginazione su due livelli. Per un processo che richiede 16 pagine,ognuna di 512 byte, di seguito si riportano la tabella delle pagine di primo livello (P ′) e le4 tabelle di secondo livello (P”0, P”1, P”2 e P”3), le quali hanno rispettivamente indirizzofisico iniziale 0, 512, 1024 e 1536:
P ′
0 0
1 512
2 1024
3 1536
P”0
0 8192
1 11776
2 5120
3 14336
P”1
0 10752
1 7680
2 3072
3 6144
P”2
0 5632
1 10240
2 13824
3 11264
P”3
0 9216
1 3584
2 12800
3 14848
Si determini quale indirizzo fisico, tra quelli proposti, non appartiene allo spazio di indirizza-mento del processo.
124
[A] 3070
[B] 6146
[C] 9218
[D] 14850
domanda N. 10:
Si consideri un sistema operativo con paginazione su richiesta basato sull’algoritmo First InFirst Out (FIFO), che assegna ad ogni processo 3 frame di 512 Byte e che richiede 2 Byte perla memorizzazione di un intero. Ponendo attenzione solo agli array A, B e C, e ricordando cheil linguaggio C memorizza gli array 2-dimensionali per righe, si determini il numero di pagefaults del seguente frammento di codice C. ...int A[512], B[2][256], C[2][512];...N=256;for (i=0; i<2; i++){
for (j=0; j<N; j++){C[i][2*j] = A[i*N+j] + B[i][j];
} }
[A] 8
[B] 10
[C] 11
[D] 12
domanda N. 11:
Si consideri un sistema operativo con paginazione su richiesta basato sull’algoritmo LeastRecently Used (LRU), che assegna ad ogni processo 5 frame. Se determini il numero di pagefaults per la squenza di riferimenti alle pagine:
5, 3, 2, 5, 2, 4, 1, 6, 4, 1, 3, 7, 4, 6, 2
[A] 10
[B] 7
[C] 9
[D] 8
125
domanda N. 12:
Sia dato un disco con 200 tracce e velocita di seek di 1 traccia per ms. All’istante t=0 ilsistema operativo sta servendo una richiesta sulla traccia 70 e in coda ci sono richieste per letracce (55; 62; 65; 95; 97; 105). Successivamente arrivano altre richieste all’istante t=7 per latraccia 71 e all’istante t=50 per la traccia 63. Si calcoli il tempo di ricerca complessivo in msper servire tutte le richieste secondo la politica Shortest Seek Time First (SSTF), trascurandola latenza rotazionale e il tempo di trasferimento.
[A] 97
[B] 65
[C] 121
[D] 107
domanda N. 13:
Si determini la veridicita’ delle seguenti affermazioni:
a) Con un carico del disco pesante, la politica di scheduling SCAN andrebbe sempre preferitaalla politica C-SCAN a causa dell’overhead del ”ritorno a vuoto” della testina che inquesto caso diventa ancora piu significativo.
b) Il livello RAID con il piu alto overhead di memoria secondaria e il livello 5, a causa dellospazio utilizzato per la gestione delle informazioni relative alla parita.
[A] a) vera ; b) falsa
[B] a) falsa ; b) vera
[C] entrambe false
[D] entrambe vere
domanda N. 14:
Si consideri un disco che opera a 12000 rpm (giri al minuto), dove ogni traccia e composta da80 settori di 512 bytes ognuno. Si determini la velocita di trasferimento necessaria per poterleggere o scrivere una traccia intera durante una rotazione del disco.
[A] circa 8000 KB/sec
[B] circa 16000 KB/sec
[C] circa 9600 KB/sec
126
[D] circa 19200 KB/sec
domanda N. 15:
Si determini la veridicita’ delle seguenti affermazioni:
a) Un vantaggio dello schema di allocazione contigua di file in un file system e la velocita diaccesso poiche non si devono effettuare ulteriori operazioni di ricerche dei blocchi dopoaver individuato il primo blocco
b) Un problema nella prima versione della File Allocation Table di Microsoft (FAT12) era laframmentazione interna per i dischi di grandi dimensioni. Tale problema sussiste anchecon le nuove versioni FAT16 e FAT32, per cui esse vengono oramai utilizzate solo per ifile systen dei floppy disk.
[A] a) vera ; b) falsa
[B] a) falsa ; b) vera
[C] entrambe false
[D] entrambe vere
domanda N. 16:
Sia dato un file system che gestisca blocchi da 512 byte e indirizzi da 16 bit mediante unaallocazione indicizzata dei file. Si calcoli la dimensione massima di un file per questo filesystem supponendo che i blocchi indice contengono:
• 8 puntatori diretti a blocchi di dati
• 2 puntatori indiretti a blocchi di dati
[A] 271360 byte
[B] 266240 byte
[C] 330240 byte
[D] 67584 byte
domanda N. 17:
Si determini la veridicita delle seguenti affermazioni:
a) Si consideri un file formato da 100 record allocato su disco in forma concatenata dovei record del file sono memorizzati uno per blocco e il file descriptor e gia in memoriacentrale. Se l’ultimo record letto e’ il record 25, allora per cancellare il 60-mo recordsono necessari 35 accessi in lettura e 35 in scrittura.
127
b) Si consideri un file formato da 100 record allocato su disco in forma contigua dove i recorddel file sono memorizzati uno per blocco e il file descriptor e gia in memoria centrale. Sel’ultimo record letto e’ il record 10 allora per cancellare il 60-mo record sono necessari40 accessi in lettura e 1 in scrittura.
[A] a) vera ; b) falsa
[B] entrambe vere
[C] entrambe false
[D] a) falsa ; b) vera
128
================================================== compito N. 15 del 110609 ==========
=========================================
SVOLTO DA MATRICOLA
domanda 1
domanda 2
domanda 3
domanda 4
domanda 5
domanda 6
domanda 7
domanda 8
domanda 9
domanda 10
domanda 11
domanda 12
domanda 13
domanda 14
domanda 15
domanda 16
domanda 17
• 1.5 punti per ogni risposta esatta
• 0 punti per ogni risposta non data
• 0.5 punti di penalita’ per ogni risposta errata
FIRMA
129
============================================ CORSO DI SISTEMI OPERTIVI mod.A (gr. 1) ============ compito N. 16 del 110609 ==========
=========================================
domanda N. 1:
Si determini la veridicita’ delle seguenti affermazioni:
a) L’ordine delle attivita’ di un sistema operativo e’ determinato da eventi che possono esseregenerati da dispositivi hardware, da errori in un programma in esecuzione oppure da unarichiesta specifica di un programma che intende accedere ai servizi del sistema operativostesso mediante chiamate di sistema.
b) Le routine di servizio relative ai differenti eventi di cui alla affermazione a) sono eseguitesempre in modalita’ sistema, anche nel caso di programmi utente che intendono accedereai servizi del sistema operativo attraverso le chiamate di sistema.
[A] a) falsa ; b) vera
[B] entrambe false
[C] a) vera ; b) falsa
[D] entrambe vere
domanda N. 2:
Si determini la veridicita’ delle seguenti affermazioni:
a) Il sistema operativo accede molto spesso ai Process Control Blocks. Di conseguenza moltiprocessori possiedono un registro hardware che fa riferimento al PCB del processo inesecuzione in modo da facilitare il cambio di contesto.
b) Una delle operazioni che un processo puo’ effettuare quando riceve un segnale e di ignorarlo.Con tale termine si intende la capacita di redirigere il segnale ad un altro processo.
[A] entrambe false
[B] a) falsa ; b) vera
[C] entrambe vere
[D] a) vera ; b) falsa
domanda N. 3:
Si determini il numero di processi generati (compreso quello mandato in esecuzione dalla linea
130
di comando) dal seguente codice C, compilato e fatto eseguire su un sistema con il sistemaoperativo Unix:main(){int pid, i;for (i = 0; i <= 3; i + +){
pid=fork();if (pid == 0 && i == 2) exit(0);
}exit(0);}
[A] 8
[B] 10
[C] 14
[D] 12
domanda N. 4:
Sia dato il seguente insieme di processi:
TA TC P
P1 1 7 2P2 2 5 4P3 6 4 5P4 7 7 1P5 10 2 3
dove TA e il tempo di arrivo nella coda dei processi pronti, TC e il tempo di utilizzo della CPUe P e la priorita (priorita massima = 5). Utilizzando l’algoritmo di scheduling a priorita conprelazione, si determini il tempo medio di esecuzione.
[A] 11
[B] 10.4
[C] 11.2
[D] 10.6
domanda N. 5:
131
Sia dato il seguente insieme di processi:
TA TC
P1 0 8P2 3 6P3 5 8P4 9 4P5 11 2
dove TA e il tempo di arrivo nella coda dei processi pronti e TC e il tempo di utilizzo della CPU.Utilizzando l’algoritmo di scheduling Round Robin con quanto di tempo q = 2, si determini iltempo medio di esecuzione.
[A] 16.2
[B] 16.4
[C] 16.6
[D] 16
domanda N. 6:
Siano dati tre processi che condividono una variabile x e i cui pseudo codici sono di seguitoriportati:
P1 P2 P3
wait(R) wait(S) wait(T)x = 2*x; x = x*2; x = x+1;if (x > 0) then signal(T); signal(S);
x = x+1; wait(T)signal(S); x = x-1
else signal(R);x = x-1;signal(T);
endifwait(R);print x;
Si determini l’output del processo P1 supponendo che inizialmente x = −1 e i tre semaforibinari siano inizializzati rispettivamente R = 1, S = 0, T = 0.
[A] 5
[B] 4
[C] -5
[D] -4
132
domanda N. 7:
Si determini la veridicita’ delle seguenti affermazioni:
a) Il significativo overhrad associato alla tecnica del compattamento usata per ridurre il prob-lema della frammentazione esterna, rende tale tecnica poco adatta per un utilizzo neisistemi operativi real-time.
b) In un sistema operativo che gestisce la memoria centrale mediante partizioni fisse, i registrichiamati base e limit vengono utilizzati per decidere in quale partizione allocare i processi.
[A] a) vera ; b) falsa
[B] a) falsa ; b) vera
[C] entrambe vere
[D] entrambe false
domanda N. 8:
Sia data una memoria di 32MByte gestita mediante paginazione con frame di 512 KByte e sisupponga che il sistema operativo richieda 7 MByte. Si calcoli la dimensione della memoriaeffettivamente ancora utilizzabile dopo l’allocazione di 5 processi rispettivamente di 1229, 341,2831, 1710, 2116 KByte.
[A] 15872 KByte
[B] 15360 KByte
[C] 19456 KByte
[D] 21540 KByte
domanda N. 9:
Si consideri un sistema con paginazione su due livelli. Per un processo che richiede 16 pagine,ognuna di 512 byte, di seguito si riportano la tabella delle pagine di primo livello (P ′) e le4 tabelle di secondo livello (P”0, P”1, P”2 e P”3), le quali hanno rispettivamente indirizzofisico iniziale 0, 512, 1024 e 1536:
P ′
0 0
1 512
2 1024
3 1536
P”0
0 8192
1 11776
2 5120
3 14336
P”1
0 10752
1 7680
2 3072
3 6144
P”2
0 5632
1 10240
2 13824
3 11264
P”3
0 9216
1 3584
2 12800
3 14848
Si determini quale indirizzo fisico, tra quelli proposti, non appartiene allo spazio di indirizza-mento del processo.
133
[A] 12802
[B] 5122
[C] 13314
[D] 10754
domanda N. 10:
Si consideri un sistema operativo con paginazione su richiesta basato sull’algoritmo First InFirst Out (FIFO), che assegna ad ogni processo 3 frame di 512 Byte e che richiede 2 Byte perla memorizzazione di un intero. Ponendo attenzione solo agli array A, B e C, e ricordando cheil linguaggio C memorizza gli array 2-dimensionali per righe, si determini il numero di pagefaults del seguente frammento di codice C. ...int A[2][512], B[512], C[512];...N=512;for (i=0; i<2; i++){
for (j=0; j<N; j++){B[j/2 + i*256] = A[i][j] + C[j];
} }
[A] 12
[B] 8
[C] 11
[D] 10
domanda N. 11:
Si consideri un sistema opereativo con paginazione su richiesta basato sull’algoritmo LeastRecently Used (LRU), che assegna ad ogni processo 5 frame. Si determini il numero di pagefaults per la seguente sequenza di riferimenti alle pagine:
6, 7, 1, 6, 5, 4, 7, 3, 1, 6, 5, 6, 1, 4, 2
[A] 9
[B] 12
[C] 10
[D] 11
134
domanda N. 12:
Sia dato un disco con 200 tracce e velocita di seek di 1 traccia per ms. All’istante t=0 il sistemaoperativo sta servendo una richiesta sulla traccia 50 e in coda ci sono richieste per le tracce (15;30; 105; 120; 52; 85). Successivamente arrivano altre richieste all’istante t=25 per la traccia70 e all’istante t=150 per la traccia 45. Si calcoli il tempo di ricerca complessivo per serviretutte le richieste secondo la politica LOOK, iniziando in ordine ascendente e trascurando lalatenza rotazionale e il tempo di trasferimento.
[A] 225
[B] 305
[C] 205
[D] 234
domanda N. 13:
Si determini la veridicita’ delle seguenti affermazioni:
a) Con un carico del disco pesante, la politica di scheduling SCAN andrebbe sempre preferitaalla politica C-SCAN a causa dell’overhead del ”ritorno a vuoto” della testina che inquesto caso diventa ancora piu significativo.
b) Il livello RAID con il piu alto overhead di memoria secondaria e il livello 5, a causa dellospazio utilizzato per la gestione delle informazioni relative alla parita.
[A] a) vera ; b) falsa
[B] a) falsa ; b) vera
[C] entrambe false
[D] entrambe vere
domanda N. 14:
Si calcoli la probabilitaa di perdere i dati con un sistema RAID level 5 con 5 dischi, se il MeanTime to Failure (MTF) e di 1500 giorni e il Mean Time to Repair (MTR) e di 24.75 giorni.
[A] 0.00011
[B] 0.0002
[C] 0.00003
[D] 0.00009
135
domanda N. 15:
Si determini la veridicita’ delle seguenti affermazioni:
a) Uno dei vantaggi della bitmap rispetto alla lista dei blocchi liberi e la possibilita, per ilsistema, di determinare in maniera efficiente l’esistenza di un certo numero di blocchiliberi contigui.
b) In un file system con struttura gerarchica (ad es. Unix), il nome di un file e formatodall’insieme dei nomi delle directory a partire dalla directory utente fino al file.
[A] entrambe vere
[B] a) falsa ; b) vera
[C] a) vera ; b) falsa
[D] entrambe false
domanda N. 16:
Sia dato un file system di 2 MB che gestisca i file mediante allocazione tabellare (ad es. unaFile Allocation Table). Si determini la dimensione della tabella nel caso in cui i blocchi deldisco siano di 512 byte.
[A] 6 KB
[B] 12 KB
[C] 48 KB
[D] 32 KB
domanda N. 17:
Si determini la veridicita delle seguenti affermazioni:
a) Si consideri un file formato da 100 record allocato su disco in forma contigua dove i recorddel file sono memorizzati uno per blocco e il file descriptor e gia in memoria centrale. Sel’ultimo record letto e’ il record 25 allora per cancellare il 70-mo record sono necessari30 accessi in lettura e 30 in scrittura.
b) Si consideri un file formato da 100 record allocato su disco in forma concatenata dovei record del file sono memorizzati uno per blocco e il file descriptor e gia in memoriacentrale. Se l’ultimo record letto e’ il record 35, allora per cancellare il 75-mo recordsono necessari 40 accessi in lettura e 1 in scrittura.
[A] entrambe false
136
[B] a) falsa ; b) vera
[C] entrambe vere
[D] a) vera ; b) falsa
137
================================================== compito N. 16 del 110609 ==========
=========================================
SVOLTO DA MATRICOLA
domanda 1
domanda 2
domanda 3
domanda 4
domanda 5
domanda 6
domanda 7
domanda 8
domanda 9
domanda 10
domanda 11
domanda 12
domanda 13
domanda 14
domanda 15
domanda 16
domanda 17
• 1.5 punti per ogni risposta esatta
• 0 punti per ogni risposta non data
• 0.5 punti di penalita’ per ogni risposta errata
FIRMA
138
============================================ CORSO DI SISTEMI OPERTIVI mod.A (gr. 1) ============ compito N. 17 del 110609 ==========
=========================================
domanda N. 1:
Si determini la veridicita’ delle seguenti affermazioni:
a) Uno dei principali difetti dei sistemi operativi con architettura monolitica e’ l’inefficienza.Tale approccio, nonostante permetta uno sviluppo rapido del sistema, e’ per questomotivo sempre meno utilizzato per la progettazione dei sistemi operativi di tipo generale
b) Uno dei vantaggi dei sistemi operativi con architettura stratificata e’ la possibilita’ dimodificare rapidamente e semplicemente parte del sistema operativo senza interveniresugli altri livelli dell’architettura software.
[A] entrambe false
[B] a) vera ; b) falsa
[C] entrambe vere
[D] a) falsa ; b) vera
domanda N. 2:
Si determini la veridicita’ delle seguenti affermazioni:
a) Le prestazioni di una qualunque applicazione multithreading e sempre piu’ efficiente nelcaso di una implementazione dei thread utente secondo il modello molti a uno rispettoad una implementazione secondo il modello uno a uno. Cio e’ dovuto al fatto che con ilmodello molti a uno, i thread a livello utente non richiamano il kernel per le operazionidi scheduling e sincronizzazione.
b) Uno svantaggio dell’implementazione dei threads secondo il modello uno a uno e la scarsaportabilita delle applicazioni, in quanto esse devono interfacciarsi direttamente con lechiamate di sistema relative al sistema operativo su cui deve essere eseguita l’applicazione.I sistemi operativi conformi ad interfacce standard, ad esempio POSIX, riducono il prob-lema.
[A] entrambe false
[B] a) falsa ; b) vera
[C] entrambe vere
[D] a) vera ; b) falsa
139
domanda N. 3:
Si determini il numero di processi generati (compreso quello mandato in esecuzione dalla lineadi comando) dal seguente codice C, compilato e fatto eseguire su un sistema con il sistemaoperativo Unix:main(){int pid, i;for (i = 0; i <= 3; i + +){
pid=fork();if (pid == 0 && i > 1) exit(0);
}exit(0);}
[A] 9
[B] 8
[C] 10
[D] 12
domanda N. 4:
Sia dato il seguente insieme di processi:
TA TC
P1 0 8P2 1 4P3 3 6P4 7 2P5 10 2
dove TA e il tempo di arrivo nella coda dei processi pronti e TC e il tempo di utilizzo della CPU.Utilizzando l’algoritmo di scheduling dello Shortest Job First con prelazione, si determini iltempo medio di esecuzione.
[A] 8.4
[B] 8.6
[C] 8.2
[D] 8.0
140
domanda N. 5:
Sia dato il seguente insieme di processi:
TA TC
P1 0 5P2 3 6P3 5 7P4 8 6P5 16 3
dove TA e il tempo di arrivo nella coda dei processi pronti e TC e il tempo di utilizzo della CPU.Utilizzando l’algoritmo di scheduling Round Robin con quanto di tempo q = 2, si determini iltempo medio di esecuzione.
[A] 14
[B] 14.2
[C] 13.8
[D] 13.6
domanda N. 6:
Siano dati tre processi che condividono una variabile x e i cui pseudo codici sono di seguitoriportati:
P1 P2 P3
wait(S) wait(R) wait(T)x = 2+x; if (x < 0) then x = x+1;signal(T); x = x-1; signal(R);wait(S); signal(S); wait(T);print x; else x = x+1;
x = x+1; signal(S);signal(T);
endif
Si determini l’output del processo P1 supponendo che inizialmente x = −1 e i tre semaforibinari siano inizializzati rispettivamente S = 1, R = 0, T = 0.
[A] 6
[B] 4
[C] 3
[D] 5
domanda N. 7:
Si determini la veridicita’ delle seguenti affermazioni:
141
a) In generale, nel caso di gestione della memoria mediante paginazione, il problema dellaframmentazione aumenta col cresere della dimensione delle pagine.
b) La segmentazione e uno schema di gestione della memoria in cui un programma e divisoin moduli della stessa dimensione (i segmenti) che sono poi allocati in frame di memorialiberi.
[A] entrambe false
[B] entrambe vere
[C] a) falsa ; b) vera
[D] a) vera ; b) falsa
domanda N. 8:
Si consideri un sistema di paginazione con tabella delle pagine in memoria centrale. Suppo-nendo che un riferimento alla memoria centrale richieda 180 ns e che il tempo di accesso airegistri TLB richieda 25 ns, si determini la percentuale di successo nell’accesso ai TLB (hitratio dei TLB) per ottenere un tempo medio di accesso di 232 ns.
[A] 85%
[B] 91%
[C] 88%
[D] 82%
domanda N. 9:
Si consideri un sistema con paginazione su due livelli. Per un processo che richiede 16 pagine,ognuna di 512 byte, di seguito si riportano la tabella delle pagine di primo livello (P ′) e le4 tabelle di secondo livello (P”0, P”1, P”2 e P”3), le quali hanno rispettivamente indirizzofisico iniziale 0, 512, 1024 e 1536:
P ′
0 0
1 512
2 1024
3 1536
P”0
0 8192
1 11776
2 5120
3 14336
P”1
0 10752
1 7680
2 3072
3 6144
P”2
0 5632
1 10240
2 13824
3 11264
P”3
0 9216
1 3584
2 12800
3 14848
Si determini quale indirizzo fisico, tra quelli proposti, non appartiene allo spazio di indirizza-mento del processo.
[A] 9218
[B] 14850
142
[C] 3070
[D] 6146
domanda N. 10:
Si consideri un sistema operativo con paginazione su richiesta basato sull’algoritmo First InFirst Out (FIFO), che assegna ad ogni processo 3 frame di 512 Byte e che richiede 2 Byte perla memorizzazione di un intero. Ponendo attenzione solo agli array A, B e C, e ricordando cheil linguaggio C memorizza gli array 2-dimensionali per righe, si determini il numero di pagefaults del seguente frammento di codice C. ...int A[2][512], B[512], C[256];...N=512;for (i=0; i<2; i++){
for (j=0; j<N; j++){B[j/2 + i*256] = A[i][j] + C[j/2];
} }
[A] 8
[B] 12
[C] 10
[D] 11
domanda N. 11:
Si consideri un sistema operativo con paginazione su richiesta basato sull’algoritmo del Work-ing Set con dimensione della finestra di osservazione w = 6. Si determini, a partire dall’istantet = 6, il minimo e massimo numero di frame che il sistema assegna ad un processo di 6 pagineche vengono referenziate nel seguente ordine:
1, 2, 4, 1, 2, 4, 3, 4, 3, 3, 3, 4, 5, 3, 4, 5, 6, 4, 5, 6, 5, 5, 6, 5, 4
[A] min=3, max=5
[B] min=3, max=4
[C] min=2, max=5
[D] min=2, max=4
domanda N. 12:
143
Sia dato un disco con 200 tracce e velocita di seek di 1 traccia per ms. All’istante t=0il sistema operativo sta servendo una richiesta sulla traccia 100 e in coda ci sono richiesteper le tracce (55; 75; 80; 110; 135; 160). Successivamente arrivano altre richieste all’istantet=30 per la traccia 105 e all’istante t=135 per la traccia 100. Si calcoli il tempo di ricercacomplessivo in ms per servire tutte le richieste secondo la politica Shortest Seek Time First(SSTF), trascurando la latenza rotazionale e il tempo di trasferimento.
[A] 155
[B] 180
[C] 210
[D] 205
domanda N. 13:
Si determini la veridicita’ delle seguenti affermazioni:
a) Con un carico del disco pesante, la politica di scheduling SCAN andrebbe sempre preferitaalla politica C-SCAN a causa dell’overhead del ”ritorno a vuoto” della testina che inquesto caso diventa ancora piu significativo.
b) Il livello RAID con il piu alto overhead di memoria secondaria e il livello 5, a causa dellospazio utilizzato per la gestione delle informazioni relative alla parita.
[A] a) vera ; b) falsa
[B] a) falsa ; b) vera
[C] entrambe false
[D] entrambe vere
domanda N. 14:
Si calcoli la probabilitaa di perdere i dati con un sistema RAID level 5 con 5 dischi, se il MeanTime to Failure (MTF) e di 1400 giorni e il Mean Time to Repair (MTR) e di 19.6 giorni.
[A] 0.00009
[B] 0.00011
[C] 0.0001
[D] 0.00003
domanda N. 15:
Si determini la veridicita’ delle seguenti affermazioni:
144
a) Per motivi di efficienza, la lista dei blocchi liberi e generalmente ordinata secondo l’indicedel blocco.
b) I principali compiti di un file system sono: gestire le strutture logiche del file system(directory e file), organizzare i file in blocchi e gestirne l’allocazione, verificare l’integritadei dati, gestire lo spazio libero e verificare che i dati nei file non contengano errori.
[A] entrambe vere
[B] a) falsa ; b) vera
[C] entrambe false
[D] a) vera ; b) falsa
domanda N. 16:
Sia dato un file system che gestisca blocchi da 256 byte e indirizzi da 16 bit mediante unaallocazione indicizzata dei file. Si calcoli la dimensione massima di un file per questo filesystem supponendo che i blocchi indice contengono:
• 8 puntatori diretti a blocchi di dati
• 2 puntatori indiretti a blocchi di dati
[A] 271360 byte
[B] 50944 byte
[C] 266240 byte
[D] 67584 byte
domanda N. 17:
Si determini la veridicita delle seguenti affermazioni:
a) Si consideri un file formato da 100 record allocato su disco in forma contigua dove i recorddel file sono memorizzati uno per blocco e il file descriptor e gia in memoria centrale. Sel’ultimo record letto e’ il record 25 allora per cancellare il 70-mo record sono necessari30 accessi in lettura e 30 in scrittura.
b) Si consideri un file formato da 100 record allocato su disco in forma concatenata dovei record del file sono memorizzati uno per blocco e il file descriptor e gia in memoriacentrale. Se l’ultimo record letto e’ il record 35, allora per cancellare il 75-mo recordsono necessari 40 accessi in lettura e 1 in scrittura.
[A] a) vera ; b) falsa
[B] entrambe false
145
[C] a) falsa ; b) vera
[D] entrambe vere
146
================================================== compito N. 17 del 110609 ==========
=========================================
SVOLTO DA MATRICOLA
domanda 1
domanda 2
domanda 3
domanda 4
domanda 5
domanda 6
domanda 7
domanda 8
domanda 9
domanda 10
domanda 11
domanda 12
domanda 13
domanda 14
domanda 15
domanda 16
domanda 17
• 1.5 punti per ogni risposta esatta
• 0 punti per ogni risposta non data
• 0.5 punti di penalita’ per ogni risposta errata
FIRMA
147
============================================ CORSO DI SISTEMI OPERTIVI mod.A (gr. 1) ============ compito N. 18 del 110609 ==========
=========================================
domanda N. 1:
Si determini la veridicita’ delle seguenti affermazioni:
a) L’ordine delle attivita’ di un sistema operativo e’ determinato da eventi che possono esseregenerati da dispositivi hardware, da errori in un programma in esecuzione oppure da unarichiesta specifica di un programma che intende accedere ai servizi del sistema operativostesso mediante chiamate di sistema.
b) Le routine di servizio relative ai differenti eventi di cui alla affermazione a) sono eseguitesempre in modalita’ sistema, anche nel caso di programmi utente che intendono accedereai servizi del sistema operativo attraverso le chiamate di sistema.
[A] entrambe vere
[B] a) falsa ; b) vera
[C] entrambe false
[D] a) vera ; b) falsa
domanda N. 2:
Si determini la veridicita’ delle seguenti affermazioni:
a) Uno svantaggio nell’uso dei threads rispetto all’uso di piu processi cooperanti che comuni-cano attraverso una memoria condivisa e la necessita della sincronizzazione.
b) Il meccanismo piu utilizzato dai sistemi operativi di tipo generale per impedire che unprocesso possa monopolizzare l’uso della CPU , consiste nell’assegnare ai processi untempo massimo di utilizzo continuativo della CPU, scaduto il quale il processo vienesospeso.
[A] entrambe false
[B] entrambe vere
[C] a) falsa ; b) vera
[D] a) vera ; b) falsa
148
domanda N. 3:
Si determini il numero di processi generati (compreso quello mandato in esecuzione dalla lineadi comando) dal seguente codice C, compilato e fatto eseguire su un sistema con il sistemaoperativo Unix:main(){int pid, i;for (i = 0; i <= 3; i + +){
pid=fork();if (pid == 0 && i >= 0) exit(0);
}exit(0);}
[A] 9
[B] 5
[C] 8
[D] 7
domanda N. 4:
Sia dato il seguente insieme di processi:
TA TC
P1 0 12P2 2 3P3 6 3P4 11 6P5 14 2
dove TA e il tempo di arrivo nella coda dei processi pronti e TC e il tempo di utilizzo della CPU.Utilizzando l’algoritmo di scheduling dello Shortest Job First con prelazione, si determini iltempo medio di esecuzione.
[A] 8.4
[B] 8.2
[C] 8.0
[D] 7.8
149
domanda N. 5:
Sia dato il seguente insieme di processi:
TA TC
P1 0 7P2 1 7P3 7 7P4 11 3P5 13 2
dove TA e il tempo di arrivo nella coda dei processi pronti e TC e il tempo di utilizzo della CPU.Utilizzando l’algoritmo di scheduling Round Robin con quanto di tempo q = 2, si determini iltempo medio di esecuzione.
[A] 15
[B] 14.6
[C] 14.4
[D] 14.8
domanda N. 6:
Siano dati tre processi che condividono una variabile x e i cui pseudo codici sono di seguitoriportati:
P1 P2 P3
wait(R) wait(S) wait(T)x = -x; x = x-1; x = x+1;signal(S); if (x > 0) then signal(R);wait(R); x = x-1; wait(T);x = -x; signal(T); print x;signal(T); else
signal(R);endif
Si determini l’output del processo P3 supponendo che inizialmente x = 1 e i tre semaforibinari siano inizializzati rispettivamente S = 0, R = 0, T = 1.
[A] 5
[B] 6
[C] 3
[D] 4
domanda N. 7:
Si determini la veridicita’ delle seguenti affermazioni:
150
a) In generale, nel caso di gestione della memoria mediante paginazione, il problema dellaframmentazione aumenta col cresere della dimensione delle pagine.
b) La segmentazione e uno schema di gestione della memoria in cui un programma e divisoin moduli della stessa dimensione (i segmenti) che sono poi allocati in frame di memorialiberi.
[A] entrambe false
[B] entrambe vere
[C] a) falsa ; b) vera
[D] a) vera ; b) falsa
domanda N. 8:
Sia data una memoria di 32MByte gestita mediante paginazione con frame di 512 KByte e sisupponga che il sistema operativo richieda 6 MByte. Si calcoli la dimensione della memoriaeffettivamente ancora utilizzabile dopo l’allocazione di 5 processi rispettivamente di 2530,1840, 785, 3421, 2013 KByte.
[A] 21540 KByte
[B] 15360 KByte
[C] 19456 KByte
[D] 17408 KByte
domanda N. 9:
Si consideri un sistema con paginazione su due livelli. Per un processo che richiede 16 pagine,di seguito si riportano la tabella delle pagine di primo livello (P ′) e le 4 tabelle di secondolivello (P”0, P”1, P”2 e P”3), le quali hanno rispettivamente indirizzo iniziale 8192, 8704,9216 e 9728:
P ′
0 8192
1 8704
2 9216
3 9728
P”0
0 0
1 512
2 1024
3 1536
P”1
0 2048
1 2560
2 3072
3 3584
P”2
0 4096
1 4608
2 5120
3 5632
P”3
0 6144
1 6656
2 7168
3 7680
Si determini l’indirizzo fisico corrispondente all’indirizzo logico < 2, 1, 248 >
[A] 1272
[B] 3320
151
[C] 4856
[D] 6904
domanda N. 10:
Si consideri un sistema operativo con paginazione su richiesta basato sull’algoritmo First InFirst Out (FIFO), che assegna ad ogni processo 3 frame di 512 Byte e che richiede 2 Byte perla memorizzazione di un intero. Ponendo attenzione solo agli array A, B e C, e ricordando cheil linguaggio C memorizza gli array 2-dimensionali per righe, si determini il numero di pagefaults del seguente frammento di codice C. ...int A[512], B[2][256], C[2][512];...N=256;for (i=0; i<2; i++){
for (j=0; j<N; j++){C[i][2*j] = A[i*N+j] + B[i][j];
} }
[A] 8
[B] 10
[C] 11
[D] 12
domanda N. 11:
Si consideri un sistema operativo con paginazione su richiesta basato sull’algoritmo del Work-ing Set con dimensione della finestra di osservazione w = 6. Si determini, a partire dall’istantet = 6, il minimo e massimo numero di frame che il sistema assegna ad un processo di 6 pagineche vengono referenziate nel seguente ordine:
1, 2, 4, 1, 2, 4, 3, 4, 3, 3, 3, 4, 5, 3, 4, 5, 6, 4, 5, 6, 5, 5, 6, 5, 4
[A] min=2, max=4
[B] min=3, max=5
[C] min=3, max=4
[D] min=2, max=5
domanda N. 12:
152
Sia dato un disco con 2000 tracce. Una operazione di lettura di un blocco richiede 3 msper lo spostamento tra due tracce adiacenti, 5 ms per la latenza rotazionale e 10 ms per iltrasferimento di un blocco di dati. Si calcoli il tempo necessario per leggere un file costituitoda 45 blocchi nel caso in cui questi ultimi siano distanti mediamente 15 tracce l’uno dall’altro.
[A] 8.44 sec
[B] 2.7 sec
[C] 12.15 sec
[D] 2.04 sec
domanda N. 13:
Si determini la veridicita’ delle seguenti affermazioni:
a) Il principale motivo per cui l’algoritmo di scheduling del disco Shortest Seek Time First epoco utilizzato nei sistemi di tipo generale e la possibilita di posticipazione indefinita dialcune richieste.
b) Uno dei parametri per la valutazione delle strategie di scheduling del disco e la varianzadei tempi di risposta che e una misura del numero di richieste servite per unita di tempo
[A] entrambe vere
[B] a) vera ; b) falsa
[C] entrambe false
[D] a) falsa ; b) vera
domanda N. 14:
Si calcoli la probabilitaa di perdere i dati con un sistema RAID level 1 con 6 dischi, se il MeanTime to Failure (MTF) e di 1500 giorni e il Mean Time to Repair (MTR) e di 15 giorni.
[A] 0.00002
[B] 0.00003
[C] 0.00009
[D] 0.00001
domanda N. 15:
Si determini la veridicita’ delle seguenti affermazioni:
153
a) Lo schema di allocazione basato sulla File Allocation Table (FAT) di Microsoft e unoschema che, con poca richiesta di memoria (necessaria solo per la tabella) e con pochiacccessi al disco assicura una gestione efficiente del file system anche se di grandi di-mensioni. Per tale motivo e ancora alla base di tutti i file system dei sistemi operativiMicrosoft.
b) Se il numero di blocchi usati in un file system e molto elevato, la memoria richiesta perla gestione dei blocchi liberi mediante lista concatenata puo essere inferiore a quellarichiesta dalla bitmap, nonostante quest’ultima usi solo un bit per blocco.
[A] entrambe false
[B] a) falsa ; b) vera
[C] entrambe vere
[D] a) vera ; b) falsa
domanda N. 16:
Sia dato un file system di 2 MB che gestisca i file mediante allocazione tabellare (ad es. unaFile Allocation Table). Si determini la dimensione della tabella nel caso in cui i blocchi deldisco siano di 1024 byte.
[A] ∼ 64 KB
[B] ∼ 16 KB
[C] ∼ 2.7 KB
[D] ∼ 6 KB
domanda N. 17:
Si determini la veridicita delle seguenti affermazioni:
a) Si consideri un file formato da 100 record allocato su disco in forma contigua dove i recorddel file sono memorizzati uno per blocco e il file descriptor e gia in memoria centrale. Sel’ultimo record letto e’ il record 10 allora per cancellare il 50-mo record sono necessari 1accesso in lettura e 1 in scrittura.
b) Si consideri un file formato da 100 record allocato su disco in forma concatenata dovei record del file sono memorizzati uno per blocco e il file descriptor e gia in memoriacentrale. Se l’ultimo record letto e’ il record 15, allora per cancellare il 65-mo recordsono necessari 50 accessi in lettura e 50 in scrittura.
[A] entrambe vere
[B] a) vera ; b) falsa
154
[C] entrambe false
[D] a) falsa ; b) vera
155
================================================== compito N. 18 del 110609 ==========
=========================================
SVOLTO DA MATRICOLA
domanda 1
domanda 2
domanda 3
domanda 4
domanda 5
domanda 6
domanda 7
domanda 8
domanda 9
domanda 10
domanda 11
domanda 12
domanda 13
domanda 14
domanda 15
domanda 16
domanda 17
• 1.5 punti per ogni risposta esatta
• 0 punti per ogni risposta non data
• 0.5 punti di penalita’ per ogni risposta errata
FIRMA
156
============================================ CORSO DI SISTEMI OPERTIVI mod.A (gr. 1) ============ compito N. 19 del 110609 ==========
=========================================
domanda N. 1:
Si determini la veridicita’ delle seguenti affermazioni:
a) L’ordine delle attivita’ di un sistema operativo e’ determinato da eventi che possono esseregenerati da dispositivi hardware, da errori in un programma in esecuzione oppure da unarichiesta specifica di un programma che intende accedere ai servizi del sistema operativostesso mediante chiamate di sistema.
b) Le routine di servizio relative ai differenti eventi di cui alla affermazione a) sono eseguitesempre in modalita’ sistema, anche nel caso di programmi utente che intendono accedereai servizi del sistema operativo attraverso le chiamate di sistema.
[A] entrambe false
[B] a) vera ; b) falsa
[C] entrambe vere
[D] a) falsa ; b) vera
domanda N. 2:
Si determini la veridicita’ delle seguenti affermazioni:
a) Il maggior svantaggio nell’uso dei segnali rispetto alle altre forme di IPC e l’impossibilitadi scambiare dati tra i processi.
b) Le principali azioni che un processo puo compiere quando riceve un segnale sono: catturare,ignorare o mascherare il segnale.
[A] entrambe vere
[B] a) vera ; b) falsa
[C] entrambe false
[D] a) falsa ; b) vera
domanda N. 3:
Si determini il numero di processi generati (compreso quello mandato in esecuzione dalla linea
157
di comando) dal seguente codice C, compilato e fatto eseguire su un sistema con il sistemaoperativo Unix:main(){int pid, i;for (i = 0; i <= 3; i + +){
pid=fork();if (pid == 0 && i > 2) exit(0);
}exit(0);}
[A] 8
[B] 10
[C] 16
[D] 9
domanda N. 4:
Sia dato il seguente insieme di processi:
TA TC
P1 0 8P2 1 4P3 3 6P4 7 2P5 10 2
dove TA e il tempo di arrivo nella coda dei processi pronti e TC e il tempo di utilizzo della CPU.Utilizzando l’algoritmo di scheduling dello Shortest Job First con prelazione, si determini iltempo medio di esecuzione.
[A] 8.4
[B] 8.6
[C] 8.2
[D] 8.0
domanda N. 5:
158
Sia dato il seguente insieme di processi:
TA TC
P1 0 3P2 1 5P3 3 7P4 8 5P5 10 6
dove TA e il tempo di arrivo nella coda dei processi pronti e TC e il tempo di utilizzo della CPU.Utilizzando l’algoritmo di scheduling Round Robin con quanto di tempo q = 2, si determini iltempo medio di esecuzione.
[A] 13.8
[B] 13.6
[C] 14
[D] 14.2
domanda N. 6:
Siano dati tre processi che condividono una variabile x e i cui pseudo codici sono di seguitoriportati:
P1 P2 P3
wait(S) wait(R) wait(T)x = 2+x; if (x < 0) then x = x+1;signal(T); x = x-1; signal(R);wait(S); signal(S); wait(T);print x; else x = x+1;
x = x+1; signal(S);signal(T);
endif
Si determini l’output del processo P1 supponendo che inizialmente x = −1 e i tre semaforibinari siano inizializzati rispettivamente S = 1, R = 0, T = 0.
[A] 5
[B] 6
[C] 4
[D] 3
domanda N. 7:
Si determini la veridicita’ delle seguenti affermazioni:
159
a) Andando dai livelli di memoria piu bassi (dispositivi secondari e terziari) a quelli piu alti(registri e cache), il tempo di accesso diminuisce.
b) In generale, l’overhead a cui si va in contro con l’allocazione non contigua dei processi inmemoria e compensata dal vantaggio di un aumento del grado di multiprogrammazione.
[A] entrambe vere
[B] a) falsa ; b) vera
[C] a) vera ; b) falsa
[D] entrambe false
domanda N. 8:
Sia data una memoria di 32MByte gestita mediante paginazione con frame di 512 KByte e sisupponga che il sistema operativo richieda 6 MByte. Si calcoli la dimensione della memoriaeffettivamente ancora utilizzabile dopo l’allocazione di 5 processi rispettivamente di 2530,1840, 785, 3421, 2013 KByte.
[A] 19456 KByte
[B] 17408 KByte
[C] 21540 KByte
[D] 15360 KByte
domanda N. 9:
Si consideri un sistema con paginazione su due livelli. Per un processo che richiede 16 pagine,di seguito si riportano la tabella delle pagine di primo livello (P ′) e le 4 tabelle di secondolivello (P”0, P”1, P”2 e P”3), le quali hanno rispettivamente indirizzo iniziale 8192, 8704,9216 e 9728:
P ′
0 8192
1 8704
2 9216
3 9728
P”0
0 0
1 512
2 1024
3 1536
P”1
0 2048
1 2560
2 3072
3 3584
P”2
0 4096
1 4608
2 5120
3 5632
P”3
0 6144
1 6656
2 7168
3 7680
Si determini l’indirizzo fisico corrispondente all’indirizzo logico < 2, 1, 248 >
[A] 3320
[B] 4856
[C] 6904
160
[D] 1272
domanda N. 10:
Si consideri un sistema operativo con paginazione su richiesta basato sull’algoritmo First InFirst Out (FIFO), che assegna ad ogni processo 3 frame di 512 Byte e che richiede 2 Byte perla memorizzazione di un intero. Ponendo attenzione solo agli array A e B, e ricordando cheil linguaggio C memorizza gli array 2-dimensionali per righe, si determini il numero di pagefaults del seguente frammento di codice C. ...int A[1024], B[2][512];...N=512;for (i=0; i<2; i++){
for (j=0; j<N/2; j++){B[i][2*j] = A[i*N+j] + A[i*N+2*j];
} }
[A] 8
[B] 11
[C] 12
[D] 10
domanda N. 11:
Si consideri un sistema operativo con paginazione su richiesta basato sull’algoritmo LeastRecently Used (LRU), che assegna ad ogni processo 5 frame. Se determini il numero di pagefaults per la squenza di riferimenti alle pagine:
3, 2, 3, 4, 3, 1, 5, 1, 4, 1, 2, 3, 6, 7, 3
[A] 9
[B] 8
[C] 10
[D] 7
domanda N. 12:
Sia dato un disco con 200 tracce e velocita di seek di 1 traccia per ms. All’istante t=0 ilsistema operativo sta servendo una richiesta sulla traccia 50 e in coda ci sono richieste per letracce (58; 15; 23; 25; 65; 55). Successivamente arrivano altre richieste all’istante t=7 per la
161
traccia 49 e all’istante t=50 per la traccia 57. Si calcoli il tempo di ricerca complessivo perservire tutte le richieste secondo la politica Shortest Seek Time First (SSTF), trascurando lalatenza rotazionale e il tempo di trasferimento.
[A] 65
[B] 117
[C] 98
[D] 107
domanda N. 13:
Si determini la veridicita’ delle seguenti affermazioni:
a) La motivazione originale per l’introduzione dei sistemi RAID e stata l’osservazione che lavelocita di trasferimento cresceva ad un tasso molto inferiore a quello della crescita siadella capacita dei dischi sia della potenza di elaborazione delle CPU.
b) L’algorimo di scheduling del disco First Come First Served tende ad avere una accettabilevarianza dei tempi di risposta a spese del numero di richieste servite per unita di tempo.
[A] entrambe false
[B] a) falsa ; b) vera
[C] entrambe vere
[D] a) vera ; b) falsa
domanda N. 14:
Si calcoli la probabilitaa di perdere i dati con un sistema RAID level 5 con 5 dischi, se il MeanTime to Failure (MTF) e di 1600 giorni e il Mean Time to Repair (MTR) e di 23.04 giorni.
[A] 0.00003
[B] 0.00011
[C] 0.00009
[D] 0.0002
domanda N. 15:
Si determini la veridicita’ delle seguenti affermazioni:
162
a) Lo schema di allocazione basato sulla File Allocation Table (FAT) di Microsoft e unoschema che, con poca richiesta di memoria (necessaria solo per la tabella) e con pochiacccessi al disco assicura una gestione efficiente del file system anche se di grandi di-mensioni. Per tale motivo e ancora alla base di tutti i file system dei sistemi operativiMicrosoft.
b) Se il numero di blocchi usati in un file system e molto elevato, la memoria richiesta perla gestione dei blocchi liberi mediante lista concatenata puo essere inferiore a quellarichiesta dalla bitmap, nonostante quest’ultima usi solo un bit per blocco.
[A] entrambe vere
[B] a) vera ; b) falsa
[C] entrambe false
[D] a) falsa ; b) vera
domanda N. 16:
Sia dato un file system che gestisca blocchi da 512 byte e indirizzi da 32 bit mediante unaallocazione indicizzata dei file. Si calcoli la dimensione massima di un file per questo filesystem supponendo che i blocchi indice contengono:
• 5 puntatori diretti a blocchi di dati
• 5 puntatori indiretti a blocchi di dati
[A] 271360 byte
[B] 50944 byte
[C] 330240 byte
[D] 67584 byte
domanda N. 17:
Si determini la veridicita delle seguenti affermazioni:
a) Si consideri un file formato da 100 record allocato su disco in forma contigua dove i recorddel file sono memorizzati uno per blocco e il file descriptor e gia in memoria centrale. Sel’ultimo record letto e’ il record 10 allora per cancellare il 50-mo record sono necessari 1accesso in lettura e 1 in scrittura.
b) Si consideri un file formato da 100 record allocato su disco in forma concatenata dovei record del file sono memorizzati uno per blocco e il file descriptor e gia in memoriacentrale. Se l’ultimo record letto e’ il record 15, allora per cancellare il 65-mo recordsono necessari 50 accessi in lettura e 50 in scrittura.
163
[A] entrambe false
[B] a) falsa ; b) vera
[C] entrambe vere
[D] a) vera ; b) falsa
164
================================================== compito N. 19 del 110609 ==========
=========================================
SVOLTO DA MATRICOLA
domanda 1
domanda 2
domanda 3
domanda 4
domanda 5
domanda 6
domanda 7
domanda 8
domanda 9
domanda 10
domanda 11
domanda 12
domanda 13
domanda 14
domanda 15
domanda 16
domanda 17
• 1.5 punti per ogni risposta esatta
• 0 punti per ogni risposta non data
• 0.5 punti di penalita’ per ogni risposta errata
FIRMA
165
============================================ CORSO DI SISTEMI OPERTIVI mod.A (gr. 1) ============ compito N. 20 del 110609 ==========
=========================================
domanda N. 1:
Si determini la veridicita’ delle seguenti affermazioni:
a) Per motivi di sicurezza, le seguenti istruzioni dovrebbero essere sempre eseguite in modalitasistema: lettura del clock di sistema, disabilitazione delle interruzioni, switch dallamodalita utente a quella di sistema, accesso ai dispositivi di I/O.
b) La principale difficolta nello sviluppo di un sistema operativo real time e garantire che iprocessi terminino la loro esecuzione in un fissato intervallo di tempo. In tal senso unruolo chiave e svolto dallo scheduler.
[A] entrambe vere
[B] entrambe false
[C] a) falsa ; b) vera
[D] a) vera ; b) falsa
domanda N. 2:
Si determini la veridicita’ delle seguenti affermazioni:
a) L’insieme delle informazioni che caratterizzano un processo in esecuzione e che sono mem-orizzate nel Process Control Block e chiamato contesto. Per tale motivo la proceura chesospende un processo in esecuzione per mandarne un altro e detta cambio di contesto(context switch).
b) Il tempo medio di esecuzione di un insieme di processi di un sistema operativo time sharingdiminuisce sempre quando aumenta la frequenza dei context switch, in quanto i processiin esecuzione si avvicendano piu rapidemente nell’uso della CPU.
[A] a) vera ; b) falsa
[B] entrambe false
[C] a) falsa ; b) vera
[D] entrambe vere
166
domanda N. 3:
Si determini il numero di processi generati (compreso quello mandato in esecuzione dalla lineadi comando) dal seguente codice C, compilato e fatto eseguire su un sistema con il sistemaoperativo Unix:main(){int pid, i;for (i = 0; i <= 3; i + +){
pid=fork();if (pid == 0 && i > 1) exit(0);
}exit(0);}
[A] 9
[B] 8
[C] 10
[D] 12
domanda N. 4:
Sia dato il seguente insieme di processi:
TA TC P
P1 0 6 3P2 3 4 5P3 4 6 4P4 11 2 5P5 14 4 1
dove TA e il tempo di arrivo nella coda dei processi pronti, TC e il tempo di utilizzo della CPUe P e la priorita (priorita massima = 5). Utilizzando l’algoritmo di scheduling a priorita conprelazione, si determini il tempo medio di esecuzione.
[A] 8.2
[B] 8.4
[C] 8.8
[D] 8.6
167
domanda N. 5:
Sia dato il seguente insieme di processi:
TA TC
P1 0 5P2 3 6P3 5 7P4 8 6P5 16 3
dove TA e il tempo di arrivo nella coda dei processi pronti e TC e il tempo di utilizzo della CPU.Utilizzando l’algoritmo di scheduling Round Robin con quanto di tempo q = 2, si determini iltempo medio di esecuzione.
[A] 13.6
[B] 14
[C] 14.2
[D] 13.8
domanda N. 6:
Siano dati tre processi che condividono una variabile x e i cui pseudo codici sono di seguitoriportati:
P1 P2 P3
wait(S) wait(R) wait(T)x = 2+x; if (x < 0) then x = x+1;signal(T); x = x-1; signal(R);wait(S); signal(S); wait(T);print x; else x = x+1;
x = x+1; signal(S);signal(T);
endif
Si determini l’output del processo P1 supponendo che inizialmente x = −1 e i tre semaforibinari siano inizializzati rispettivamente S = 1, R = 0, T = 0.
[A] 3
[B] 5
[C] 6
[D] 4
domanda N. 7:
Si determini la veridicita’ delle seguenti affermazioni:
168
a) In generale, nel caso di gestione della memoria mediante paginazione, il problema dellaframmentazione aumenta col cresere della dimensione delle pagine.
b) La segmentazione e uno schema di gestione della memoria in cui un programma e divisoin moduli della stessa dimensione (i segmenti) che sono poi allocati in frame di memorialiberi.
[A] a) vera ; b) falsa
[B] entrambe false
[C] entrambe vere
[D] a) falsa ; b) vera
domanda N. 8:
Sia data una memoria di 32MByte gestita mediante paginazione con frame di 512 KByte e sisupponga che il sistema operativo richieda 6 MByte. Si calcoli la dimensione della memoriaeffettivamente ancora utilizzabile dopo l’allocazione di 5 processi rispettivamente di 2530,1840, 785, 3421, 2013 KByte.
[A] 21540 KByte
[B] 15360 KByte
[C] 19456 KByte
[D] 17408 KByte
domanda N. 9:
Si consideri un sistema con paginazione su due livelli. Per un processo che richiede 16 pagine,ognuna di 512 byte, di seguito si riportano la tabella delle pagine di primo livello (P ′) e le4 tabelle di secondo livello (P”0, P”1, P”2 e P”3), le quali hanno rispettivamente indirizzofisico iniziale 0, 512, 1024 e 1536:
P ′
0 0
1 512
2 1024
3 1536
P”0
0 8192
1 11776
2 5120
3 14336
P”1
0 10752
1 7680
2 3072
3 6144
P”2
0 5632
1 10240
2 13824
3 11264
P”3
0 9216
1 3584
2 12800
3 14848
Si determini quale indirizzo fisico, tra quelli proposti, non appartiene allo spazio di indirizza-mento del processo.
[A] 13314
[B] 10754
169
[C] 12802
[D] 5122
domanda N. 10:
Si consideri un sistema operativo con paginazione su richiesta basato sull’algoritmo First InFirst Out (FIFO), che assegna ad ogni processo 3 frame di 512 Byte e che richiede 2 Byte perla memorizzazione di un intero. Ponendo attenzione solo agli array A, B e C, e ricordando cheil linguaggio C memorizza gli array 2-dimensionali per righe, si determini il numero di pagefaults del seguente frammento di codice C. ...int A[512], B[2][256], C[2][512];...N=256;for (i=0; i<2; i++){
for (j=0; j<N; j++){C[i][2*j] = A[i*N+j] + B[i][j];
} }
[A] 12
[B] 8
[C] 10
[D] 11
domanda N. 11:
Si consideri un sistema operativo con paginazione su richiesta basato sull’algoritmo del Work-ing Set con dimensione della finestra di osservazione w = 6. Si determini, a partire dall’istantet = 6, il minimo e massimo numero di frame che il sistema assegna ad un processo di 6 pagineche vengono referenziate nel seguente ordine:
4, 2, 1, 1, 6, 6, 4, 1, 1, 6, 5, 6, 3, 5, 3, 5, 4, 3, 2, 3, 2, 1, 3, 2, 1
[A] min=3, max=4
[B] min=2, max=5
[C] min=3, max=5
[D] min=2, max=4
domanda N. 12:
170
Sia dato un disco con 200 tracce e velocita di seek di 1 traccia per ms. All’istante t=0il sistema operativo sta servendo una richiesta sulla traccia 100 e in coda ci sono richiesteper le tracce (55; 75; 80; 110; 135; 160). Successivamente arrivano altre richieste all’istantet=30 per la traccia 105 e all’istante t=135 per la traccia 100. Si calcoli il tempo di ricercacomplessivo in ms per servire tutte le richieste secondo la politica Shortest Seek Time First(SSTF), trascurando la latenza rotazionale e il tempo di trasferimento.
[A] 180
[B] 210
[C] 205
[D] 155
domanda N. 13:
Si determini la veridicita’ delle seguenti affermazioni:
a) Il principale motivo per cui l’algoritmo di scheduling del disco Shortest Seek Time First epoco utilizzato nei sistemi di tipo generale e la possibilita di posticipazione indefinita dialcune richieste.
b) Uno dei parametri per la valutazione delle strategie di scheduling del disco e la varianzadei tempi di risposta che e una misura del numero di richieste servite per unita di tempo
[A] a) vera ; b) falsa
[B] entrambe false
[C] a) falsa ; b) vera
[D] entrambe vere
domanda N. 14:
Si calcoli la probabilitaa di perdere i dati con un sistema RAID level 5 con 5 dischi, se il MeanTime to Failure (MTF) e di 1600 giorni e il Mean Time to Repair (MTR) e di 23.04 giorni.
[A] 0.0002
[B] 0.00003
[C] 0.00011
[D] 0.00009
domanda N. 15:
Si determini la veridicita’ delle seguenti affermazioni:
171
a) Uno dei vantaggi della bitmap rispetto alla lista dei blocchi liberi e la possibilita, per ilsistema, di determinare in maniera efficiente l’esistenza di un certo numero di blocchiliberi contigui.
b) In un file system con struttura gerarchica (ad es. Unix), il nome di un file e formatodall’insieme dei nomi delle directory a partire dalla directory utente fino al file.
[A] entrambe false
[B] entrambe vere
[C] a) falsa ; b) vera
[D] a) vera ; b) falsa
domanda N. 16:
Sia dato un file system di 8 MB che gestisca i file mediante allocazione tabellare (ad es. unaFile Allocation Table). Si determini la dimensione della tabella nel caso in cui i blocchi deldisco siano di 512 byte.
[A] 13 KB
[B] 32 KB
[C] 28 KB
[D] 12 KB
domanda N. 17:
Si determini la veridicita delle seguenti affermazioni:
a) Si consideri un file formato da 100 record allocato su disco in forma contigua dove i recorddel file sono memorizzati uno per blocco e il file descriptor e gia in memoria centrale. Sel’ultimo record letto e’ il record 30 allora per cancellare il 70-mo record sono necessari40 accessi in lettura e 1 in scrittura.
b) Si consideri un file formato da 100 record allocato su disco in forma concatenata dovei record del file sono memorizzati uno per blocco e il file descriptor e gia in memoriacentrale. Se l’ultimo record letto e’ il record 10, allora per cancellare il 35-mo recordsono necessari 25 accessi in lettura e 25 in scrittura.
[A] a) vera ; b) falsa
[B] a) falsa ; b) vera
[C] entrambe false
[D] entrambe vere
172
================================================== compito N. 20 del 110609 ==========
=========================================
SVOLTO DA MATRICOLA
domanda 1
domanda 2
domanda 3
domanda 4
domanda 5
domanda 6
domanda 7
domanda 8
domanda 9
domanda 10
domanda 11
domanda 12
domanda 13
domanda 14
domanda 15
domanda 16
domanda 17
• 1.5 punti per ogni risposta esatta
• 0 punti per ogni risposta non data
• 0.5 punti di penalita’ per ogni risposta errata
FIRMA
173
============================================ CORSO DI SISTEMI OPERTIVI mod.A (gr. 1) ============ compito N. 21 del 110609 ==========
=========================================
domanda N. 1:
Si determini la veridicita’ delle seguenti affermazioni:
a) Un sistema operativo che e in grado di utilizzare in maniera efficiente le risorse che vengonoaggiunte al sistema e detto espandibile.
b) Le chiamate di sistema operano in maniera simile alle interruzioni, nel senso che quandoavviene una chiamata di sistema, il sistema si porta in modalita kernel e serve la richiestamediante una apposita routine di servizio.
[A] a) falsa ; b) vera
[B] entrambe false
[C] a) vera ; b) falsa
[D] entrambe vere
domanda N. 2:
Si determini la veridicita’ delle seguenti affermazioni:
a) Il compito principale dello scheduler a lungo termine (anche detto job scheduler) e deter-minare l’ordine con cui i processi accedono alla CPU.
b) L’insieme dei processi che attendono il proprio turno per accedere alla CPU sono organiz-zati in una struttura dati chiamata coda dei processi in attesa (waiting queue).
[A] entrambe false
[B] a) falsa ; b) vera
[C] a) vera ; b) falsa
[D] entrambe vere
domanda N. 3:
Si determini il numero di processi generati (compreso quello mandato in esecuzione dalla lineadi comando) dal seguente codice C, compilato e fatto eseguire su un sistema con il sistemaoperativo Unix:
174
main(){int pid, i;for (i = 0; i <= 3; i + +){
pid=fork();if (pid == 0 && i < 2) exit(0);
}exit(0);}
[A] 6
[B] 8
[C] 9
[D] 10
domanda N. 4:
Sia dato il seguente insieme di processi:
TA TC P
P1 1 7 2P2 2 5 4P3 6 4 5P4 7 7 1P5 10 2 3
dove TA e il tempo di arrivo nella coda dei processi pronti, TC e il tempo di utilizzo della CPUe P e la priorita (priorita massima = 5). Utilizzando l’algoritmo di scheduling a priorita conprelazione, si determini il tempo medio di esecuzione.
[A] 10.6
[B] 11
[C] 10.4
[D] 11.2
domanda N. 5:
Sia dato il seguente insieme di processi:
TA TC
P1 0 10P2 3 6P3 5 6P4 9 4P5 13 2
175
dove TA e il tempo di arrivo nella coda dei processi pronti e TC e il tempo di utilizzo della CPU.Utilizzando l’algoritmo di scheduling Round Robin con quanto di tempo q = 2, si determini iltempo medio di esecuzione.
[A] 18.8
[B] 17.6
[C] 18.0
[D] 18.4
domanda N. 6:
Siano dati tre processi che condividono una variabile x e i cui pseudo codici sono di seguitoriportati:
P1 P2 P3
wait(R) wait(S) wait(T)x = -x; x = x-1; x = x+1;signal(S); if (x > 0) then signal(R);wait(R); x = x-1; wait(T);x = -x; signal(T); print x;signal(T); else
signal(R);endif
Si determini l’output del processo P3 supponendo che inizialmente x = 1 e i tre semaforibinari siano inizializzati rispettivamente S = 0, R = 0, T = 1.
[A] 6
[B] 3
[C] 4
[D] 5
domanda N. 7:
Si determini la veridicita’ delle seguenti affermazioni:
a) Nessuna delle principali strategie di allocazione contigua della memoria con partizionivariabili (strategia first fit, strategia best-fit e strategia worst-fit) comporta problemi diframmentazione interna.
b) Il principale svantaggio della strategia first fit rispetto alle altre due strategie di allocazionecontigua della memoria e il maggiore overhead.
176
[A] a) vera ; b) falsa
[B] a) falsa ; b) vera
[C] entrambe false
[D] entrambe vere
domanda N. 8:
Si consideri un sistema di paginazione con tabella delle pagine in memoria centrale. Suppo-nendo che un riferimento alla memoria centrale richieda 190 ns e che il tempo di accesso airegistri TLB richieda 25 ns, si determini la percentuale di successo nell’accesso ai TLB (hitratio dei TLB) per ottenere un tempo medio di accesso di 272 ns.
[A] 70%
[B] 73.5%
[C] 76.6666%
[D] 68%
domanda N. 9:
Si consideri un sistema con paginazione su due livelli. Per un processo che richiede 16 pagine,di seguito si riportano la tabella delle pagine di primo livello (P ′) e le 4 tabelle di secondolivello (P”0, P”1, P”2 e P”3), le quali hanno rispettivamente indirizzo iniziale 8192, 8704,9216 e 9728:
P ′
0 8192
1 8704
2 9216
3 9728
P”0
0 0
1 512
2 1024
3 1536
P”1
0 2048
1 2560
2 3072
3 3584
P”2
0 4096
1 4608
2 5120
3 5632
P”3
0 6144
1 6656
2 7168
3 7680
Si determini l’indirizzo fisico corrispondente all’indirizzo logico < 0, 3, 408 >
[A] 4731
[B] 1944
[C] 7803
[D] 6267
domanda N. 10:
177
Si consideri un sistema operativo con paginazione su richiesta basato sull’algoritmo First InFirst Out (FIFO), che assegna ad ogni processo 3 frame di 512 Byte e che richiede 2 Byte perla memorizzazione di un intero. Ponendo attenzione solo agli array A, B e C, e ricordando cheil linguaggio C memorizza gli array 2-dimensionali per righe, si determini il numero di pagefaults del seguente frammento di codice C. ...int A[512], B[2][256], C[2][512];...N=256;for (i=0; i<2; i++){
for (j=0; j<N; j++){C[i][2*j] = A[i*N+j] + B[i][j];
} }
[A] 8
[B] 10
[C] 11
[D] 12
domanda N. 11:
Si consideri un sistema operativo con paginazione su richiesta basato sull’algoritmo LeastRecently Used (LRU), che assegna ad ogni processo 5 frame. Se determini il numero di pagefaults per la squenza di riferimenti alle pagine:
3, 2, 3, 4, 3, 1, 5, 1, 4, 1, 2, 3, 6, 7, 3
[A] 9
[B] 8
[C] 10
[D] 7
domanda N. 12:
Sia dato un disco con 200 tracce e velocita di seek di 1 traccia per ms. All’istante t=0 ilsistema operativo sta servendo una richiesta sulla traccia 100 e in coda ci sono richieste per letracce (40; 65; 90; 120; 145; 125). Successivamente arrivano altre richieste all’istante t=30 perla traccia 95 e all’istante t=135 per la traccia 100. Si calcoli il tempo di ricerca complessivoper servire tutte le richieste secondo la politica Shortest Seek Time First (SSTF), trascurandola latenza rotazionale e il tempo di trasferimento.
[A] 210
178
[B] 165
[C] 215
[D] 185
domanda N. 13:
Si determini la veridicita’ delle seguenti affermazioni:
a) La motivazione originale per l’introduzione dei sistemi RAID e stata l’osservazione che lavelocita di trasferimento cresceva ad un tasso molto inferiore a quello della crescita siadella capacita dei dischi sia della potenza di elaborazione delle CPU.
b) L’algorimo di scheduling del disco First Come First Served tende ad avere una accettabilevarianza dei tempi di risposta a spese del numero di richieste servite per unita di tempo.
[A] a) vera ; b) falsa
[B] entrambe false
[C] a) falsa ; b) vera
[D] entrambe vere
domanda N. 14:
Si calcoli la probabilitaa di perdere i dati con un sistema RAID level 1 con 6 dischi, se il MeanTime to Failure (MTF) e di 1500 giorni e il Mean Time to Repair (MTR) e di 15 giorni.
[A] 0.00003
[B] 0.00009
[C] 0.00001
[D] 0.00002
domanda N. 15:
Si determini la veridicita’ delle seguenti affermazioni:
a) Rispetto allo schema di allocazione dei file con lista concatenata, il principale vantaggiodella allocazione indicizzata dei file in un file system e la possibilita di effettuare laricerca nel solo blocco indice, migliorando enormemente i tempi di attraversamento delfile.
179
b) Lo schema di gestione dei blocchi liberi basato sulla bitmap introduce sempre un minorsovraccarico di memoria rispetto alla lista dei blocchi liberi, poiche mediante la bitmapviene utilizzato un solo bit per blocco, mentre la lista richiede l’indice del blocco chepuo’ essere grande 16 o 32 bit.
[A] a) falsa ; b) vera
[B] entrambe false
[C] a) vera ; b) falsa
[D] entrambe vere
domanda N. 16:
Sia dato un file system che gestisca blocchi da 256 byte e indirizzi da 32 bit mediante unaallocazione indicizzata dei file. Si calcoli la dimensione massima di un file per questo filesystem supponendo che i blocchi indice contengono:
• 7 puntatori diretti a blocchi di dati
• 3 puntatori indiretti a blocchi di dati
[A] 266240 byte
[B] 330240 byte
[C] 67584 byte
[D] 50944 byte
domanda N. 17:
Si determini la veridicita delle seguenti affermazioni:
a) Si consideri un file formato da 100 record allocato su disco in forma indicizzata dove irecord del file sono memorizzati uno per blocco e il file descriptor e gia in memoriacentrale. Se non e stato fatto ancora nessun accesso al file, allora per cancellare il 50-morecord e necessario 1 accesso in lettura e 1 in scrittura.
b) Si consideri un file formato da 100 record allocato su disco in forma contigua dove i recorddel file sono memorizzati uno per blocco e il file descriptor e gia in memoria centrale. Sel’ultimo record letto e’ il record 10 allora per cancellare il 75-mo record sono necessari25 accessi in lettura e 1 in scrittura.
[A] a) vera ; b) falsa
[B] entrambe false
[C] a) falsa ; b) vera
[D] entrambe vere
180
================================================== compito N. 21 del 110609 ==========
=========================================
SVOLTO DA MATRICOLA
domanda 1
domanda 2
domanda 3
domanda 4
domanda 5
domanda 6
domanda 7
domanda 8
domanda 9
domanda 10
domanda 11
domanda 12
domanda 13
domanda 14
domanda 15
domanda 16
domanda 17
• 1.5 punti per ogni risposta esatta
• 0 punti per ogni risposta non data
• 0.5 punti di penalita’ per ogni risposta errata
FIRMA
181
============================================ CORSO DI SISTEMI OPERTIVI mod.A (gr. 1) ============ compito N. 22 del 110609 ==========
=========================================
domanda N. 1:
Si determini la veridicita’ delle seguenti affermazioni:
a) I seguenti sono tutti nomi di sistemi operativi realmente esistiti: Unix, MS-DOS, Solaris,Multics, CTSS, Minix, MacOS, Xenix.
b) Il modulo del sistema operativo che si occupa di determinare quando e per quanto tempoun processo deve accedere alla CPU e chiamato Interprocessor Communication Manager.
[A] a) falsa ; b) vera
[B] entrambe vere
[C] entrambe false
[D] a) vera ; b) falsa
domanda N. 2:
Si determini la veridicita’ delle seguenti affermazioni:
a) In ogni sistema operativo e presente una tabella (chiamata tabella dei processi o ProcessControl Block = PCB) che tiene traccia di tutti i processi in esecuzione. In tale tabellae memorizzato per ogni processo in esecuzione un identificativo di processo (pid), unpuntatore alla memoria dove sono stati memorizzati il codice e l’area dati, nonche’ tuttele informazioni necessarie per effettuare correttamente il cambio di contesto.
b) Pur avendo alcuni campi sempre presenti in tutti i sistemi operativi, la struttura generaledel PCB dipende dalla implementazione del sistema operativo.
[A] a) falsa ; b) vera
[B] a) vera ; b) falsa
[C] entrambe false
[D] entrambe vere
domanda N. 3:
Si determini il numero di processi generati (compreso quello mandato in esecuzione dalla linea
182
di comando) dal seguente codice C, compilato e fatto eseguire su un sistema con il sistemaoperativo Unix:main(){int pid, i;for (i = 0; i <= 3; i + +){
pid=fork();if (pid == 0 && i > 2) exit(0);
}exit(0);}
[A] 16
[B] 9
[C] 8
[D] 10
domanda N. 4:
Sia dato il seguente insieme di processi:
TA TC
P1 0 10P2 1 8P3 4 3P4 9 2P5 12 4
dove TA e il tempo di arrivo nella coda dei processi pronti e TC e il tempo di utilizzo della CPU.Utilizzando l’algoritmo di scheduling dello Shortest Job First con prelazione, si determini iltempo medio di esecuzione.
[A] 10.2
[B] 9.8
[C] 10.0
[D] 10.4
domanda N. 5:
183
Sia dato il seguente insieme di processi:
TA TC
P1 0 3P2 1 5P3 3 7P4 8 5P5 10 6
dove TA e il tempo di arrivo nella coda dei processi pronti e TC e il tempo di utilizzo della CPU.Utilizzando l’algoritmo di scheduling Round Robin con quanto di tempo q = 2, si determini iltempo medio di esecuzione.
[A] 14.2
[B] 13.8
[C] 13.6
[D] 14
domanda N. 6:
Siano dati tre processi che condividono una variabile x e i cui pseudo codici sono di seguitoriportati:
P1 P2 P3
wait(R) wait(S) wait(T)x = -x; x = x-1; x = x+1;signal(S); if (x > 0) then signal(R);wait(R); x = x-1; wait(T);x = -x; signal(T); print x;signal(T); else
signal(R);endif
Si determini l’output del processo P3 supponendo che inizialmente x = 1 e i tre semaforibinari siano inizializzati rispettivamente S = 0, R = 0, T = 1.
[A] 4
[B] 5
[C] 6
[D] 3
domanda N. 7:
Si determini la veridicita’ delle seguenti affermazioni:
184
a) Nessuna delle principali strategie di allocazione contigua della memoria con partizionivariabili (strategia first fit, strategia best-fit e strategia worst-fit) comporta problemi diframmentazione interna.
b) Il principale svantaggio della strategia first fit rispetto alle altre due strategie di allocazionecontigua della memoria e il maggiore overhead.
[A] entrambe vere
[B] a) vera ; b) falsa
[C] a) falsa ; b) vera
[D] entrambe false
domanda N. 8:
Sia data una memoria di 32MByte gestita mediante paginazione con frame di 512 KByte e sisupponga che il sistema operativo richieda 6 MByte. Si calcoli la dimensione della memoriaeffettivamente ancora utilizzabile dopo l’allocazione di 5 processi rispettivamente di 2530,1840, 785, 3421, 2013 KByte.
[A] 21540 KByte
[B] 15360 KByte
[C] 19456 KByte
[D] 17408 KByte
domanda N. 9:
Si consideri un sistema con paginazione su due livelli. Per un processo che richiede 16 pagine,di seguito si riportano la tabella delle pagine di primo livello (P ′) e le 4 tabelle di secondolivello (P”0, P”1, P”2 e P”3), le quali hanno rispettivamente indirizzo iniziale 8192, 8704,9216 e 9728:
P ′
0 8192
1 8704
2 9216
3 9728
P”0
0 0
1 512
2 1024
3 1536
P”1
0 2048
1 2560
2 3072
3 3584
P”2
0 4096
1 4608
2 5120
3 5632
P”3
0 6144
1 6656
2 7168
3 7680
Si determini l’indirizzo fisico corrispondente all’indirizzo logico < 2, 0, 85 >
[A] 4181
[B] 890
185
[C] 3671
[D] 4693
domanda N. 10:
Si consideri un sistema operativo con paginazione su richiesta basato sull’algoritmo First InFirst Out (FIFO), che assegna ad ogni processo 3 frame di 512 Byte e che richiede 2 Byte perla memorizzazione di un intero. Ponendo attenzione solo agli array A, B e C, e ricordando cheil linguaggio C memorizza gli array 2-dimensionali per righe, si determini il numero di pagefaults del seguente frammento di codice C. ...int A[2][512], B[2][256], C[512];...N=256;for (i=0; i<2; i++){
for (j=0; j<N; j++){C[i*N+j] = A[i][2*j] + B[i][j];
} }
[A] 12
[B] 8
[C] 10
[D] 11
domanda N. 11:
Si consideri un sistema operativo con paginazione su richiesta basato sull’algoritmo First InFirst Out con seconda chance, che assegna ad ogni processo 5 frame. Se determini il numerodi page faults per la squenza di riferimenti alle pagine:
2, 3, 4, 2, 5, 6, 3, 1, 4, 2, 5, 2, 4, 6, 3
[A] 10
[B] 9
[C] 8
[D] 7
domanda N. 12:
Sia dato un disco con 200 tracce e velocita di seek di 1 traccia per ms. All’istante t=0 il
186
sistema operativo sta servendo una richiesta sulla traccia 50 e in coda ci sono richieste per letracce (58; 15; 23; 25; 65; 55). Successivamente arrivano altre richieste all’istante t=7 per latraccia 49 e all’istante t=50 per la traccia 57. Si calcoli il tempo di ricerca complessivo perservire tutte le richieste secondo la politica Shortest Seek Time First (SSTF), trascurando lalatenza rotazionale e il tempo di trasferimento.
[A] 98
[B] 107
[C] 65
[D] 117
domanda N. 13:
Si determini la veridicita’ delle seguenti affermazioni:
a) Un problema frequente nell’algoritmo First Come First Served (FCFS) di scheduling deldisco e la posticipazione indefinita di alcune richieste di servizio.
b) La latenza rotazionale e identica per ogni accesso al disco.
[A] entrambe vere
[B] entrambe false
[C] a) vera ; b) falsa
[D] a) falsa ; b) vera
domanda N. 14:
Si consideri un disco che opera a 12000 rpm (giri al minuto), dove ogni traccia e composta da80 settori di 512 bytes ognuno. Si determini la velocita di trasferimento necessaria per poterleggere o scrivere una traccia intera durante una rotazione del disco.
[A] circa 19200 KB/sec
[B] circa 8000 KB/sec
[C] circa 16000 KB/sec
[D] circa 9600 KB/sec
domanda N. 15:
Si determini la veridicita’ delle seguenti affermazioni:
187
a) Rispetto allo schema di allocazione dei file con lista concatenata, il principale vantaggiodella allocazione indicizzata dei file in un file system e la possibilita di effettuare laricerca nel solo blocco indice, migliorando enormemente i tempi di attraversamento delfile.
b) Lo schema di gestione dei blocchi liberi basato sulla bitmap introduce sempre un minorsovraccarico di memoria rispetto alla lista dei blocchi liberi, poiche mediante la bitmapviene utilizzato un solo bit per blocco, mentre la lista richiede l’indice del blocco chepuo’ essere grande 16 o 32 bit.
[A] entrambe vere
[B] a) falsa ; b) vera
[C] entrambe false
[D] a) vera ; b) falsa
domanda N. 16:
Sia dato un file system che gestisca blocchi da 256 byte e indirizzi da 32 bit mediante unaallocazione indicizzata dei file. Si calcoli la dimensione massima di un file per questo filesystem supponendo che i blocchi indice contengono:
• 7 puntatori diretti a blocchi di dati
• 3 puntatori indiretti a blocchi di dati
[A] 50944 byte
[B] 266240 byte
[C] 330240 byte
[D] 67584 byte
domanda N. 17:
Si determini la veridicita delle seguenti affermazioni:
a) Si consideri un file formato da 100 record allocato su disco in forma indicizzata dove irecord del file sono memorizzati uno per blocco e il file descriptor e gia in memoriacentrale. Se non e stato fatto ancora nessun accesso al file, allora per cancellare il 50-morecord e necessario 1 accesso in lettura e 1 in scrittura.
b) Si consideri un file formato da 100 record allocato su disco in forma contigua dove i recorddel file sono memorizzati uno per blocco e il file descriptor e gia in memoria centrale. Sel’ultimo record letto e’ il record 10 allora per cancellare il 75-mo record sono necessari25 accessi in lettura e 1 in scrittura.
188
[A] a) falsa ; b) vera
[B] entrambe vere
[C] a) vera ; b) falsa
[D] entrambe false
189
================================================== compito N. 22 del 110609 ==========
=========================================
SVOLTO DA MATRICOLA
domanda 1
domanda 2
domanda 3
domanda 4
domanda 5
domanda 6
domanda 7
domanda 8
domanda 9
domanda 10
domanda 11
domanda 12
domanda 13
domanda 14
domanda 15
domanda 16
domanda 17
• 1.5 punti per ogni risposta esatta
• 0 punti per ogni risposta non data
• 0.5 punti di penalita’ per ogni risposta errata
FIRMA
190
============================================ CORSO DI SISTEMI OPERTIVI mod.A (gr. 1) ============ compito N. 23 del 110609 ==========
=========================================
domanda N. 1:
Si determini la veridicita’ delle seguenti affermazioni:
a) L’ordine delle attivita’ di un sistema operativo e’ determinato da eventi che possono esseregenerati da dispositivi hardware, da errori in un programma in esecuzione oppure da unarichiesta specifica di un programma che intende accedere ai servizi del sistema operativostesso mediante chiamate di sistema.
b) Le routine di servizio relative ai differenti eventi di cui alla affermazione a) sono eseguitesempre in modalita’ sistema, anche nel caso di programmi utente che intendono accedereai servizi del sistema operativo attraverso le chiamate di sistema.
[A] entrambe false
[B] a) vera ; b) falsa
[C] entrambe vere
[D] a) falsa ; b) vera
domanda N. 2:
Si determini la veridicita’ delle seguenti affermazioni:
a) Uno svantaggio nell’uso dei threads rispetto all’uso di piu processi cooperanti che comuni-cano attraverso una memoria condivisa e la necessita della sincronizzazione.
b) Il meccanismo piu utilizzato dai sistemi operativi di tipo generale per impedire che unprocesso possa monopolizzare l’uso della CPU , consiste nell’assegnare ai processi untempo massimo di utilizzo continuativo della CPU, scaduto il quale il processo vienesospeso.
[A] a) falsa ; b) vera
[B] a) vera ; b) falsa
[C] entrambe false
[D] entrambe vere
191
domanda N. 3:
Si determini il numero di processi generati (compreso quello mandato in esecuzione dalla lineadi comando) dal seguente codice C, compilato e fatto eseguire su un sistema con il sistemaoperativo Unix:main(){int pid, i;for (i = 0; i <= 3; i + +){
pid=fork();if (pid == 0 && i > 1) exit(0);
}exit(0);}
[A] 12
[B] 9
[C] 8
[D] 10
domanda N. 4:
Sia dato il seguente insieme di processi:
TA TC
P1 0 8P2 0 2P3 3 4P4 5 6P5 9 2
dove TA e il tempo di arrivo nella coda dei processi pronti e TC e il tempo di utilizzo della CPU.Utilizzando l’algoritmo di scheduling dello Shortest Job First con prelazione, si determini iltempo medio di esecuzione.
[A] 7.5
[B] 8.5
[C] 7
[D] 8
192
domanda N. 5:
Sia dato il seguente insieme di processi:
TA TC
P1 0 10P2 3 6P3 5 6P4 9 4P5 13 2
dove TA e il tempo di arrivo nella coda dei processi pronti e TC e il tempo di utilizzo della CPU.Utilizzando l’algoritmo di scheduling Round Robin con quanto di tempo q = 2, si determini iltempo medio di esecuzione.
[A] 18.0
[B] 18.4
[C] 18.8
[D] 17.6
domanda N. 6:
Siano dati tre processi che condividono una variabile x e i cui pseudo codici sono di seguitoriportati:
P1 P2 P3
wait(R) wait(S) wait(T)x = x+2; x = x*2; x = x+1;if (x > 0) then signal(T); signal(S);
x = -1; wait(S); wait(T)endif x = -x; x = x+1print x; signal(R); signal(S);
Si determini l’output del processo P1 supponendo che inizialmente x = 1 e i tre semaforibinari siano inizializzati rispettivamente R = 0, S = 0, T = 1.
[A] -3
[B] -4
[C] -2
[D] -1
domanda N. 7:
Si determini la veridicita’ delle seguenti affermazioni:
193
a) Con il termine di memoria virtuale si intende tutta la memoria disponibile in un calcolatore,composta cioe della memoria centrale e da tutta la memoria secondaria.
b) Il dispositivo che effettua la traduzione degli indirizzi virtuali in indirizzi fisici e chiamatoMemory Manager Unit.
[A] a) vera ; b) falsa
[B] entrambe false
[C] entrambe vere
[D] a) falsa ; b) vera
domanda N. 8:
Sia data una memoria di 32MByte gestita mediante paginazione con frame di 512 KByte e sisupponga che il sistema operativo richieda 6 MByte. Si calcoli la dimensione della memoriaeffettivamente ancora utilizzabile dopo l’allocazione di 5 processi rispettivamente di 2530,1840, 785, 3421, 2013 KByte.
[A] 17408 KByte
[B] 21540 KByte
[C] 15360 KByte
[D] 19456 KByte
domanda N. 9:
Si consideri un sistema con paginazione su due livelli. Per un processo che richiede 16 pagine,di seguito si riportano la tabella delle pagine di primo livello (P ′) e le 4 tabelle di secondolivello (P”0, P”1, P”2 e P”3), le quali hanno rispettivamente indirizzo iniziale 8192, 8704,9216 e 9728:
P ′
0 8192
1 8704
2 9216
3 9728
P”0
0 0
1 512
2 1024
3 1536
P”1
0 2048
1 2560
2 3072
3 3584
P”2
0 4096
1 4608
2 5120
3 5632
P”3
0 6144
1 6656
2 7168
3 7680
Si determini l’indirizzo fisico corrispondente all’indirizzo logico < 0, 3, 408 >
[A] 6267
[B] 4731
[C] 1944
194
[D] 7803
domanda N. 10:
Si consideri un sistema operativo con paginazione su richiesta basato sull’algoritmo First InFirst Out (FIFO), che assegna ad ogni processo 3 frame di 512 Byte e che richiede 2 Byte perla memorizzazione di un intero. Ponendo attenzione solo agli array A, B e C, e ricordando cheil linguaggio C memorizza gli array 2-dimensionali per righe, si determini il numero di pagefaults del seguente frammento di codice C. ...int A[2][512], B[512], C[512];...N=512;for (i=0; i<2; i++){
for (j=0; j<N; j++){B[j/2 + i*256] = A[i][j] + C[j];
} }
[A] 11
[B] 10
[C] 12
[D] 8
domanda N. 11:
Si consideri un sistema operativo con paginazione su richiesta basato sull’algoritmo del Work-ing Set con dimensione della finestra di osservazione w = 6. Si determini, a partire dall’istantet = 6, il minimo e massimo numero di frame che il sistema assegna ad un processo di 6 pagineche vengono referenziate nel seguente ordine:
1, 4, 2, 1, 2, 4, 1, 6, 2, 1, 6, 6, 1, 6, 1, 5, 3, 5, 1, 6, 4, 3, 5, 4, 4
[A] min=3, max=5
[B] min=2, max=4
[C] min=3, max=4
[D] min=2, max=5
domanda N. 12:
Sia dato un disco con 200 tracce e velocita di seek di 1 traccia per ms. All’istante t=0 ilsistema operativo sta servendo una richiesta sulla traccia 70 e in coda ci sono richieste per le
195
tracce (55; 62; 65; 95; 97; 105). Successivamente arrivano altre richieste all’istante t=7 per latraccia 71 e all’istante t=50 per la traccia 63. Si calcoli il tempo di ricerca complessivo in msper servire tutte le richieste secondo la politica Shortest Seek Time First (SSTF), trascurandola latenza rotazionale e il tempo di trasferimento.
[A] 107
[B] 97
[C] 65
[D] 121
domanda N. 13:
Si determini la veridicita’ delle seguenti affermazioni:
a) Le tecniche di ottimizzazione rotazionale del disco hanno avuto una importanza crescentenegli ultimi anni perche i moderni dischi rigidi esibiscono tempi di seek e latenze mediedello stesso ordine di grandezza.
b) Il livello RAID 1 e il migliore per ambienti in cui l’affidabilita ha una priorita superiore alcosto o alle prestazioni.
[A] entrambe vere
[B] entrambe false
[C] a) vera ; b) falsa
[D] a) falsa ; b) vera
domanda N. 14:
Si consideri un disco che opera a 12000 rpm (giri al minuto), dove ogni traccia e composta da160 settori di 1024 byte ognuno. Si determini la velocita di trasferimento necessaria per poterleggere o scrivere una traccia intera durante una rotazione del disco.
[A] circa 16000 KB/sec
[B] circa 9600 KB/sec
[C] circa 8000 KB/sec
[D] circa 32000 KB/sec
domanda N. 15:
Si determini la veridicita’ delle seguenti affermazioni:
196
a) Lo schema di allocazione basato sulla File Allocation Table (FAT) di Microsoft e unoschema che, con poca richiesta di memoria (necessaria solo per la tabella) e con pochiacccessi al disco assicura una gestione efficiente del file system anche se di grandi di-mensioni. Per tale motivo e ancora alla base di tutti i file system dei sistemi operativiMicrosoft.
b) Se il numero di blocchi usati in un file system e molto elevato, la memoria richiesta perla gestione dei blocchi liberi mediante lista concatenata puo essere inferiore a quellarichiesta dalla bitmap, nonostante quest’ultima usi solo un bit per blocco.
[A] a) vera ; b) falsa
[B] entrambe false
[C] a) falsa ; b) vera
[D] entrambe vere
domanda N. 16:
Sia dato un file system che gestisca blocchi da 256 byte e indirizzi da 32 bit mediante unaallocazione indicizzata dei file. Si calcoli la dimensione massima di un file per questo filesystem supponendo che i blocchi indice contengono:
• 7 puntatori diretti a blocchi di dati
• 3 puntatori indiretti a blocchi di dati
[A] 330240 byte
[B] 67584 byte
[C] 50944 byte
[D] 266240 byte
domanda N. 17:
Si determini la veridicita delle seguenti affermazioni:
a) Si consideri un file formato da 100 record allocato su disco in forma concatenata dovei record del file sono memorizzati uno per blocco e il file descriptor e gia in memoriacentrale. Se l’ultimo record letto e’ il record 25, allora per cancellare il 60-mo recordsono necessari 35 accessi in lettura e 35 in scrittura.
b) Si consideri un file formato da 100 record allocato su disco in forma contigua dove i recorddel file sono memorizzati uno per blocco e il file descriptor e gia in memoria centrale. Sel’ultimo record letto e’ il record 10 allora per cancellare il 60-mo record sono necessari40 accessi in lettura e 1 in scrittura.
197
[A] entrambe false
[B] a) falsa ; b) vera
[C] a) vera ; b) falsa
[D] entrambe vere
198
================================================== compito N. 23 del 110609 ==========
=========================================
SVOLTO DA MATRICOLA
domanda 1
domanda 2
domanda 3
domanda 4
domanda 5
domanda 6
domanda 7
domanda 8
domanda 9
domanda 10
domanda 11
domanda 12
domanda 13
domanda 14
domanda 15
domanda 16
domanda 17
• 1.5 punti per ogni risposta esatta
• 0 punti per ogni risposta non data
• 0.5 punti di penalita’ per ogni risposta errata
FIRMA
199
============================================ CORSO DI SISTEMI OPERTIVI mod.A (gr. 1) ============ compito N. 24 del 110609 ==========
=========================================
domanda N. 1:
Si determini la veridicita’ delle seguenti affermazioni:
a) I seguenti sono tutti nomi di sistemi operativi realmente esistiti: Unix, MS-DOS, Solaris,Multics, CTSS, Minix, MacOS, Xenix.
b) Il modulo del sistema operativo che si occupa di determinare quando e per quanto tempoun processo deve accedere alla CPU e chiamato Interprocessor Communication Manager.
[A] a) falsa ; b) vera
[B] entrambe vere
[C] entrambe false
[D] a) vera ; b) falsa
domanda N. 2:
Si determini la veridicita’ delle seguenti affermazioni:
a) Il Cambio di contesto (detto anche Context Switch) e l’insieme delle operazioni necessariead arrestare l’esecuzione di un processo P1 running e iniziare l’esecuzione di un processoP2 ready. A tal fine il kernel deve prima memorizzare nel Process Control Block di P1 ilrelativo contesto di esecuzione e caricare dal Process Control Block di P2 il contesto delprocesso che deve andare in esecuzione.
b) Un cambio di contesto eseguito troppo frequentemente puo’ deteriorare la performancecomplessiva del sistema. Nonostante cio tale operazione e una operazione sempre pre-sente in tutti i sistemi operativi con multiprogrammazione.
[A] a) falsa ; b) vera
[B] entrambe false
[C] a) vera ; b) falsa
[D] entrambe vere
domanda N. 3:
Si determini il numero di processi generati (compreso quello mandato in esecuzione dalla linea
200
di comando) dal seguente codice C, compilato e fatto eseguire su un sistema con il sistemaoperativo Unix:main(){int pid, i;for (i = 0; i <= 3; i + +){
pid=fork();if (pid == 0 && i > 2) exit(0);
}exit(0);}
[A] 16
[B] 9
[C] 8
[D] 10
domanda N. 4:
Sia dato il seguente insieme di processi:
TA TC
P1 0 8P2 0 2P3 3 4P4 5 6P5 9 2
dove TA e il tempo di arrivo nella coda dei processi pronti e TC e il tempo di utilizzo della CPU.Utilizzando l’algoritmo di scheduling dello Shortest Job First con prelazione, si determini iltempo medio di esecuzione.
[A] 7
[B] 8
[C] 7.5
[D] 8.5
domanda N. 5:
201
Sia dato il seguente insieme di processi:
TA TC
P1 0 3P2 1 5P3 3 7P4 8 5P5 10 6
dove TA e il tempo di arrivo nella coda dei processi pronti e TC e il tempo di utilizzo della CPU.Utilizzando l’algoritmo di scheduling Round Robin con quanto di tempo q = 2, si determini iltempo medio di esecuzione.
[A] 13.6
[B] 14
[C] 14.2
[D] 13.8
domanda N. 6:
Siano dati tre processi che condividono una variabile x e i cui pseudo codici sono di seguitoriportati:
P1 P2 P3
wait(R) wait(S) wait(T)x = -x; x = x-1; x = x+1;signal(S); if (x > 0) then signal(R);wait(R); x = x-1; wait(T);x = -x; signal(T); print x;signal(T); else
signal(R);endif
Si determini l’output del processo P3 supponendo che inizialmente x = 1 e i tre semaforibinari siano inizializzati rispettivamente S = 0, R = 0, T = 1.
[A] 5
[B] 6
[C] 3
[D] 4
domanda N. 7:
Si determini la veridicita’ delle seguenti affermazioni:
202
a) Il principale vantaggio dell’introduzione dei meccanismi di memoria virtuale (sia paginatache segmentata) e l’eliminazione del problema della frammentazione.
b) Si consideri un sistema con memoria virtuale che rappresenti un indirizzo virtuale v medi-ante la coppia (b, d) usando 32 bit. Se il numero di pagina b e specificato usando n = 20bit, allora la dimensione delle pagine e di 4096 byte.
[A] entrambe vere
[B] a) falsa ; b) vera
[C] a) vera ; b) falsa
[D] entrambe false
domanda N. 8:
Sia data una memoria di 32MByte gestita mediante paginazione con frame di 512 KByte e sisupponga che il sistema operativo richieda 6 MByte. Si calcoli la dimensione della memoriaeffettivamente ancora utilizzabile dopo l’allocazione di 5 processi rispettivamente di 2530,1840, 785, 3421, 2013 KByte.
[A] 15360 KByte
[B] 19456 KByte
[C] 17408 KByte
[D] 21540 KByte
domanda N. 9:
Si consideri un sistema con paginazione su due livelli. Per un processo che richiede 16 pagine,ognuna di 512 byte, di seguito si riportano la tabella delle pagine di primo livello (P ′) e le4 tabelle di secondo livello (P”0, P”1, P”2 e P”3), le quali hanno rispettivamente indirizzofisico iniziale 0, 512, 1024 e 1536:
P ′
0 0
1 512
2 1024
3 1536
P”0
0 8192
1 11776
2 5120
3 14336
P”1
0 10752
1 7680
2 3072
3 6144
P”2
0 5632
1 10240
2 13824
3 11264
P”3
0 9216
1 3584
2 12800
3 14848
Si determini quale indirizzo fisico, tra quelli proposti, non appartiene allo spazio di indirizza-mento del processo.
[A] 3586
[B] 15361
203
[C] 7682
[D] 8194
domanda N. 10:
Si consideri un sistema operativo con paginazione su richiesta basato sull’algoritmo First InFirst Out (FIFO), che assegna ad ogni processo 3 frame di 512 Byte e che richiede 2 Byte perla memorizzazione di un intero. Ponendo attenzione solo agli array A, B e C, e ricordando cheil linguaggio C memorizza gli array 2-dimensionali per righe, si determini il numero di pagefaults del seguente frammento di codice C. ...int A[2][512], B[512], C[512];...N=512;for (i=0; i<2; i++){
for (j=0; j<N; j++){B[j/2 + i*256] = A[i][j] + C[j];
} }
[A] 12
[B] 8
[C] 11
[D] 10
domanda N. 11:
Si consideri un sistema operativo con paginazione su richiesta basato sull’algoritmo First InFirst Out con seconda chance, che assegna ad ogni processo 5 frame. Se determini il numerodi page faults per la squenza di riferimenti alle pagine:
7, 6, 5, 7, 4, 3, 6, 2, 1, 7, 6, 3, 5, 4, 7
[A] 9
[B] 8
[C] 10
[D] 7
domanda N. 12:
Sia dato un disco con 200 tracce e velocita di seek di 1 traccia per ms. All’istante t=0 il
204
sistema operativo sta servendo una richiesta sulla traccia 100 e in coda ci sono richieste per letracce (40; 65; 90; 120; 145; 125). Successivamente arrivano altre richieste all’istante t=30 perla traccia 95 e all’istante t=135 per la traccia 100. Si calcoli il tempo di ricerca complessivoper servire tutte le richieste secondo la politica Shortest Seek Time First (SSTF), trascurandola latenza rotazionale e il tempo di trasferimento.
[A] 210
[B] 165
[C] 215
[D] 185
domanda N. 13:
Si determini la veridicita’ delle seguenti affermazioni:
a) Un problema frequente nell’algoritmo First Come First Served (FCFS) di scheduling deldisco e la posticipazione indefinita di alcune richieste di servizio.
b) La latenza rotazionale e identica per ogni accesso al disco.
[A] entrambe vere
[B] entrambe false
[C] a) vera ; b) falsa
[D] a) falsa ; b) vera
domanda N. 14:
Si consideri un disco che opera a 12000 rpm (giri al minuto), dove ogni traccia e composta da160 settori di 512 bytes ognuno. Si determini la velocita di trasferimento necessaria per poterleggere o scrivere una traccia intera durante una rotazione del disco.
[A] circa 19200 KB/sec
[B] circa 16000 KB/sec
[C] circa 9600 KB/sec
[D] circa 8000 KB/sec
domanda N. 15:
Si determini la veridicita’ delle seguenti affermazioni:
205
a) Per motivi di efficienza, la lista dei blocchi liberi e generalmente ordinata secondo l’indicedel blocco.
b) I principali compiti di un file system sono: gestire le strutture logiche del file system(directory e file), organizzare i file in blocchi e gestirne l’allocazione, verificare l’integritadei dati, gestire lo spazio libero e verificare che i dati nei file non contengano errori.
[A] a) vera ; b) falsa
[B] entrambe vere
[C] a) falsa ; b) vera
[D] entrambe false
domanda N. 16:
Sia dato un file system di 8 MB che gestisca i file mediante allocazione tabellare (ad es. unaFile Allocation Table). Si determini la dimensione della tabella nel caso in cui i blocchi deldisco siano di 1024 byte.
[A] 12 KB
[B] 104 KB
[C] 64 KB
[D] 13 KB
domanda N. 17:
Si determini la veridicita delle seguenti affermazioni:
a) Si consideri un file formato da 100 record allocato su disco in forma indicizzata dove irecord del file sono memorizzati uno per blocco e il file descriptor e gia in memoriacentrale. Se non e stato fatto ancora nessun accesso al file, allora per cancellare il 60-morecord sono necessari 35 accessi in lettura e 1 in scrittura.
b) Si consideri un file formato da 100 record allocato su disco in forma contigua dove i recorddel file sono memorizzati uno per blocco e il file descriptor e gia in memoria centrale. Sel’ultimo record letto e’ il record 10 allora per cancellare il 60-mo record sono necessari40 accessi in lettura e 40 in scrittura.
[A] a) vera ; b) falsa
[B] entrambe vere
[C] entrambe false
[D] a) falsa ; b) vera
206
================================================== compito N. 24 del 110609 ==========
=========================================
SVOLTO DA MATRICOLA
domanda 1
domanda 2
domanda 3
domanda 4
domanda 5
domanda 6
domanda 7
domanda 8
domanda 9
domanda 10
domanda 11
domanda 12
domanda 13
domanda 14
domanda 15
domanda 16
domanda 17
• 1.5 punti per ogni risposta esatta
• 0 punti per ogni risposta non data
• 0.5 punti di penalita’ per ogni risposta errata
FIRMA
207
============================================ CORSO DI SISTEMI OPERTIVI mod.A (gr. 1) ============ compito N. 25 del 110609 ==========
=========================================
domanda N. 1:
Si determini la veridicita’ delle seguenti affermazioni:
a) Uno dei principali vantaggi dei sistemi operativi con architettura monolitica e’ l’efficienza.Tale approccio, e oggi comunque poco utilizzato in quanto la complessita dei modernisistemi operativi lo rende poco praticabile.
b) Uno degli svantaggi delle macchine virtuali e’ la loro difficile realizzazione in quanto edifficile ottenere una replica della macchina fisica sottostante con strumenti software.
[A] a) falsa ; b) vera
[B] entrambe false
[C] a) vera ; b) falsa
[D] entrambe vere
domanda N. 2:
Si determini la veridicita’ delle seguenti affermazioni:
a) In ogni sistema operativo e presente una tabella (chiamata tabella dei processi o ProcessControl Block = PCB) che tiene traccia di tutti i processi in esecuzione. In tale tabellae memorizzato per ogni processo in esecuzione un identificativo di processo (pid), unpuntatore alla memoria dove sono stati memorizzati il codice e l’area dati, nonche’ tuttele informazioni necessarie per effettuare correttamente il cambio di contesto.
b) Pur avendo alcuni campi sempre presenti in tutti i sistemi operativi, la struttura generaledel PCB dipende dalla implementazione del sistema operativo.
[A] entrambe false
[B] entrambe vere
[C] a) falsa ; b) vera
[D] a) vera ; b) falsa
domanda N. 3:
Si determini il numero di processi generati (compreso quello mandato in esecuzione dalla linea
208
di comando) dal seguente codice C, compilato e fatto eseguire su un sistema con il sistemaoperativo Unix:main(){int pid, i;for (i = 0; i <= 3; i + +){
pid=fork();if (pid == 0 && i >= 0) exit(0);
}exit(0);}
[A] 7
[B] 9
[C] 5
[D] 8
domanda N. 4:
Sia dato il seguente insieme di processi:
TA TC
P1 0 8P2 0 2P3 3 4P4 5 6P5 9 2
dove TA e il tempo di arrivo nella coda dei processi pronti e TC e il tempo di utilizzo della CPU.Utilizzando l’algoritmo di scheduling dello Shortest Job First con prelazione, si determini iltempo medio di esecuzione.
[A] 7
[B] 8
[C] 7.5
[D] 8.5
domanda N. 5:
209
Sia dato il seguente insieme di processi:
TA TC
P1 0 8P2 1 4P3 3 6P4 7 2P5 9 2
dove TA e il tempo di arrivo nella coda dei processi pronti e TC e il tempo di utilizzo della CPU.Utilizzando l’algoritmo di scheduling Round Robin con quanto di tempo q = 2, si determini iltempo medio di esecuzione.
[A] 13.0
[B] 12.8
[C] 12.6
[D] 13.2
domanda N. 6:
Siano dati tre processi che condividono una variabile x e i cui pseudo codici sono di seguitoriportati:
P1 P2 P3
wait(R) wait(S) wait(T)x = x-5; x = x+2; x = x+3;signal(T); if(x >= 3)then if(x==1)thenwait(R); signal(R); signal(R);signal(S); else endif
signal(T); wait(T);endifwait(S);signal(T);
Supponendo che i tre semafori binari R, S e T siano inizializzati rispettivamente a R = 0,S = 1 e T = 0, si determini quale valore iniziale della variabile x, tra quelli proposti nellerisposte, non comporti una situazione di stallo per i processi.
[A] x = 0
[B] x = 2
[C] x = 1
[D] x = −1
210
domanda N. 7:
Si determini la veridicita’ delle seguenti affermazioni:
a) In un sistema con memoria virtuale con tabella delle pagine multilivello e possibile indi-rizzare un area di memoria maggiore rispetto a quella indirizzabile con una tradizionaletabella delle pagine ad un solo livello.
b) Si consideri un sistema con memoria virtuale che rappresenti un indirizzo virtuale v me-diante la coppia (b, d) usando 32 bit. Se la dimensione delle pagine e di 8192 byte allorail numero di pagina b e specificato usando n = 20 bit.
[A] a) vera ; b) falsa
[B] entrambe vere
[C] entrambe false
[D] a) falsa ; b) vera
domanda N. 8:
Sia data una memoria di 32MByte gestita mediante paginazione con frame di 512 KByte e sisupponga che il sistema operativo richieda 7 MByte. Si calcoli la dimensione della memoriaeffettivamente ancora utilizzabile dopo l’allocazione di 5 processi rispettivamente di 1229, 341,2831, 1710, 2116 KByte.
[A] 15872 KByte
[B] 15360 KByte
[C] 19456 KByte
[D] 21540 KByte
domanda N. 9:
Si consideri un sistema con paginazione su due livelli. Per un processo che richiede 16 pagine,di seguito si riportano la tabella delle pagine di primo livello (P ′) e le 4 tabelle di secondolivello (P”0, P”1, P”2 e P”3), le quali hanno rispettivamente indirizzo iniziale 8192, 8704,9216 e 9728:
P ′
0 8192
1 8704
2 9216
3 9728
P”0
0 0
1 512
2 1024
3 1536
P”1
0 2048
1 2560
2 3072
3 3584
P”2
0 4096
1 4608
2 5120
3 5632
P”3
0 6144
1 6656
2 7168
3 7680
Si determini l’indirizzo fisico corrispondente all’indirizzo logico < 3, 3, 123 >
211
[A] 7803
[B] 635
[C] 2171
[D] 7291
domanda N. 10:
Si consideri un sistema operativo con paginazione su richiesta basato sull’algoritmo First InFirst Out (FIFO), che assegna ad ogni processo 3 frame di 512 Byte e che richiede 2 Byte perla memorizzazione di un intero. Ponendo attenzione solo agli array A, B e C, e ricordando cheil linguaggio C memorizza gli array 2-dimensionali per righe, si determini il numero di pagefaults del seguente frammento di codice C. ...int A[2][512], B[2][256], C[512];...N=256;for (i=0; i<2; i++){
for (j=0; j<N; j++){C[i*N+j] = A[i][2*j] + B[i][j];
} }
[A] 12
[B] 8
[C] 10
[D] 11
domanda N. 11:
Si consideri un sistema operativo con paginazione su richiesta basato sull’algoritmo First InFirst Out con seconda chance, che assegna ad ogni processo 5 frame. Se determini il numerodi page faults per la squenza di riferimenti alle pagine:
7, 6, 5, 7, 4, 3, 6, 2, 1, 7, 6, 3, 5, 4, 7
[A] 7
[B] 9
[C] 8
[D] 10
212
domanda N. 12:
Sia dato un disco con 200 tracce e velocita di seek di 1 traccia per ms. All’istante t=0il sistema operativo sta servendo una richiesta sulla traccia 100 e in coda ci sono richiesteper le tracce (55; 75; 80; 110; 135; 160). Successivamente arrivano altre richieste all’istantet=30 per la traccia 105 e all’istante t=135 per la traccia 100. Si calcoli il tempo di ricercacomplessivo in ms per servire tutte le richieste secondo la politica Shortest Seek Time First(SSTF), trascurando la latenza rotazionale e il tempo di trasferimento.
[A] 210
[B] 205
[C] 155
[D] 180
domanda N. 13:
Si determini la veridicita’ delle seguenti affermazioni:
a) Il principale motivo per cui l’algoritmo di scheduling del disco Shortest Seek Time First epoco utilizzato nei sistemi di tipo generale e la possibilita di posticipazione indefinita dialcune richieste.
b) Uno dei parametri per la valutazione delle strategie di scheduling del disco e la varianzadei tempi di risposta che e una misura del numero di richieste servite per unita di tempo
[A] entrambe false
[B] a) falsa ; b) vera
[C] entrambe vere
[D] a) vera ; b) falsa
domanda N. 14:
Si calcoli la probabilitaa di perdere i dati con un sistema RAID level 1 con 6 dischi, se il MeanTime to Failure (MTF) e di 1300 giorni e il Mean Time to Repair (MTR) e di 16.9 giorni.
[A] 0.00011
[B] 0.00003
[C] 0.00009
[D] 0.00001
213
domanda N. 15:
Si determini la veridicita’ delle seguenti affermazioni:
a) Un modo per risolvere il problema dei numerosi accessi al disco con lo schema di allocazionedei file a lista concatenata e l’utilizzo di blocchi molto grandi. Con tale modifica si ottieneuno schema senza grossi inconvenienti legati alla gestione del disco, che e utilizzato innumerosi sistemi come, ad esempio, Solaris 2.
b) Uno svantaggio dello schema di allocazione contigua di file in un file system e la frammen-tazione esterna del disco.
[A] a) falsa ; b) vera
[B] a) vera ; b) falsa
[C] entrambe vere
[D] entrambe false
domanda N. 16:
Sia dato un file system che gestisca blocchi da 1024 byte e indirizzi da 32 bit mediante unaallocazione indicizzata dei file. Si calcoli la dimensione massima di un file per questo filesystem supponendo che i blocchi indice contengono:
• 9 puntatori diretti a blocchi di dati
• 1 puntatori indiretti a blocchi di dati
[A] 271360 byte
[B] 50944 byte
[C] 266240 byte
[D] 330240 byte
domanda N. 17:
Si determini la veridicita delle seguenti affermazioni:
a) Si consideri un file formato da 100 record allocato su disco in forma indicizzata dove irecord del file sono memorizzati uno per blocco e il file descriptor e gia in memoriacentrale. Se non e stato fatto ancora nessun accesso al file, allora per cancellare il 50-morecord e necessario 1 accesso in lettura e 1 in scrittura.
214
b) Si consideri un file formato da 100 record allocato su disco in forma contigua dove i recorddel file sono memorizzati uno per blocco e il file descriptor e gia in memoria centrale. Sel’ultimo record letto e’ il record 10 allora per cancellare il 75-mo record sono necessari25 accessi in lettura e 1 in scrittura.
[A] a) falsa ; b) vera
[B] entrambe vere
[C] a) vera ; b) falsa
[D] entrambe false
215
================================================== compito N. 25 del 110609 ==========
=========================================
SVOLTO DA MATRICOLA
domanda 1
domanda 2
domanda 3
domanda 4
domanda 5
domanda 6
domanda 7
domanda 8
domanda 9
domanda 10
domanda 11
domanda 12
domanda 13
domanda 14
domanda 15
domanda 16
domanda 17
• 1.5 punti per ogni risposta esatta
• 0 punti per ogni risposta non data
• 0.5 punti di penalita’ per ogni risposta errata
FIRMA
216
============================================ CORSO DI SISTEMI OPERTIVI mod.A (gr. 1) ============ compito N. 26 del 110609 ==========
=========================================
domanda N. 1:
Si determini la veridicita’ delle seguenti affermazioni:
a) La principale differenza tra un sistema operativo con architettura a strati ed uno con ar-chitettura a microkernel e che nel primo caso e consentita la comunicazione solo tramoduli appartenenti a strati adiacenti, mentre nel secondo caso e consentita la comuni-cazione attraverso tutti i moduli del sistema attraverso il kernel.
b) Per tolleranza ai guasti si intendela capacita di un sisietam operativo di correggere eventualierrori delle applicazioni degli utenti.
[A] a) falsa ; b) vera
[B] entrambe vere
[C] entrambe false
[D] a) vera ; b) falsa
domanda N. 2:
Si determini la veridicita’ delle seguenti affermazioni:
a) Il meccanismo piu utilizzato dai sistemi operativi per impedire che un processo possamonopolizzare l’uso della CPU consiste nell’assegnare ai processi un numero massimo diistruzioni da eseguire.
b) Quando un processo viene rimosso dalla CPU perchee e scaduto il suo quanto di tempo,viene inserito sempre nella coda dei processi in attesa (waiting queue). Il processo vienerimosso da tale coda solo al momento di tornare in esecuzione
[A] entrambe false
[B] a) falsa ; b) vera
[C] a) vera ; b) falsa
[D] entrambe vere
domanda N. 3:
Si determini il numero di processi generati (compreso quello mandato in esecuzione dalla linea
217
di comando) dal seguente codice C, compilato e fatto eseguire su un sistema con il sistemaoperativo Unix:main(){int pid, i;for (i = 0; i <= 3; i + +){
pid=fork();if (pid == 0 && i >= 0) exit(0);
}exit(0);}
[A] 5
[B] 8
[C] 7
[D] 9
domanda N. 4:
Sia dato il seguente insieme di processi:
TA TC P
P1 1 7 2P2 2 5 4P3 6 4 5P4 7 7 1P5 10 2 3
dove TA e il tempo di arrivo nella coda dei processi pronti, TC e il tempo di utilizzo della CPUe P e la priorita (priorita massima = 5). Utilizzando l’algoritmo di scheduling a priorita conprelazione, si determini il tempo medio di esecuzione.
[A] 11
[B] 10.4
[C] 11.2
[D] 10.6
domanda N. 5:
218
Sia dato il seguente insieme di processi:
TA TC
P1 0 7P2 1 7P3 7 7P4 11 3P5 13 2
dove TA e il tempo di arrivo nella coda dei processi pronti e TC e il tempo di utilizzo della CPU.Utilizzando l’algoritmo di scheduling Round Robin con quanto di tempo q = 2, si determini iltempo medio di esecuzione.
[A] 14.4
[B] 14.8
[C] 15
[D] 14.6
domanda N. 6:
Siano dati tre processi che condividono una variabile x e i cui pseudo codici sono di seguitoriportati:
P1 P2 P3
wait(R) wait(S) wait(T)x = x+2; x = x*2; x = x+1;if (x > 0) then signal(T); signal(S);
x = -1; wait(S); wait(T)endif x = -x; x = x+1print x; signal(R); signal(S);
Si determini l’output del processo P1 supponendo che inizialmente x = 1 e i tre semaforibinari siano inizializzati rispettivamente R = 0, S = 0, T = 1.
[A] -2
[B] -1
[C] -3
[D] -4
domanda N. 7:
Si determini la veridicita’ delle seguenti affermazioni:
219
a) Nei moderni sistemi operativi le tecniche di gestione della memoria centrale sono pocoimportanti a causa del basso costo economico delle stesse.
b) Andando dai livelli di memoria piu bassi (dispositivi secondari e terziari) a quelli piu alti(registri e cache), il costo economico per bit aumenta.
[A] entrambe vere
[B] a) vera ; b) falsa
[C] entrambe false
[D] a) falsa ; b) vera
domanda N. 8:
Sia data una memoria di 32MByte gestita mediante paginazione con frame di 512 KByte e sisupponga che il sistema operativo richieda 7 MByte. Si calcoli la dimensione della memoriaeffettivamente ancora utilizzabile dopo l’allocazione di 5 processi rispettivamente di 2343,1724, 489, 1270, 2110 KByte.
[A] 16384 KByte
[B] 15360 KByte
[C] 19456 KByte
[D] 21504 KByte
domanda N. 9:
Si consideri un sistema con paginazione su due livelli. Per un processo che richiede 16 pagine,di seguito si riportano la tabella delle pagine di primo livello (P ′) e le 4 tabelle di secondolivello (P”0, P”1, P”2 e P”3), le quali hanno rispettivamente indirizzo iniziale 8192, 8704,9216 e 9728:
P ′
0 8192
1 8704
2 9216
3 9728
P”0
0 0
1 512
2 1024
3 1536
P”1
0 2048
1 2560
2 3072
3 3584
P”2
0 4096
1 4608
2 5120
3 5632
P”3
0 6144
1 6656
2 7168
3 7680
Si determini l’indirizzo fisico corrispondente all’indirizzo logico < 0, 3, 408 >
[A] 1944
[B] 7803
[C] 6267
220
[D] 4731
domanda N. 10:
Si consideri un sistema operativo con paginazione su richiesta basato sull’algoritmo First InFirst Out (FIFO), che assegna ad ogni processo 3 frame di 512 Byte e che richiede 2 Byte perla memorizzazione di un intero. Ponendo attenzione solo agli array A, B e C, e ricordando cheil linguaggio C memorizza gli array 2-dimensionali per righe, si determini il numero di pagefaults del seguente frammento di codice C. ...int A[2][512], B[2][256], C[512];...N=256;for (i=0; i<2; i++){
for (j=0; j<N; j++){C[i*N+j] = A[i][2*j] + B[i][j];
} }
[A] 10
[B] 11
[C] 12
[D] 8
domanda N. 11:
Si consideri un sistema operativo con paginazione su richiesta basato sull’algoritmo First InFirst Out con seconda chance, che assegna ad ogni processo 5 frame. Se determini il numerodi page faults per la squenza di riferimenti alle pagine:
5, 4, 3, 5, 2, 1, 4, 6, 3, 5, 2, 5, 3, 1, 2
[A] 9
[B] 10
[C] 8
[D] 7
domanda N. 12:
Sia dato un disco con 200 tracce e velocita di seek di 1 traccia per ms. All’istante t=0il sistema operativo sta servendo una richiesta sulla traccia 100 e in coda ci sono richiesteper le tracce (55; 75; 80; 110; 135; 160). Successivamente arrivano altre richieste all’istante
221
t=30 per la traccia 105 e all’istante t=135 per la traccia 100. Si calcoli il tempo di ricercacomplessivo in ms per servire tutte le richieste secondo la politica Shortest Seek Time First(SSTF), trascurando la latenza rotazionale e il tempo di trasferimento.
[A] 180
[B] 210
[C] 205
[D] 155
domanda N. 13:
Si determini la veridicita’ delle seguenti affermazioni:
a) Il principale problema dei livelli 3 e 4 dei sistemi RAID che li rende meno preferibili rispettoal livello 5 e la necessita della generazione della parita, che comporta un supplemento dioverhead.
b) Utilizzando un disco con 7 ms di tempo di seek, 10 msec di latenza media rotazionale etempo di trasferimento di 20 msec, il tempo necessario per trasferire in memoria centraleun file composto da 15 blocchi, distanti mediamente 10 tracce, e di 1.5 secondi esatti.
[A] entrambe vere
[B] a) falsa ; b) vera
[C] a) vera ; b) falsa
[D] entrambe false
domanda N. 14:
Si calcoli la probabilitaa di perdere i dati con un sistema RAID level 5 con 5 dischi, se il MeanTime to Failure (MTF) e di 1600 giorni e il Mean Time to Repair (MTR) e di 23.04 giorni.
[A] 0.0002
[B] 0.00003
[C] 0.00011
[D] 0.00009
domanda N. 15:
Si determini la veridicita’ delle seguenti affermazioni:
222
a) Un modo per risolvere il problema dei numerosi accessi al disco con lo schema di allocazionedei file a lista concatenata e l’utilizzo di blocchi molto grandi. Con tale modifica si ottieneuno schema senza grossi inconvenienti legati alla gestione del disco, che e utilizzato innumerosi sistemi come, ad esempio, Solaris 2.
b) Uno svantaggio dello schema di allocazione contigua di file in un file system e la frammen-tazione esterna del disco.
[A] a) falsa ; b) vera
[B] a) vera ; b) falsa
[C] entrambe vere
[D] entrambe false
domanda N. 16:
Sia dato un file system che gestisca blocchi da 256 byte e indirizzi da 32 bit mediante unaallocazione indicizzata dei file. Si calcoli la dimensione massima di un file per questo filesystem supponendo che i blocchi indice contengono:
• 7 puntatori diretti a blocchi di dati
• 3 puntatori indiretti a blocchi di dati
[A] 67584 byte
[B] 50944 byte
[C] 266240 byte
[D] 330240 byte
domanda N. 17:
Si determini la veridicita delle seguenti affermazioni:
a) Si consideri un file formato da 100 record allocato su disco in forma concatenata dovei record del file sono memorizzati uno per blocco e il file descriptor e gia in memoriacentrale. Se l’ultimo record letto e’ il record 35, allora per cancellare il 60-mo recordsono necessari 25 accessi in lettura e 1 in scrittura.
b) Si consideri un file formato da 100 record allocato su disco in forma contigua dove i recorddel file sono memorizzati uno per blocco e il file descriptor e gia in memoria centrale. Sel’ultimo record letto e’ il record 10 allora per cancellare il 75-mo record sono necessari25 accessi in lettura e 25 in scrittura.
[A] a) falsa ; b) vera
223
[B] entrambe vere
[C] a) vera ; b) falsa
[D] entrambe false
224
================================================== compito N. 26 del 110609 ==========
=========================================
SVOLTO DA MATRICOLA
domanda 1
domanda 2
domanda 3
domanda 4
domanda 5
domanda 6
domanda 7
domanda 8
domanda 9
domanda 10
domanda 11
domanda 12
domanda 13
domanda 14
domanda 15
domanda 16
domanda 17
• 1.5 punti per ogni risposta esatta
• 0 punti per ogni risposta non data
• 0.5 punti di penalita’ per ogni risposta errata
FIRMA
225
============================================ CORSO DI SISTEMI OPERTIVI mod.A (gr. 1) ============ compito N. 27 del 110609 ==========
=========================================
domanda N. 1:
Si determini la veridicita’ delle seguenti affermazioni:
a) Il livello software che contiene le componenti fondamentali di un sistema operativo e’ chiam-ato kernel. Al kernel appartengono i moduli per: la gestione della memoria centrale, ilcontrollo dei processi, la gestione dell’I/O e la gestione della memoria secondaria. Aquesto elenco di componenti fondamentali del kernel va aggiunto solo il sottosistema perla gestione delle interfacce grafiche e per l’interprete del linguaggio di comando.
b) I sistemi operativi hanno lo scopo primario di permettere alle applicazioni software diinteragire con l’hardware sottostante, e di gestire le risorse hardware e software delsistema in maniera efficiente.
[A] entrambe vere
[B] a) falsa ; b) vera
[C] a) vera ; b) falsa
[D] entrambe false
domanda N. 2:
Si determini la veridicita’ delle seguenti affermazioni:
a) L’insieme delle informazioni che caratterizzano un processo in esecuzione e che sono mem-orizzate nel Process Control Block e chiamato contesto. Per tale motivo la proceura chesospende un processo in esecuzione per mandarne un altro e detta cambio di contesto(context switch).
b) Il tempo medio di esecuzione di un insieme di processi di un sistema operativo time sharingdiminuisce sempre quando aumenta la frequenza dei context switch, in quanto i processiin esecuzione si avvicendano piu rapidemente nell’uso della CPU.
[A] entrambe false
[B] a) falsa ; b) vera
[C] entrambe vere
[D] a) vera ; b) falsa
226
domanda N. 3:
Si determini il numero di processi generati (compreso quello mandato in esecuzione dalla lineadi comando) dal seguente codice C, compilato e fatto eseguire su un sistema con il sistemaoperativo Unix:main(){int pid, i;for (i = 0; i <= 3; i + +){
pid=fork();if (pid == 0 && i >= 0) exit(0);
}exit(0);}
[A] 9
[B] 5
[C] 8
[D] 7
domanda N. 4:
Sia dato il seguente insieme di processi:
TA TC P
P1 1 7 2P2 2 5 4P3 6 4 5P4 7 7 1P5 10 2 3
dove TA e il tempo di arrivo nella coda dei processi pronti, TC e il tempo di utilizzo della CPUe P e la priorita (priorita massima = 5). Utilizzando l’algoritmo di scheduling a priorita conprelazione, si determini il tempo medio di esecuzione.
[A] 10.4
[B] 11.2
[C] 10.6
[D] 11
227
domanda N. 5:
Sia dato il seguente insieme di processi:
TA TC
P1 0 10P2 3 6P3 5 6P4 9 4P5 13 2
dove TA e il tempo di arrivo nella coda dei processi pronti e TC e il tempo di utilizzo della CPU.Utilizzando l’algoritmo di scheduling Round Robin con quanto di tempo q = 2, si determini iltempo medio di esecuzione.
[A] 18.0
[B] 18.4
[C] 18.8
[D] 17.6
domanda N. 6:
Siano dati tre processi che condividono una variabile x e i cui pseudo codici sono di seguitoriportati:
P1 P2 P3
wait(R) wait(S) wait(T)x = x+2; x = x*2; x = x+1;if (x > 0) then signal(T); signal(S);
x = -1; wait(S); wait(T)endif x = -x; x = x+1print x; signal(R); signal(S);
Si determini l’output del processo P1 supponendo che inizialmente x = 1 e i tre semaforibinari siano inizializzati rispettivamente R = 0, S = 0, T = 1.
[A] -2
[B] -1
[C] -3
[D] -4
domanda N. 7:
Si determini la veridicita’ delle seguenti affermazioni:
228
a) Nessuna delle principali strategie di allocazione contigua della memoria con partizionivariabili (strategia first fit, strategia best-fit e strategia worst-fit) comporta problemi diframmentazione interna.
b) Il principale svantaggio della strategia first fit rispetto alle altre due strategie di allocazionecontigua della memoria e il maggiore overhead.
[A] entrambe false
[B] entrambe vere
[C] a) vera ; b) falsa
[D] a) falsa ; b) vera
domanda N. 8:
Sia data una memoria di 32MByte gestita mediante paginazione con frame di 512 KByte e sisupponga che il sistema operativo richieda 7 MByte. Si calcoli la dimensione della memoriaeffettivamente ancora utilizzabile dopo l’allocazione di 5 processi rispettivamente di 1229, 341,2831, 1710, 2116 KByte.
[A] 21540 KByte
[B] 15872 KByte
[C] 15360 KByte
[D] 19456 KByte
domanda N. 9:
Si consideri un sistema con paginazione su due livelli. Per un processo che richiede 16 pagine,ognuna di 512 byte, di seguito si riportano la tabella delle pagine di primo livello (P ′) e le4 tabelle di secondo livello (P”0, P”1, P”2 e P”3), le quali hanno rispettivamente indirizzofisico iniziale 0, 512, 1024 e 1536:
P ′
0 0
1 512
2 1024
3 1536
P”0
0 8192
1 11776
2 5120
3 14336
P”1
0 10752
1 7680
2 3072
3 6144
P”2
0 5632
1 10240
2 13824
3 11264
P”3
0 9216
1 3584
2 12800
3 14848
Si determini quale indirizzo fisico, tra quelli proposti, non appartiene allo spazio di indirizza-mento del processo.
[A] 7666
[B] 11266
229
[C] 14338
[D] 3074
domanda N. 10:
Si consideri un sistema operativo con paginazione su richiesta basato sull’algoritmo First InFirst Out (FIFO), che assegna ad ogni processo 3 frame di 512 Byte e che richiede 2 Byte perla memorizzazione di un intero. Ponendo attenzione solo agli array A, B e C, e ricordando cheil linguaggio C memorizza gli array 2-dimensionali per righe, si determini il numero di pagefaults del seguente frammento di codice C. ...int A[512], B[256], C[2][512];...N=256;for (i=0; i<2; i++){
for (j=0; j<N; j++){C[i][2*j] = A[i*N+j] + B[j];
} }
[A] 12
[B] 11
[C] 10
[D] 8
domanda N. 11:
Si consideri un sistema operativo con paginazione su richiesta basato sull’algoritmo First InFirst Out con seconda chance, che assegna ad ogni processo 5 frame. Se determini il numerodi page faults per la squenza di riferimenti alle pagine:
7, 6, 5, 7, 4, 3, 6, 2, 1, 7, 6, 3, 5, 4, 7
[A] 9
[B] 8
[C] 10
[D] 7
domanda N. 12:
Sia dato un disco con 2000 tracce. Una operazione di lettura di un blocco richiede 3 ms
230
per lo spostamento tra due tracce adiacenti, 5 ms per la latenza rotazionale e 10 ms per iltrasferimento di un blocco di dati. Si calcoli il tempo necessario per leggere un file costituitoda 45 blocchi nel caso in cui questi ultimi siano distanti mediamente 15 tracce l’uno dall’altro.
[A] 2.04 sec
[B] 8.44 sec
[C] 2.7 sec
[D] 12.15 sec
domanda N. 13:
Si determini la veridicita’ delle seguenti affermazioni:
a) Con un carico del disco pesante, la politica di scheduling SCAN andrebbe sempre preferitaalla politica C-SCAN a causa dell’overhead del ”ritorno a vuoto” della testina che inquesto caso diventa ancora piu significativo.
b) Il livello RAID con il piu alto overhead di memoria secondaria e il livello 5, a causa dellospazio utilizzato per la gestione delle informazioni relative alla parita.
[A] entrambe false
[B] entrambe vere
[C] a) vera ; b) falsa
[D] a) falsa ; b) vera
domanda N. 14:
Si consideri un disco che opera a 12000 rpm (giri al minuto), dove ogni traccia e composta da160 settori di 1024 byte ognuno. Si determini la velocita di trasferimento necessaria per poterleggere o scrivere una traccia intera durante una rotazione del disco.
[A] circa 8000 KB/sec
[B] circa 32000 KB/sec
[C] circa 16000 KB/sec
[D] circa 9600 KB/sec
domanda N. 15:
Si determini la veridicita’ delle seguenti affermazioni:
231
a) Il principale vantaggio dello schema di allocazione di file con lista concatenata e l’elevataefficienza nella ricerca dei blocchi, poiche sono noti numerosi algoritmi efficienti per lagestione delle liste.
b) La File Allocation Table (FAT) di Microsoft e uno speciale schema di allocazione dei filesu disco che rientra tra le tecniche di allocazione dei file in blocchi contigui.
[A] entrambe false
[B] a) vera ; b) falsa
[C] entrambe vere
[D] a) falsa ; b) vera
domanda N. 16:
Sia dato un file system di 2 MB che gestisca i file mediante allocazione tabellare (ad es. unaFile Allocation Table). Si determini la dimensione della tabella nel caso in cui i blocchi deldisco siano di 1024 byte.
[A] ∼ 2.7 KB
[B] ∼ 6 KB
[C] ∼ 64 KB
[D] ∼ 16 KB
domanda N. 17:
Si determini la veridicita delle seguenti affermazioni:
a) Si consideri un file formato da 100 record allocato su disco in forma contigua dove i recorddel file sono memorizzati uno per blocco e il file descriptor e gia in memoria centrale. Sel’ultimo record letto e’ il record 25 allora per cancellare il 70-mo record sono necessari30 accessi in lettura e 30 in scrittura.
b) Si consideri un file formato da 100 record allocato su disco in forma concatenata dovei record del file sono memorizzati uno per blocco e il file descriptor e gia in memoriacentrale. Se l’ultimo record letto e’ il record 35, allora per cancellare il 75-mo recordsono necessari 40 accessi in lettura e 1 in scrittura.
[A] entrambe false
[B] a) falsa ; b) vera
[C] entrambe vere
[D] a) vera ; b) falsa
232
================================================== compito N. 27 del 110609 ==========
=========================================
SVOLTO DA MATRICOLA
domanda 1
domanda 2
domanda 3
domanda 4
domanda 5
domanda 6
domanda 7
domanda 8
domanda 9
domanda 10
domanda 11
domanda 12
domanda 13
domanda 14
domanda 15
domanda 16
domanda 17
• 1.5 punti per ogni risposta esatta
• 0 punti per ogni risposta non data
• 0.5 punti di penalita’ per ogni risposta errata
FIRMA
233
============================================ CORSO DI SISTEMI OPERTIVI mod.A (gr. 1) ============ compito N. 28 del 110609 ==========
=========================================
domanda N. 1:
Si determini la veridicita’ delle seguenti affermazioni:
a) I seguenti sono tutti nomi di sistemi operativi realmente esistiti: Unix, MS-DOS, Solaris,Multics, CTSS, Minix, MacOS, Xenix.
b) Il modulo del sistema operativo che si occupa di determinare quando e per quanto tempoun processo deve accedere alla CPU e chiamato Interprocessor Communication Manager.
[A] entrambe vere
[B] entrambe false
[C] a) vera ; b) falsa
[D] a) falsa ; b) vera
domanda N. 2:
Si determini la veridicita’ delle seguenti affermazioni:
a) Il sistema operativo accede molto spesso ai Process Control Blocks. Di conseguenza moltiprocessori possiedono un registro hardware che fa riferimento al PCB del processo inesecuzione in modo da facilitare il cambio di contesto.
b) Una delle operazioni che un processo puo’ effettuare quando riceve un segnale e di ignorarlo.Con tale termine si intende la capacita di redirigere il segnale ad un altro processo.
[A] a) vera ; b) falsa
[B] entrambe false
[C] a) falsa ; b) vera
[D] entrambe vere
domanda N. 3:
Si determini il numero di processi generati (compreso quello mandato in esecuzione dalla lineadi comando) dal seguente codice C, compilato e fatto eseguire su un sistema con il sistemaoperativo Unix:
234
main(){int pid, i;for (i = 0; i <= 3; i + +){
pid=fork();if (pid == 0 && i == 1) exit(0);
}exit(0);}
[A] 6
[B] 8
[C] 9
[D] 10
domanda N. 4:
Sia dato il seguente insieme di processi:
TA TC
P1 0 8P2 1 4P3 3 6P4 7 2P5 10 2
dove TA e il tempo di arrivo nella coda dei processi pronti e TC e il tempo di utilizzo della CPU.Utilizzando l’algoritmo di scheduling dello Shortest Job First con prelazione, si determini iltempo medio di esecuzione.
[A] 8.2
[B] 8.0
[C] 8.4
[D] 8.6
domanda N. 5:
Sia dato il seguente insieme di processi:
TA TC
P1 0 7P2 1 7P3 7 7P4 11 3P5 13 2
235
dove TA e il tempo di arrivo nella coda dei processi pronti e TC e il tempo di utilizzo della CPU.Utilizzando l’algoritmo di scheduling Round Robin con quanto di tempo q = 2, si determini iltempo medio di esecuzione.
[A] 15
[B] 14.6
[C] 14.4
[D] 14.8
domanda N. 6:
Siano dati tre processi che condividono una variabile x e i cui pseudo codici sono di seguitoriportati:
P1 P2 P3
wait(R) wait(S) wait(T)x = 2*x; x = x*2; x = x+1;if (x > 0) then signal(T); signal(S);
x = x+1; wait(T)signal(S); x = x-1
else signal(R);x = x-1;signal(T);
endifwait(R);print x;
Si determini l’output del processo P1 supponendo che inizialmente x = −1 e i tre semaforibinari siano inizializzati rispettivamente R = 1, S = 0, T = 0.
[A] 5
[B] 4
[C] -5
[D] -4
domanda N. 7:
Si determini la veridicita’ delle seguenti affermazioni:
a) Il tempo necessario a prelevare un dato dalla memoria in un sistema operativo che usa lamemoria virtuale e lo stesso di un sistema operativo che non ne fa uso.
236
b) Sia dato un processo di 6 pagine, in un sistema che assegna 5 frame ad ogni processo. Sel’esecuzione di tale processo richiede 15 riferimenti in memoria, l’algoritmo di paginazioneFIFO richiede almeno 6 page faults.
[A] entrambe vere
[B] a) vera ; b) falsa
[C] entrambe false
[D] a) falsa ; b) vera
domanda N. 8:
Si consideri un sistema di paginazione con tabella delle pagine in memoria centrale. Suppo-nendo che un riferimento alla memoria centrale richieda 180 ns e che il tempo di accesso airegistri TLB richieda 30 ns, si determini la percentuale di successo nell’accesso ai TLB (hitratio dei TLB) per ottenere un tempo medio di accesso di 280 ns.
[A] 61.111%
[B] 58%
[C] 65%
[D] 68.3333%
domanda N. 9:
Si consideri un sistema con paginazione su due livelli. Per un processo che richiede 16 pagine,di seguito si riportano la tabella delle pagine di primo livello (P ′) e le 4 tabelle di secondolivello (P”0, P”1, P”2 e P”3), le quali hanno rispettivamente indirizzo iniziale 8192, 8704,9216 e 9728:
P ′
0 8192
1 8704
2 9216
3 9728
P”0
0 0
1 512
2 1024
3 1536
P”1
0 2048
1 2560
2 3072
3 3584
P”2
0 4096
1 4608
2 5120
3 5632
P”3
0 6144
1 6656
2 7168
3 7680
Si determini l’indirizzo fisico corrispondente all’indirizzo logico < 3, 3, 123 >
[A] 635
[B] 2171
[C] 7291
[D] 7803
237
domanda N. 10:
Si consideri un sistema operativo con paginazione su richiesta basato sull’algoritmo First InFirst Out (FIFO), che assegna ad ogni processo 3 frame di 512 Byte e che richiede 2 Byte perla memorizzazione di un intero. Ponendo attenzione solo agli array A e B, e ricordando cheil linguaggio C memorizza gli array 2-dimensionali per righe, si determini il numero di pagefaults del seguente frammento di codice C. ...int A[1024], B[2][512];...N=512;for (i=0; i<2; i++){
for (j=0; j<N/2; j++){B[i][2*j] = A[i*N+j] + A[i*N+2*j];
} }
[A] 10
[B] 8
[C] 11
[D] 12
domanda N. 11:
Si consideri un sistema opereativo con paginazione su richiesta basato sull’algoritmo LeastRecently Used (LRU), che assegna ad ogni processo 5 frame. Si determini il numero di pagefaults per la seguente sequenza di riferimenti alle pagine:
6, 1, 4, 6, 5, 3, 1, 2, 4, 6, 5, 6, 4, 3, 5
[A] 10
[B] 9
[C] 8
[D] 7
domanda N. 12:
Sia dato un disco con 200 tracce e velocita di seek di 1 traccia per ms. All’istante t=0 ilsistema operativo sta servendo una richiesta sulla traccia 50 e in coda ci sono richieste per letracce (58; 15; 23; 25; 65; 55). Successivamente arrivano altre richieste all’istante t=7 per latraccia 49 e all’istante t=50 per la traccia 57. Si calcoli il tempo di ricerca complessivo perservire tutte le richieste secondo la politica Shortest Seek Time First (SSTF), trascurando lalatenza rotazionale e il tempo di trasferimento.
238
[A] 117
[B] 98
[C] 107
[D] 65
domanda N. 13:
Si determini la veridicita’ delle seguenti affermazioni:
a) Il principale problema dei livelli 3 e 4 dei sistemi RAID che li rende meno preferibili rispettoal livello 5 e la necessita della generazione della parita, che comporta un supplemento dioverhead.
b) Utilizzando un disco con 7 ms di tempo di seek, 10 msec di latenza media rotazionale etempo di trasferimento di 20 msec, il tempo necessario per trasferire in memoria centraleun file composto da 15 blocchi, distanti mediamente 10 tracce, e di 1.5 secondi esatti.
[A] a) vera ; b) falsa
[B] entrambe false
[C] entrambe vere
[D] a) falsa ; b) vera
domanda N. 14:
Si consideri un disco che opera a 7200 rpm (giri al minuto), dove ogni traccia e composta da160 settori di 512 bytes ognuno. Si determini la velocita di trasferimento necessaria per poterleggere o scrivere una traccia intera durante una rotazione del disco.
[A] circa 19200 KB/sec
[B] circa 9600 KB/sec
[C] circa 4800 KB/sec
[D] circa 13400 KB/sec
domanda N. 15:
Si determini la veridicita’ delle seguenti affermazioni:
a) Un vantaggio dello schema di allocazione contigua di file in un file system e la velocita diaccesso poiche non si devono effettuare ulteriori operazioni di ricerche dei blocchi dopoaver individuato il primo blocco
239
b) Un problema nella prima versione della File Allocation Table di Microsoft (FAT12) era laframmentazione interna per i dischi di grandi dimensioni. Tale problema sussiste anchecon le nuove versioni FAT16 e FAT32, per cui esse vengono oramai utilizzate solo per ifile systen dei floppy disk.
[A] a) vera ; b) falsa
[B] a) falsa ; b) vera
[C] entrambe false
[D] entrambe vere
domanda N. 16:
Sia dato un file system di 8 MB che gestisca i file mediante allocazione tabellare (ad es. unaFile Allocation Table). Si determini la dimensione della tabella nel caso in cui i blocchi deldisco siano di 512 byte.
[A] 12 KB
[B] 13 KB
[C] 32 KB
[D] 28 KB
domanda N. 17:
Si determini la veridicita delle seguenti affermazioni:
a) Si consideri un file formato da 100 record allocato su disco in forma contigua dove i recorddel file sono memorizzati uno per blocco e il file descriptor e gia in memoria centrale. Sel’ultimo record letto e’ il record 30 allora per cancellare il 70-mo record sono necessari40 accessi in lettura e 1 in scrittura.
b) Si consideri un file formato da 100 record allocato su disco in forma concatenata dovei record del file sono memorizzati uno per blocco e il file descriptor e gia in memoriacentrale. Se l’ultimo record letto e’ il record 10, allora per cancellare il 35-mo recordsono necessari 25 accessi in lettura e 25 in scrittura.
[A] entrambe vere
[B] a) vera ; b) falsa
[C] a) falsa ; b) vera
[D] entrambe false
240
================================================== compito N. 28 del 110609 ==========
=========================================
SVOLTO DA MATRICOLA
domanda 1
domanda 2
domanda 3
domanda 4
domanda 5
domanda 6
domanda 7
domanda 8
domanda 9
domanda 10
domanda 11
domanda 12
domanda 13
domanda 14
domanda 15
domanda 16
domanda 17
• 1.5 punti per ogni risposta esatta
• 0 punti per ogni risposta non data
• 0.5 punti di penalita’ per ogni risposta errata
FIRMA
241
============================================ CORSO DI SISTEMI OPERTIVI mod.A (gr. 1) ============ compito N. 29 del 110609 ==========
=========================================
domanda N. 1:
Si determini la veridicita’ delle seguenti affermazioni:
a) Uno dei vantaggi delle macchine virtuali e’ la possibilita’ di creare ambienti di elaborazionecompletamente separati, permettendo una protezione efficace delle risorse del sistemaoperativo e dei programmi tra loro.
b) Uno dei vantaggi delle macchine virtuali e’ la loro facile realizzazione, in quanto e’ suf-ficiente replicare una copia di un sistema operativo monoutente in piu’ partizioni deldisco, dando cosi’ ad ogni utente l’illusione di essere l’unico utente del sistema.
[A] entrambe false
[B] entrambe vere
[C] a) vera ; b) falsa
[D] a) falsa ; b) vera
domanda N. 2:
Si determini la veridicita’ delle seguenti affermazioni:
a) Il sistema operativo accede molto spesso ai Process Control Blocks. Di conseguenza moltiprocessori possiedono un registro hardware che fa riferimento al PCB del processo inesecuzione in modo da facilitare il cambio di contesto.
b) Una delle operazioni che un processo puo’ effettuare quando riceve un segnale e di ignorarlo.Con tale termine si intende la capacita di redirigere il segnale ad un altro processo.
[A] entrambe vere
[B] a) vera ; b) falsa
[C] entrambe false
[D] a) falsa ; b) vera
domanda N. 3:
Si determini il numero di processi generati (compreso quello mandato in esecuzione dalla linea
242
di comando) dal seguente codice C, compilato e fatto eseguire su un sistema con il sistemaoperativo Unix:main(){int pid, i;for (i = 0; i <= 3; i + +){
pid=fork();if (pid == 0 && i == 2) exit(0);
}exit(0);}
[A] 10
[B] 14
[C] 12
[D] 8
domanda N. 4:
Sia dato il seguente insieme di processi:
TA TC P
P1 0 6 3P2 3 4 5P3 4 6 4P4 11 2 5P5 14 4 1
dove TA e il tempo di arrivo nella coda dei processi pronti, TC e il tempo di utilizzo della CPUe P e la priorita (priorita massima = 5). Utilizzando l’algoritmo di scheduling a priorita conprelazione, si determini il tempo medio di esecuzione.
[A] 8.4
[B] 8.8
[C] 8.6
[D] 8.2
domanda N. 5:
243
Sia dato il seguente insieme di processi:
TA TC
P1 0 8P2 1 4P3 3 6P4 7 2P5 9 2
dove TA e il tempo di arrivo nella coda dei processi pronti e TC e il tempo di utilizzo della CPU.Utilizzando l’algoritmo di scheduling Round Robin con quanto di tempo q = 2, si determini iltempo medio di esecuzione.
[A] 12.8
[B] 12.6
[C] 13.2
[D] 13.0
domanda N. 6:
Siano dati tre processi che condividono una variabile x e i cui pseudo codici sono di seguitoriportati:
P1 P2 P3
wait(R) wait(S) wait(T)x = x+3; x = x-5; x = x+2;if(x==4)then signal(R); if(x >= 5)then
signal(S); wait(S); signal(S);endif signal(T); elsewait(R); signal(R);
endifwait(T);signal(R);
Supponendo che i tre semafori binari R, S e T siano inizializzati rispettivamente a R = 0,S = 0 e T = 1, si determini quale valore iniziale della variabile x, tra quelli proposti nellerisposte, non comporti una situazione di stallo per i processi.
[A] x = 3
[B] x = 2
[C] x = 4
[D] x = 1
244
domanda N. 7:
Si determini la veridicita’ delle seguenti affermazioni:
a) In un sistema con memoria virtuale con tabella delle pagine multilivello e possibile indi-rizzare un area di memoria maggiore rispetto a quella indirizzabile con una tradizionaletabella delle pagine ad un solo livello.
b) Si consideri un sistema con memoria virtuale che rappresenti un indirizzo virtuale v me-diante la coppia (b, d) usando 32 bit. Se la dimensione delle pagine e di 8192 byte allorail numero di pagina b e specificato usando n = 20 bit.
[A] entrambe false
[B] a) falsa ; b) vera
[C] a) vera ; b) falsa
[D] entrambe vere
domanda N. 8:
Si consideri un sistema di paginazione con tabella delle pagine in memoria centrale. Suppo-nendo che un riferimento alla memoria centrale richieda 180 ns e che il tempo di accesso airegistri TLB richieda 30 ns, si determini la percentuale di successo nell’accesso ai TLB (hitratio dei TLB) per ottenere un tempo medio di accesso di 280 ns.
[A] 68.3333%
[B] 61.111%
[C] 58%
[D] 65%
domanda N. 9:
Si consideri un sistema con paginazione su due livelli. Per un processo che richiede 16 pagine,di seguito si riportano la tabella delle pagine di primo livello (P ′) e le 4 tabelle di secondolivello (P”0, P”1, P”2 e P”3), le quali hanno rispettivamente indirizzo iniziale 8192, 8704,9216 e 9728:
P ′
0 8192
1 8704
2 9216
3 9728
P”0
0 0
1 512
2 1024
3 1536
P”1
0 2048
1 2560
2 3072
3 3584
P”2
0 4096
1 4608
2 5120
3 5632
P”3
0 6144
1 6656
2 7168
3 7680
Si determini l’indirizzo fisico corrispondente all’indirizzo logico < 1, 2, 341 >
245
[A] 5461
[B] 3413
[C] 1877
[D] 6997
domanda N. 10:
Si consideri un sistema operativo con paginazione su richiesta basato sull’algoritmo First InFirst Out (FIFO), che assegna ad ogni processo 3 frame di 512 Byte e che richiede 2 Byte perla memorizzazione di un intero. Ponendo attenzione solo agli array A, B e C, e ricordando cheil linguaggio C memorizza gli array 2-dimensionali per righe, si determini il numero di pagefaults del seguente frammento di codice C. ...int A[512], B[256], C[2][512];...N=256;for (i=0; i<2; i++){
for (j=0; j<N; j++){C[i][2*j] = A[i*N+j] + B[j];
} }
[A] 12
[B] 11
[C] 10
[D] 8
domanda N. 11:
Si consideri un sistema opereativo con paginazione su richiesta basato sull’algoritmo LeastRecently Used (LRU), che assegna ad ogni processo 5 frame. Si determini il numero di pagefaults per la seguente sequenza di riferimenti alle pagine:
7, 4, 7, 1, 7, 3, 6, 3, 1, 3, 4, 7, 2, 5, 7
[A] 9
[B] 8
[C] 10
[D] 7
246
domanda N. 12:
Sia dato un disco con 200 tracce e velocita di seek di 1 traccia per ms. All’istante t=0 ilsistema operativo sta servendo una richiesta sulla traccia 50 e in coda ci sono richieste per letracce (58; 15; 23; 25; 65; 55). Successivamente arrivano altre richieste all’istante t=7 per latraccia 49 e all’istante t=50 per la traccia 57. Si calcoli il tempo di ricerca complessivo perservire tutte le richieste secondo la politica Shortest Seek Time First (SSTF), trascurando lalatenza rotazionale e il tempo di trasferimento.
[A] 98
[B] 107
[C] 65
[D] 117
domanda N. 13:
Si determini la veridicita’ delle seguenti affermazioni:
a) Le tecniche di ottimizzazione rotazionale del disco hanno avuto una importanza crescentenegli ultimi anni perche i moderni dischi rigidi esibiscono tempi di seek e latenze mediedello stesso ordine di grandezza.
b) Il livello RAID 1 e il migliore per ambienti in cui l’affidabilita ha una priorita superiore alcosto o alle prestazioni.
[A] a) falsa ; b) vera
[B] entrambe vere
[C] entrambe false
[D] a) vera ; b) falsa
domanda N. 14:
Si calcoli la probabilitaa di perdere i dati con un sistema RAID level 5 con 5 dischi, se il MeanTime to Failure (MTF) e di 1400 giorni e il Mean Time to Repair (MTR) e di 19.6 giorni.
[A] 0.00011
[B] 0.0001
[C] 0.00003
[D] 0.00009
247
domanda N. 15:
Si determini la veridicita’ delle seguenti affermazioni:
a) Rispetto allo schema di allocazione dei file con lista concatenata, il principale vantaggiodella allocazione indicizzata dei file in un file system e la possibilita di effettuare laricerca nel solo blocco indice, migliorando enormemente i tempi di attraversamento delfile.
b) Lo schema di gestione dei blocchi liberi basato sulla bitmap introduce sempre un minorsovraccarico di memoria rispetto alla lista dei blocchi liberi, poiche mediante la bitmapviene utilizzato un solo bit per blocco, mentre la lista richiede l’indice del blocco chepuo’ essere grande 16 o 32 bit.
[A] a) falsa ; b) vera
[B] entrambe false
[C] a) vera ; b) falsa
[D] entrambe vere
domanda N. 16:
Sia dato un file system che gestisca blocchi da 256 byte e indirizzi da 16 bit mediante unaallocazione indicizzata dei file. Si calcoli la dimensione massima di un file per questo filesystem supponendo che i blocchi indice contengono:
• 8 puntatori diretti a blocchi di dati
• 2 puntatori indiretti a blocchi di dati
[A] 266240 byte
[B] 67584 byte
[C] 271360 byte
[D] 50944 byte
domanda N. 17:
Si determini la veridicita delle seguenti affermazioni:
a) Si consideri un file formato da 100 record allocato su disco in forma contigua dove i recorddel file sono memorizzati uno per blocco e il file descriptor e gia in memoria centrale. Sel’ultimo record letto e’ il record 30 allora per cancellare il 70-mo record sono necessari40 accessi in lettura e 1 in scrittura.
248
b) Si consideri un file formato da 100 record allocato su disco in forma concatenata dovei record del file sono memorizzati uno per blocco e il file descriptor e gia in memoriacentrale. Se l’ultimo record letto e’ il record 10, allora per cancellare il 35-mo recordsono necessari 25 accessi in lettura e 25 in scrittura.
[A] entrambe false
[B] entrambe vere
[C] a) vera ; b) falsa
[D] a) falsa ; b) vera
249
================================================== compito N. 29 del 110609 ==========
=========================================
SVOLTO DA MATRICOLA
domanda 1
domanda 2
domanda 3
domanda 4
domanda 5
domanda 6
domanda 7
domanda 8
domanda 9
domanda 10
domanda 11
domanda 12
domanda 13
domanda 14
domanda 15
domanda 16
domanda 17
• 1.5 punti per ogni risposta esatta
• 0 punti per ogni risposta non data
• 0.5 punti di penalita’ per ogni risposta errata
FIRMA
250
============================================ CORSO DI SISTEMI OPERTIVI mod.A (gr. 1) ============ compito N. 30 del 110609 ==========
=========================================
domanda N. 1:
Si determini la veridicita’ delle seguenti affermazioni:
a) Uno dei principali vantaggi dei sistemi operativi con architettura monolitica e’ l’efficienza.Tale approccio, e oggi comunque poco utilizzato in quanto la complessita dei modernisistemi operativi lo rende poco praticabile.
b) Uno degli svantaggi delle macchine virtuali e’ la loro difficile realizzazione in quanto edifficile ottenere una replica della macchina fisica sottostante con strumenti software.
[A] a) falsa ; b) vera
[B] entrambe false
[C] a) vera ; b) falsa
[D] entrambe vere
domanda N. 2:
Si determini la veridicita’ delle seguenti affermazioni:
a) Uno svantaggio nell’uso dei threads rispetto all’uso di piu processi cooperanti che comuni-cano attraverso una memoria condivisa e la necessita della sincronizzazione.
b) Il meccanismo piu utilizzato dai sistemi operativi di tipo generale per impedire che unprocesso possa monopolizzare l’uso della CPU , consiste nell’assegnare ai processi untempo massimo di utilizzo continuativo della CPU, scaduto il quale il processo vienesospeso.
[A] a) falsa ; b) vera
[B] a) vera ; b) falsa
[C] entrambe false
[D] entrambe vere
domanda N. 3:
Si determini il numero di processi generati (compreso quello mandato in esecuzione dalla linea
251
di comando) dal seguente codice C, compilato e fatto eseguire su un sistema con il sistemaoperativo Unix:main(){int pid, i;for (i = 0; i <= 3; i + +){
pid=fork();if (pid == 0 && i < 3) exit(0);
}exit(0);}
[A] 9
[B] 6
[C] 8
[D] 5
domanda N. 4:
Sia dato il seguente insieme di processi:
TA TC P
P1 1 7 2P2 2 5 4P3 6 4 5P4 7 7 1P5 10 2 3
dove TA e il tempo di arrivo nella coda dei processi pronti, TC e il tempo di utilizzo della CPUe P e la priorita (priorita massima = 5). Utilizzando l’algoritmo di scheduling a priorita conprelazione, si determini il tempo medio di esecuzione.
[A] 11.2
[B] 10.6
[C] 11
[D] 10.4
domanda N. 5:
252
Sia dato il seguente insieme di processi:
TA TC
P1 0 5P2 3 6P3 5 7P4 8 6P5 16 3
dove TA e il tempo di arrivo nella coda dei processi pronti e TC e il tempo di utilizzo della CPU.Utilizzando l’algoritmo di scheduling Round Robin con quanto di tempo q = 2, si determini iltempo medio di esecuzione.
[A] 13.8
[B] 13.6
[C] 14
[D] 14.2
domanda N. 6:
Siano dati tre processi che condividono una variabile x e i cui pseudo codici sono di seguitoriportati:
P1 P2 P3
wait(R) wait(S) wait(T)x = 2*x; x = x*2; x = x+1;if (x > 0) then signal(T); signal(S);
x = x+1; wait(T)signal(S); x = x-1
else signal(R);x = x-1;signal(T);
endifwait(R);print x;
Si determini l’output del processo P1 supponendo che inizialmente x = −1 e i tre semaforibinari siano inizializzati rispettivamente R = 1, S = 0, T = 0.
[A] -5
[B] -4
[C] 5
[D] 4
253
domanda N. 7:
Si determini la veridicita’ delle seguenti affermazioni:
a) Il significativo overhrad associato alla tecnica del compattamento usata per ridurre il prob-lema della frammentazione esterna, rende tale tecnica poco adatta per un utilizzo neisistemi operativi real-time.
b) In un sistema operativo che gestisce la memoria centrale mediante partizioni fisse, i registrichiamati base e limit vengono utilizzati per decidere in quale partizione allocare i processi.
[A] entrambe false
[B] a) vera ; b) falsa
[C] a) falsa ; b) vera
[D] entrambe vere
domanda N. 8:
Si consideri un sistema di paginazione con tabella delle pagine in memoria centrale. Suppo-nendo che un riferimento alla memoria centrale richieda 190 ns e che il tempo di accesso airegistri TLB richieda 25 ns, si determini la percentuale di successo nell’accesso ai TLB (hitratio dei TLB) per ottenere un tempo medio di accesso di 272 ns.
[A] 68%
[B] 70%
[C] 73.5%
[D] 76.6666%
domanda N. 9:
Si consideri un sistema con paginazione su due livelli. Per un processo che richiede 16 pagine,ognuna di 512 byte, di seguito si riportano la tabella delle pagine di primo livello (P ′) e le4 tabelle di secondo livello (P”0, P”1, P”2 e P”3), le quali hanno rispettivamente indirizzofisico iniziale 0, 512, 1024 e 1536:
P ′
0 0
1 512
2 1024
3 1536
P”0
0 8192
1 11776
2 5120
3 14336
P”1
0 10752
1 7680
2 3072
3 6144
P”2
0 5632
1 10240
2 13824
3 11264
P”3
0 9216
1 3584
2 12800
3 14848
Si determini quale indirizzo fisico, tra quelli proposti, non appartiene allo spazio di indirizza-mento del processo.
254
[A] 3070
[B] 6146
[C] 9218
[D] 14850
domanda N. 10:
Si consideri un sistema operativo con paginazione su richiesta basato sull’algoritmo First InFirst Out (FIFO), che assegna ad ogni processo 3 frame di 512 Byte e che richiede 2 Byte perla memorizzazione di un intero. Ponendo attenzione solo agli array A, B e C, e ricordando cheil linguaggio C memorizza gli array 2-dimensionali per righe, si determini il numero di pagefaults del seguente frammento di codice C. ...int A[2][512], B[2][256], C[512];...N=256;for (i=0; i<2; i++){
for (j=0; j<N; j++){C[i*N+j] = A[i][2*j] + B[i][j];
} }
[A] 10
[B] 11
[C] 12
[D] 8
domanda N. 11:
Si consideri un sistema opereativo con paginazione su richiesta basato sull’algoritmo FIFO conseconda chance, che assegna ad ogni processo 5 frame. Si determini il numero di page faultsper la seguente sequenza di riferimenti alle pagine:
7, 4, 5, 7, 3, 6, 4, 1, 2, 7, 4, 6, 5, 4, 7
[A] 10
[B] 7
[C] 8
[D] 9
255
domanda N. 12:
Sia dato un disco con 200 tracce e velocita di seek di 1 traccia per ms. All’istante t=0 ilsistema operativo sta servendo una richiesta sulla traccia 50 e in coda ci sono richieste per letracce (58; 15; 23; 25; 65; 55). Successivamente arrivano altre richieste all’istante t=7 per latraccia 49 e all’istante t=50 per la traccia 57. Si calcoli il tempo di ricerca complessivo perservire tutte le richieste secondo la politica Shortest Seek Time First (SSTF), trascurando lalatenza rotazionale e il tempo di trasferimento.
[A] 65
[B] 117
[C] 98
[D] 107
domanda N. 13:
Si determini la veridicita’ delle seguenti affermazioni:
a) Un problema frequente nell’algoritmo First Come First Served (FCFS) di scheduling deldisco e la posticipazione indefinita di alcune richieste di servizio.
b) La latenza rotazionale e identica per ogni accesso al disco.
[A] entrambe vere
[B] entrambe false
[C] a) vera ; b) falsa
[D] a) falsa ; b) vera
domanda N. 14:
Si consideri un disco che opera a 7200 rpm (giri al minuto), dove ogni traccia e composta da160 settori di 512 bytes ognuno. Si determini la velocita di trasferimento necessaria per poterleggere o scrivere una traccia intera durante una rotazione del disco.
[A] circa 9600 KB/sec
[B] circa 4800 KB/sec
[C] circa 13400 KB/sec
[D] circa 19200 KB/sec
256
domanda N. 15:
Si determini la veridicita’ delle seguenti affermazioni:
a) Il principale vantaggio dello schema di allocazione di file con lista concatenata e l’elevataefficienza nella ricerca dei blocchi, poiche sono noti numerosi algoritmi efficienti per lagestione delle liste.
b) La File Allocation Table (FAT) di Microsoft e uno speciale schema di allocazione dei filesu disco che rientra tra le tecniche di allocazione dei file in blocchi contigui.
[A] a) vera ; b) falsa
[B] entrambe vere
[C] a) falsa ; b) vera
[D] entrambe false
domanda N. 16:
Sia dato un file system che gestisca blocchi da 1024 byte e indirizzi da 32 bit mediante unaallocazione indicizzata dei file. Si calcoli la dimensione massima di un file per questo filesystem supponendo che i blocchi indice contengono:
• 9 puntatori diretti a blocchi di dati
• 1 puntatori indiretti a blocchi di dati
[A] 330240 byte
[B] 271360 byte
[C] 50944 byte
[D] 266240 byte
domanda N. 17:
Si determini la veridicita delle seguenti affermazioni:
a) Si consideri un file formato da 100 record allocato su disco in forma indicizzata dove irecord del file sono memorizzati uno per blocco e il file descriptor e gia in memoriacentrale. Se non e stato fatto ancora nessun accesso al file, allora per cancellare il 50-morecord e necessario 1 accesso in lettura e 1 in scrittura.
b) Si consideri un file formato da 100 record allocato su disco in forma contigua dove i recorddel file sono memorizzati uno per blocco e il file descriptor e gia in memoria centrale. Sel’ultimo record letto e’ il record 10 allora per cancellare il 75-mo record sono necessari25 accessi in lettura e 1 in scrittura.
257
[A] a) vera ; b) falsa
[B] entrambe false
[C] a) falsa ; b) vera
[D] entrambe vere
258
================================================== compito N. 30 del 110609 ==========
=========================================
SVOLTO DA MATRICOLA
domanda 1
domanda 2
domanda 3
domanda 4
domanda 5
domanda 6
domanda 7
domanda 8
domanda 9
domanda 10
domanda 11
domanda 12
domanda 13
domanda 14
domanda 15
domanda 16
domanda 17
• 1.5 punti per ogni risposta esatta
• 0 punti per ogni risposta non data
• 0.5 punti di penalita’ per ogni risposta errata
FIRMA
259
============================================ CORSO DI SISTEMI OPERTIVI mod.A (gr. 1) ============ compito N. 31 del 110609 ==========
=========================================
domanda N. 1:
Si determini la veridicita’ delle seguenti affermazioni:
a) Un sistema operativo che e in grado di utilizzare in maniera efficiente le risorse che vengonoaggiunte al sistema e detto espandibile.
b) Le chiamate di sistema operano in maniera simile alle interruzioni, nel senso che quandoavviene una chiamata di sistema, il sistema si porta in modalita kernel e serve la richiestamediante una apposita routine di servizio.
[A] entrambe vere
[B] a) falsa ; b) vera
[C] entrambe false
[D] a) vera ; b) falsa
domanda N. 2:
Si determini la veridicita’ delle seguenti affermazioni:
a) Il meccanismo piu utilizzato dai sistemi operativi per impedire che un processo possamonopolizzare l’uso della CPU consiste nell’assegnare ai processi un numero massimo diistruzioni da eseguire.
b) Quando un processo viene rimosso dalla CPU perchee e scaduto il suo quanto di tempo,viene inserito sempre nella coda dei processi in attesa (waiting queue). Il processo vienerimosso da tale coda solo al momento di tornare in esecuzione
[A] a) falsa ; b) vera
[B] a) vera ; b) falsa
[C] entrambe vere
[D] entrambe false
domanda N. 3:
Si determini il numero di processi generati (compreso quello mandato in esecuzione dalla linea
260
di comando) dal seguente codice C, compilato e fatto eseguire su un sistema con il sistemaoperativo Unix:main(){int pid, i;for (i = 0; i <= 3; i + +){
pid=fork();if (pid == 0 && i < 3) exit(0);
}exit(0);}
[A] 6
[B] 8
[C] 5
[D] 9
domanda N. 4:
Sia dato il seguente insieme di processi:
TA TC P
P1 0 6 3P2 3 4 5P3 4 6 4P4 11 2 5P5 14 4 1
dove TA e il tempo di arrivo nella coda dei processi pronti, TC e il tempo di utilizzo della CPUe P e la priorita (priorita massima = 5). Utilizzando l’algoritmo di scheduling a priorita conprelazione, si determini il tempo medio di esecuzione.
[A] 8.2
[B] 8.4
[C] 8.8
[D] 8.6
domanda N. 5:
261
Sia dato il seguente insieme di processi:
TA TC
P1 0 8P2 1 6P3 3 6P4 7 4P5 9 4
dove TA e il tempo di arrivo nella coda dei processi pronti e TC e il tempo di utilizzo della CPU.Utilizzando l’algoritmo di scheduling Round Robin con quanto di tempo q = 2, si determini iltempo medio di esecuzione.
[A] 20.4
[B] 20.0
[C] 19.6
[D] 19.2
domanda N. 6:
Siano dati tre processi che condividono una variabile x e i cui pseudo codici sono di seguitoriportati:
P1 P2 P3
wait(R) wait(S) wait(T)x = 2*x; x = x*2; x = x+1;if (x > 0) then signal(T); signal(S);
x = x+1; wait(T)signal(S); x = x-1
else signal(R);x = x-1;signal(T);
endifwait(R);print x;
Si determini l’output del processo P1 supponendo che inizialmente x = −1 e i tre semaforibinari siano inizializzati rispettivamente R = 1, S = 0, T = 0.
[A] 4
[B] -5
[C] -4
[D] 5
262
domanda N. 7:
Si determini la veridicita’ delle seguenti affermazioni:
a) I semafori possono essere usati in sistemi con allocazione contigua della memoria per evitareche i processi effetuino accessi illegali (ad esempio all’area di memoria assegnata alsistema operativo).
b) Per limitare il problema della frammentazione esterna, la tecnica del compattamento uniscebuchi adiacenti in memoria, mentre la tecnica della coalescenza rialloca i processi in ese-cuzione in maniera contigua in maniera da creare un unico spazio di memoria disponibileper i nuovi processi.
[A] entrambe false
[B] a) falsa ; b) vera
[C] entrambe vere
[D] a) vera ; b) falsa
domanda N. 8:
Si consideri un sistema di paginazione con tabella delle pagine in memoria centrale. Suppo-nendo che un riferimento alla memoria centrale richieda 190 ns e che il tempo di accesso airegistri TLB richieda 25 ns, si determini la percentuale di successo nell’accesso ai TLB (hitratio dei TLB) per ottenere un tempo medio di accesso di 272 ns.
[A] 70%
[B] 73.5%
[C] 76.6666%
[D] 68%
domanda N. 9:
Si consideri un sistema con paginazione su due livelli. Per un processo che richiede 16 pagine,ognuna di 512 byte, di seguito si riportano la tabella delle pagine di primo livello (P ′) e le4 tabelle di secondo livello (P”0, P”1, P”2 e P”3), le quali hanno rispettivamente indirizzofisico iniziale 0, 512, 1024 e 1536:
P ′
0 0
1 512
2 1024
3 1536
P”0
0 8192
1 11776
2 5120
3 14336
P”1
0 10752
1 7680
2 3072
3 6144
P”2
0 5632
1 10240
2 13824
3 11264
P”3
0 9216
1 3584
2 12800
3 14848
263
Si determini quale indirizzo fisico, tra quelli proposti, non appartiene allo spazio di indirizza-mento del processo.
[A] 13314
[B] 10754
[C] 12802
[D] 5122
domanda N. 10:
Si consideri un sistema operativo con paginazione su richiesta basato sull’algoritmo First InFirst Out (FIFO), che assegna ad ogni processo 3 frame di 512 Byte e che richiede 2 Byte perla memorizzazione di un intero. Ponendo attenzione solo agli array A, B e C, e ricordando cheil linguaggio C memorizza gli array 2-dimensionali per righe, si determini il numero di pagefaults del seguente frammento di codice C. ...int A[2][512], B[512], C[256];...N=512;for (i=0; i<2; i++){
for (j=0; j<N; j++){B[j/2 + i*256] = A[i][j] + C[j/2];
} }
[A] 8
[B] 12
[C] 10
[D] 11
domanda N. 11:
Si consideri un sistema operativo con paginazione su richiesta basato sull’algoritmo LeastRecently Used (LRU), che assegna ad ogni processo 5 frame. Se determini il numero di pagefaults per la squenza di riferimenti alle pagine:
5, 3, 2, 5, 2, 4, 1, 6, 4, 1, 3, 7, 4, 6, 2
[A] 8
[B] 10
[C] 7
264
[D] 9
domanda N. 12:
Sia dato un disco con 2000 tracce. Una operazione di lettura di un blocco richiede 3 msper lo spostamento tra due tracce adiacenti, 5 ms per la latenza rotazionale e 10 ms per iltrasferimento di un blocco di dati. Si calcoli il tempo necessario per leggere un file costituitoda 45 blocchi nel caso in cui questi ultimi siano distanti mediamente 15 tracce l’uno dall’altro.
[A] 8.44 sec
[B] 2.7 sec
[C] 12.15 sec
[D] 2.04 sec
domanda N. 13:
Si determini la veridicita’ delle seguenti affermazioni:
a) L’algoritmo di scheduling del disco First Come First Served (FCFS) e l’algoritmo menoutilizzato nei sistemi interattivi di tipo generale perche e quello che ha il piu alto overheadper la gestione delle strutture dati necessarie all’algoritmo stesso.
b) I principali vantaggi di un sistema RAID 0 sono la semplicita di realizzazione e l’elevatavelocita di trasferimento.
[A] entrambe vere
[B] a) falsa ; b) vera
[C] entrambe false
[D] a) vera ; b) falsa
domanda N. 14:
Si calcoli la probabilitaa di perdere i dati con un sistema RAID level 1 con 6 dischi, se il MeanTime to Failure (MTF) e di 1300 giorni e il Mean Time to Repair (MTR) e di 16.9 giorni.
[A] 0.00001
[B] 0.00011
[C] 0.00003
[D] 0.00009
265
domanda N. 15:
Si determini la veridicita’ delle seguenti affermazioni:
a) Il principale vantaggio dello schema di allocazione di file con lista concatenata e l’elevataefficienza nella ricerca dei blocchi, poiche sono noti numerosi algoritmi efficienti per lagestione delle liste.
b) La File Allocation Table (FAT) di Microsoft e uno speciale schema di allocazione dei filesu disco che rientra tra le tecniche di allocazione dei file in blocchi contigui.
[A] a) vera ; b) falsa
[B] entrambe vere
[C] a) falsa ; b) vera
[D] entrambe false
domanda N. 16:
Sia dato un file system di 2 MB che gestisca i file mediante allocazione tabellare (ad es. unaFile Allocation Table). Si determini la dimensione della tabella nel caso in cui i blocchi deldisco siano di 512 byte.
[A] 6 KB
[B] 12 KB
[C] 48 KB
[D] 32 KB
domanda N. 17:
Si determini la veridicita delle seguenti affermazioni:
a) Si consideri un file formato da 100 record allocato su disco in forma concatenata dovei record del file sono memorizzati uno per blocco e il file descriptor e gia in memoriacentrale. Se l’ultimo record letto e’ il record 25, allora per cancellare il 60-mo recordsono necessari 35 accessi in lettura e 35 in scrittura.
b) Si consideri un file formato da 100 record allocato su disco in forma contigua dove i recorddel file sono memorizzati uno per blocco e il file descriptor e gia in memoria centrale. Sel’ultimo record letto e’ il record 10 allora per cancellare il 60-mo record sono necessari40 accessi in lettura e 1 in scrittura.
[A] a) falsa ; b) vera
266
[B] a) vera ; b) falsa
[C] entrambe vere
[D] entrambe false
267
================================================== compito N. 31 del 110609 ==========
=========================================
SVOLTO DA MATRICOLA
domanda 1
domanda 2
domanda 3
domanda 4
domanda 5
domanda 6
domanda 7
domanda 8
domanda 9
domanda 10
domanda 11
domanda 12
domanda 13
domanda 14
domanda 15
domanda 16
domanda 17
• 1.5 punti per ogni risposta esatta
• 0 punti per ogni risposta non data
• 0.5 punti di penalita’ per ogni risposta errata
FIRMA
268
============================================ CORSO DI SISTEMI OPERTIVI mod.A (gr. 1) ============ compito N. 32 del 110609 ==========
=========================================
domanda N. 1:
Si determini la veridicita’ delle seguenti affermazioni:
a) Uno dei principali difetti dei sistemi operativi con architettura monolitica e’ l’inefficienza.Tale approccio, nonostante permetta uno sviluppo rapido del sistema, e’ per questomotivo sempre meno utilizzato per la progettazione dei sistemi operativi di tipo generale
b) Uno dei vantaggi dei sistemi operativi con architettura stratificata e’ la possibilita’ dimodificare rapidamente e semplicemente parte del sistema operativo senza interveniresugli altri livelli dell’architettura software.
[A] entrambe false
[B] a) vera ; b) falsa
[C] entrambe vere
[D] a) falsa ; b) vera
domanda N. 2:
Si determini la veridicita’ delle seguenti affermazioni:
a) Le prestazioni di una qualunque applicazione multithreading e sempre piu’ efficiente nelcaso di una implementazione dei thread utente secondo il modello molti a uno rispettoad una implementazione secondo il modello uno a uno. Cio e’ dovuto al fatto che con ilmodello molti a uno, i thread a livello utente non richiamano il kernel per le operazionidi scheduling e sincronizzazione.
b) Uno svantaggio dell’implementazione dei threads secondo il modello uno a uno e la scarsaportabilita delle applicazioni, in quanto esse devono interfacciarsi direttamente con lechiamate di sistema relative al sistema operativo su cui deve essere eseguita l’applicazione.I sistemi operativi conformi ad interfacce standard, ad esempio POSIX, riducono il prob-lema.
[A] a) vera ; b) falsa
[B] entrambe false
[C] a) falsa ; b) vera
[D] entrambe vere
269
domanda N. 3:
Si determini il numero di processi generati (compreso quello mandato in esecuzione dalla lineadi comando) dal seguente codice C, compilato e fatto eseguire su un sistema con il sistemaoperativo Unix:main(){int pid, i;for (i = 0; i <= 3; i + +){
pid=fork();if (pid == 0 && i > 1) exit(0);
}exit(0);}
[A] 10
[B] 12
[C] 9
[D] 8
domanda N. 4:
Sia dato il seguente insieme di processi:
TA TC
P1 0 10P2 1 8P3 4 3P4 9 2P5 12 4
dove TA e il tempo di arrivo nella coda dei processi pronti e TC e il tempo di utilizzo della CPU.Utilizzando l’algoritmo di scheduling dello Shortest Job First con prelazione, si determini iltempo medio di esecuzione.
[A] 10.2
[B] 9.8
[C] 10.0
[D] 10.4
270
domanda N. 5:
Sia dato il seguente insieme di processi:
TA TC
P1 0 5P2 3 6P3 5 7P4 8 6P5 16 3
dove TA e il tempo di arrivo nella coda dei processi pronti e TC e il tempo di utilizzo della CPU.Utilizzando l’algoritmo di scheduling Round Robin con quanto di tempo q = 2, si determini iltempo medio di esecuzione.
[A] 14.2
[B] 13.8
[C] 13.6
[D] 14
domanda N. 6:
Siano dati tre processi che condividono una variabile x e i cui pseudo codici sono di seguitoriportati:
P1 P2 P3
wait(S) wait(R) wait(T)x = 2+x; if (x < 0) then x = x+1;signal(T); x = x-1; signal(R);wait(S); signal(S); wait(T);print x; else x = x+1;
x = x+1; signal(S);signal(T);
endif
Si determini l’output del processo P1 supponendo che inizialmente x = −1 e i tre semaforibinari siano inizializzati rispettivamente S = 1, R = 0, T = 0.
[A] 4
[B] 3
[C] 5
[D] 6
domanda N. 7:
Si determini la veridicita’ delle seguenti affermazioni:
271
a) Nessuna delle principali strategie di allocazione contigua della memoria con partizionivariabili (strategia first fit, strategia best-fit e strategia worst-fit) comporta problemi diframmentazione interna.
b) Il principale svantaggio della strategia first fit rispetto alle altre due strategie di allocazionecontigua della memoria e il maggiore overhead.
[A] a) vera ; b) falsa
[B] a) falsa ; b) vera
[C] entrambe false
[D] entrambe vere
domanda N. 8:
Si consideri un sistema di paginazione con tabella delle pagine in memoria centrale. Suppo-nendo che un riferimento alla memoria centrale richieda 180 ns e che il tempo di accesso airegistri TLB richieda 25 ns, si determini la percentuale di successo nell’accesso ai TLB (hitratio dei TLB) per ottenere un tempo medio di accesso di 232 ns.
[A] 85%
[B] 91%
[C] 88%
[D] 82%
domanda N. 9:
Si consideri un sistema con paginazione su due livelli. Per un processo che richiede 16 pagine,di seguito si riportano la tabella delle pagine di primo livello (P ′) e le 4 tabelle di secondolivello (P”0, P”1, P”2 e P”3), le quali hanno rispettivamente indirizzo iniziale 8192, 8704,9216 e 9728:
P ′
0 8192
1 8704
2 9216
3 9728
P”0
0 0
1 512
2 1024
3 1536
P”1
0 2048
1 2560
2 3072
3 3584
P”2
0 4096
1 4608
2 5120
3 5632
P”3
0 6144
1 6656
2 7168
3 7680
Si determini l’indirizzo fisico corrispondente all’indirizzo logico < 0, 3, 408 >
[A] 7803
[B] 6267
272
[C] 4731
[D] 1944
domanda N. 10:
Si consideri un sistema operativo con paginazione su richiesta basato sull’algoritmo First InFirst Out (FIFO), che assegna ad ogni processo 3 frame di 512 Byte e che richiede 2 Byte perla memorizzazione di un intero. Ponendo attenzione solo agli array A e B, e ricordando cheil linguaggio C memorizza gli array 2-dimensionali per righe, si determini il numero di pagefaults del seguente frammento di codice C. ...int A[1024], B[2][512];...N=512;for (i=0; i<2; i++){
for (j=0; j<N/2; j++){B[i][2*j] = A[i*N+j] + A[i*N+2*j];
} }
[A] 8
[B] 11
[C] 12
[D] 10
domanda N. 11:
Si consideri un sistema operativo con paginazione su richiesta basato sull’algoritmo del Work-ing Set con dimensione della finestra di osservazione w = 6. Si determini, a partire dall’istantet = 6, il minimo e massimo numero di frame che il sistema assegna ad un processo di 6 pagineche vengono referenziate nel seguente ordine:
4, 2, 1, 1, 6, 6, 4, 1, 1, 6, 5, 6, 3, 5, 3, 5, 4, 3, 2, 3, 2, 1, 3, 2, 1
[A] min=3, max=4
[B] min=2, max=5
[C] min=3, max=5
[D] min=2, max=4
domanda N. 12:
273
Sia dato un disco con 200 tracce e velocita di seek di 1 traccia per ms. All’istante t=0 ilsistema operativo sta servendo una richiesta sulla traccia 50 e in coda ci sono richieste per letracce (58; 15; 23; 25; 65; 55). Successivamente arrivano altre richieste all’istante t=7 per latraccia 49 e all’istante t=50 per la traccia 57. Si calcoli il tempo di ricerca complessivo perservire tutte le richieste secondo la politica Shortest Seek Time First (SSTF), trascurando lalatenza rotazionale e il tempo di trasferimento.
[A] 98
[B] 107
[C] 65
[D] 117
domanda N. 13:
Si determini la veridicita’ delle seguenti affermazioni:
a) La motivazione originale per l’introduzione dei sistemi RAID e stata l’osservazione che lavelocita di trasferimento cresceva ad un tasso molto inferiore a quello della crescita siadella capacita dei dischi sia della potenza di elaborazione delle CPU.
b) L’algorimo di scheduling del disco First Come First Served tende ad avere una accettabilevarianza dei tempi di risposta a spese del numero di richieste servite per unita di tempo.
[A] a) vera ; b) falsa
[B] entrambe false
[C] a) falsa ; b) vera
[D] entrambe vere
domanda N. 14:
Si calcoli la probabilitaa di perdere i dati con un sistema RAID level 5 con 5 dischi, se il MeanTime to Failure (MTF) e di 1400 giorni e il Mean Time to Repair (MTR) e di 19.6 giorni.
[A] 0.00009
[B] 0.00011
[C] 0.0001
[D] 0.00003
domanda N. 15:
Si determini la veridicita’ delle seguenti affermazioni:
274
a) Un vantaggio dello schema di allocazione contigua di file in un file system e la velocita diaccesso poiche non si devono effettuare ulteriori operazioni di ricerche dei blocchi dopoaver individuato il primo blocco
b) Un problema nella prima versione della File Allocation Table di Microsoft (FAT12) era laframmentazione interna per i dischi di grandi dimensioni. Tale problema sussiste anchecon le nuove versioni FAT16 e FAT32, per cui esse vengono oramai utilizzate solo per ifile systen dei floppy disk.
[A] entrambe false
[B] entrambe vere
[C] a) vera ; b) falsa
[D] a) falsa ; b) vera
domanda N. 16:
Sia dato un file system che gestisca blocchi da 1024 byte e indirizzi da 32 bit mediante unaallocazione indicizzata dei file. Si calcoli la dimensione massima di un file per questo filesystem supponendo che i blocchi indice contengono:
• 9 puntatori diretti a blocchi di dati
• 1 puntatori indiretti a blocchi di dati
[A] 271360 byte
[B] 50944 byte
[C] 266240 byte
[D] 330240 byte
domanda N. 17:
Si determini la veridicita delle seguenti affermazioni:
a) Si consideri un file formato da 100 record allocato su disco in forma concatenata dovei record del file sono memorizzati uno per blocco e il file descriptor e gia in memoriacentrale. Se l’ultimo record letto e’ il record 25, allora per cancellare il 60-mo recordsono necessari 35 accessi in lettura e 35 in scrittura.
b) Si consideri un file formato da 100 record allocato su disco in forma contigua dove i recorddel file sono memorizzati uno per blocco e il file descriptor e gia in memoria centrale. Sel’ultimo record letto e’ il record 10 allora per cancellare il 60-mo record sono necessari40 accessi in lettura e 1 in scrittura.
[A] a) falsa ; b) vera
275
[B] a) vera ; b) falsa
[C] entrambe vere
[D] entrambe false
276
================================================== compito N. 32 del 110609 ==========
=========================================
SVOLTO DA MATRICOLA
domanda 1
domanda 2
domanda 3
domanda 4
domanda 5
domanda 6
domanda 7
domanda 8
domanda 9
domanda 10
domanda 11
domanda 12
domanda 13
domanda 14
domanda 15
domanda 16
domanda 17
• 1.5 punti per ogni risposta esatta
• 0 punti per ogni risposta non data
• 0.5 punti di penalita’ per ogni risposta errata
FIRMA
277
============================================ CORSO DI SISTEMI OPERTIVI mod.A (gr. 1) ============ compito N. 33 del 110609 ==========
=========================================
domanda N. 1:
Si determini la veridicita’ delle seguenti affermazioni:
a) Uno dei principali vantaggi dei sistemi operativi con architettura monolitica e’ l’efficienza.Tale approccio, e oggi comunque poco utilizzato in quanto la complessita dei modernisistemi operativi lo rende poco praticabile.
b) Uno degli svantaggi delle macchine virtuali e’ la loro difficile realizzazione in quanto edifficile ottenere una replica della macchina fisica sottostante con strumenti software.
[A] a) falsa ; b) vera
[B] entrambe false
[C] a) vera ; b) falsa
[D] entrambe vere
domanda N. 2:
Si determini la veridicita’ delle seguenti affermazioni:
a) In ogni sistema operativo e presente una tabella (chiamata tabella dei processi o ProcessControl Block = PCB) che tiene traccia di tutti i processi in esecuzione. In tale tabellae memorizzato per ogni processo in esecuzione un identificativo di processo (pid), unpuntatore alla memoria dove sono stati memorizzati il codice e l’area dati, nonche’ tuttele informazioni necessarie per effettuare correttamente il cambio di contesto.
b) Pur avendo alcuni campi sempre presenti in tutti i sistemi operativi, la struttura generaledel PCB dipende dalla implementazione del sistema operativo.
[A] entrambe false
[B] entrambe vere
[C] a) falsa ; b) vera
[D] a) vera ; b) falsa
domanda N. 3:
Si determini il numero di processi generati (compreso quello mandato in esecuzione dalla linea
278
di comando) dal seguente codice C, compilato e fatto eseguire su un sistema con il sistemaoperativo Unix:main(){int pid, i;for (i = 0; i <= 3; i + +){
pid=fork();if (pid == 0 && i > 2) exit(0);
}exit(0);}
[A] 8
[B] 10
[C] 16
[D] 9
domanda N. 4:
Sia dato il seguente insieme di processi:
TA TC P
P1 0 6 3P2 3 4 5P3 4 6 4P4 11 2 5P5 14 4 1
dove TA e il tempo di arrivo nella coda dei processi pronti, TC e il tempo di utilizzo della CPUe P e la priorita (priorita massima = 5). Utilizzando l’algoritmo di scheduling a priorita conprelazione, si determini il tempo medio di esecuzione.
[A] 8.2
[B] 8.4
[C] 8.8
[D] 8.6
domanda N. 5:
279
Sia dato il seguente insieme di processi:
TA TC
P1 0 7P2 1 7P3 7 7P4 11 3P5 13 2
dove TA e il tempo di arrivo nella coda dei processi pronti e TC e il tempo di utilizzo della CPU.Utilizzando l’algoritmo di scheduling Round Robin con quanto di tempo q = 2, si determini iltempo medio di esecuzione.
[A] 14.4
[B] 14.8
[C] 15
[D] 14.6
domanda N. 6:
Siano dati tre processi che condividono una variabile x e i cui pseudo codici sono di seguitoriportati:
P1 P2 P3
wait(R) wait(S) wait(T)x = x-5; x = x+2; x = x+3;signal(T); if(x >= 5)then if(x==1)thenwait(R); signal(T); signal(R);signal(S); else endif
signal(R); wait(T);endifwait(S);signal(T);
Supponendo che i tre semafori binari R, S e T siano inizializzati rispettivamente a R = 0,S = 1 e T = 0, si determini quale valore iniziale della variabile x, tra quelli proposti nellerisposte, non comporti una situazione di stallo per i processi.
[A] x = 2
[B] x = 3
[C] x = 4
[D] x = 1
280
domanda N. 7:
Si determini la veridicita’ delle seguenti affermazioni:
a) Il tempo necessario a prelevare un dato dalla memoria in un sistema operativo che usa lamemoria virtuale e lo stesso di un sistema operativo che non ne fa uso.
b) Sia dato un processo di 6 pagine, in un sistema che assegna 5 frame ad ogni processo. Sel’esecuzione di tale processo richiede 15 riferimenti in memoria, l’algoritmo di paginazioneFIFO richiede almeno 6 page faults.
[A] a) falsa ; b) vera
[B] entrambe vere
[C] a) vera ; b) falsa
[D] entrambe false
domanda N. 8:
Si consideri un sistema di paginazione con tabella delle pagine in memoria centrale. Suppo-nendo che un riferimento alla memoria centrale richieda 180 ns e che il tempo di accesso airegistri TLB richieda 30 ns, si determini la percentuale di successo nell’accesso ai TLB (hitratio dei TLB) per ottenere un tempo medio di accesso di 280 ns.
[A] 65%
[B] 68.3333%
[C] 61.111%
[D] 58%
domanda N. 9:
Si consideri un sistema con paginazione su due livelli. Per un processo che richiede 16 pagine,di seguito si riportano la tabella delle pagine di primo livello (P ′) e le 4 tabelle di secondolivello (P”0, P”1, P”2 e P”3), le quali hanno rispettivamente indirizzo iniziale 8192, 8704,9216 e 9728:
P ′
0 8192
1 8704
2 9216
3 9728
P”0
0 0
1 512
2 1024
3 1536
P”1
0 2048
1 2560
2 3072
3 3584
P”2
0 4096
1 4608
2 5120
3 5632
P”3
0 6144
1 6656
2 7168
3 7680
Si determini l’indirizzo fisico corrispondente all’indirizzo logico < 2, 1, 248 >
281
[A] 1272
[B] 3320
[C] 4856
[D] 6904
domanda N. 10:
Si consideri un sistema operativo con paginazione su richiesta basato sull’algoritmo First InFirst Out (FIFO), che assegna ad ogni processo 3 frame di 512 Byte e che richiede 2 Byte perla memorizzazione di un intero. Ponendo attenzione solo agli array A, B e C, e ricordando cheil linguaggio C memorizza gli array 2-dimensionali per righe, si determini il numero di pagefaults del seguente frammento di codice C. ...int A[2][512], B[512], C[512];...N=512;for (i=0; i<2; i++){
for (j=0; j<N; j++){B[j/2 + i*256] = A[i][j] + C[j];
} }
[A] 11
[B] 10
[C] 12
[D] 8
domanda N. 11:
Si consideri un sistema operativo con paginazione su richiesta basato sull’algoritmo LeastRecently Used (LRU), che assegna ad ogni processo 5 frame. Se determini il numero di pagefaults per la squenza di riferimenti alle pagine:
5, 4, 3, 5, 2, 1, 4, 6, 3, 5, 2, 5, 3, 1, 7
[A] 12
[B] 10
[C] 11
[D] 9
282
domanda N. 12:
Sia dato un disco con 200 tracce e velocita di seek di 1 traccia per ms. All’istante t=0 ilsistema operativo sta servendo una richiesta sulla traccia 50 e in coda ci sono richieste per letracce (58; 15; 23; 25; 65; 55). Successivamente arrivano altre richieste all’istante t=7 per latraccia 49 e all’istante t=50 per la traccia 57. Si calcoli il tempo di ricerca complessivo perservire tutte le richieste secondo la politica Shortest Seek Time First (SSTF), trascurando lalatenza rotazionale e il tempo di trasferimento.
[A] 107
[B] 65
[C] 117
[D] 98
domanda N. 13:
Si determini la veridicita’ delle seguenti affermazioni:
a) L’algoritmo di scheduling del disco First Come First Served (FCFS) e l’algoritmo menoutilizzato nei sistemi interattivi di tipo generale perche e quello che ha il piu alto overheadper la gestione delle strutture dati necessarie all’algoritmo stesso.
b) I principali vantaggi di un sistema RAID 0 sono la semplicita di realizzazione e l’elevatavelocita di trasferimento.
[A] entrambe vere
[B] a) falsa ; b) vera
[C] entrambe false
[D] a) vera ; b) falsa
domanda N. 14:
Si consideri un disco che opera a 7200 rpm (giri al minuto), dove ogni traccia e composta da160 settori di 1024 byte ognuno. Si determini la velocita di trasferimento necessaria per poterleggere o scrivere una traccia intera durante una rotazione del disco.
[A] circa 4800 KB/sec
[B] circa 13400 KB/sec
[C] circa 19200 KB/sec
283
[D] circa 9600 KB/sec
domanda N. 15:
Si determini la veridicita’ delle seguenti affermazioni:
a) Lo schema di allocazione basato sulla File Allocation Table (FAT) di Microsoft e unoschema che, con poca richiesta di memoria (necessaria solo per la tabella) e con pochiacccessi al disco assicura una gestione efficiente del file system anche se di grandi di-mensioni. Per tale motivo e ancora alla base di tutti i file system dei sistemi operativiMicrosoft.
b) Se il numero di blocchi usati in un file system e molto elevato, la memoria richiesta perla gestione dei blocchi liberi mediante lista concatenata puo essere inferiore a quellarichiesta dalla bitmap, nonostante quest’ultima usi solo un bit per blocco.
[A] entrambe vere
[B] a) vera ; b) falsa
[C] entrambe false
[D] a) falsa ; b) vera
domanda N. 16:
Sia dato un file system che gestisca blocchi da 256 byte e indirizzi da 32 bit mediante unaallocazione indicizzata dei file. Si calcoli la dimensione massima di un file per questo filesystem supponendo che i blocchi indice contengono:
• 7 puntatori diretti a blocchi di dati
• 3 puntatori indiretti a blocchi di dati
[A] 266240 byte
[B] 330240 byte
[C] 67584 byte
[D] 50944 byte
domanda N. 17:
Si determini la veridicita delle seguenti affermazioni:
a) Si consideri un file formato da 100 record allocato su disco in forma indicizzata dove irecord del file sono memorizzati uno per blocco e il file descriptor e gia in memoriacentrale. Se non e stato fatto ancora nessun accesso al file, allora per cancellare il 50-morecord e necessario 1 accesso in lettura e 1 in scrittura.
284
b) Si consideri un file formato da 100 record allocato su disco in forma contigua dove i recorddel file sono memorizzati uno per blocco e il file descriptor e gia in memoria centrale. Sel’ultimo record letto e’ il record 10 allora per cancellare il 75-mo record sono necessari25 accessi in lettura e 1 in scrittura.
[A] a) falsa ; b) vera
[B] entrambe vere
[C] a) vera ; b) falsa
[D] entrambe false
285
================================================== compito N. 33 del 110609 ==========
=========================================
SVOLTO DA MATRICOLA
domanda 1
domanda 2
domanda 3
domanda 4
domanda 5
domanda 6
domanda 7
domanda 8
domanda 9
domanda 10
domanda 11
domanda 12
domanda 13
domanda 14
domanda 15
domanda 16
domanda 17
• 1.5 punti per ogni risposta esatta
• 0 punti per ogni risposta non data
• 0.5 punti di penalita’ per ogni risposta errata
FIRMA
286
============================================ CORSO DI SISTEMI OPERTIVI mod.A (gr. 1) ============ compito N. 34 del 110609 ==========
=========================================
domanda N. 1:
Si determini la veridicita’ delle seguenti affermazioni:
a) Un sistema operativo che e in grado di utilizzare in maniera efficiente le risorse che vengonoaggiunte al sistema e detto espandibile.
b) Le chiamate di sistema operano in maniera simile alle interruzioni, nel senso che quandoavviene una chiamata di sistema, il sistema si porta in modalita kernel e serve la richiestamediante una apposita routine di servizio.
[A] a) vera ; b) falsa
[B] entrambe vere
[C] a) falsa ; b) vera
[D] entrambe false
domanda N. 2:
Si determini la veridicita’ delle seguenti affermazioni:
a) Il principale vantaggio nell’uso di due threads cooperanti di uno stesso processo, al postodi due processi distinti e che nel primo caso non e necessario sincronizzare i threads inquanto gia condividono lo spazio di indirizzamento, mentre nel secondo caso e’ necessariol’uso dei semafori.
b) La comunicazione tra threads cooperanti di uno stesso processo e sempre piu efficientedella comunicazione tra processi distinti in quanto i threads possono utilizzare lo spaziodi indirizzamento condiviso senza fare uso degli strumenti di comunicazione tra processigestiti dal kernel.
[A] a) falsa ; b) vera
[B] a) vera ; b) falsa
[C] entrambe vere
[D] entrambe false
287
domanda N. 3:
Si determini il numero di processi generati (compreso quello mandato in esecuzione dalla lineadi comando) dal seguente codice C, compilato e fatto eseguire su un sistema con il sistemaoperativo Unix:main(){int pid, i;for (i = 0; i <= 3; i + +){
pid=fork();if (pid == 0 && i < 3) exit(0);
}exit(0);}
[A] 5
[B] 9
[C] 6
[D] 8
domanda N. 4:
Sia dato il seguente insieme di processi:
TA TC P
P1 0 6 3P2 3 3 4P3 7 5 5P4 10 5 2P5 15 4 3
dove TA e il tempo di arrivo nella coda dei processi pronti, TC e il tempo di utilizzo della CPUe P e la priorita (priorita massima = 5). Utilizzando l’algoritmo di scheduling a priorita conprelazione, si determini il tempo medio di esecuzione.
[A] 7.4
[B] 7.2
[C] 7.8
[D] 7.6
288
domanda N. 5:
Sia dato il seguente insieme di processi:
TA TC
P1 0 8P2 1 6P3 3 6P4 7 4P5 9 4
dove TA e il tempo di arrivo nella coda dei processi pronti e TC e il tempo di utilizzo della CPU.Utilizzando l’algoritmo di scheduling Round Robin con quanto di tempo q = 2, si determini iltempo medio di esecuzione.
[A] 20.0
[B] 19.6
[C] 19.2
[D] 20.4
domanda N. 6:
Siano dati tre processi che condividono una variabile x e i cui pseudo codici sono di seguitoriportati:
P1 P2 P3
wait(R) wait(S) wait(T);x = x+2; x = x+4; x = x-5;if(x >= 4)then if(x==1)then signal(S);signal(S); signal(T); wait(T);
else endif signal(R);signal(T); wait(S);
endifwait(R);signal(S);
Supponendo che i tre semafori binari R, S e T siano inizializzati rispettivamente a R = 1,S = 0 e T = 0, si determini quale valore iniziale della variabile x, tra quelli proposti nellerisposte, non comporti una situazione di stallo per i processi.
[A] x = 2
[B] x = 0
[C] x = 1
[D] x = 3
289
domanda N. 7:
Si determini la veridicita’ delle seguenti affermazioni:
a) Nei moderni sistemi operativi le tecniche di gestione della memoria centrale sono pocoimportanti a causa del basso costo economico delle stesse.
b) Andando dai livelli di memoria piu bassi (dispositivi secondari e terziari) a quelli piu alti(registri e cache), il costo economico per bit aumenta.
[A] entrambe vere
[B] a) vera ; b) falsa
[C] entrambe false
[D] a) falsa ; b) vera
domanda N. 8:
Si consideri un sistema di paginazione con tabella delle pagine in memoria centrale. Suppo-nendo che un riferimento alla memoria centrale richieda 180 ns e che il tempo di accesso airegistri TLB richieda 25 ns, si determini la percentuale di successo nell’accesso ai TLB (hitratio dei TLB) per ottenere un tempo medio di accesso di 232 ns.
[A] 88%
[B] 82%
[C] 85%
[D] 91%
domanda N. 9:
Si consideri un sistema con paginazione su due livelli. Per un processo che richiede 16 pagine,di seguito si riportano la tabella delle pagine di primo livello (P ′) e le 4 tabelle di secondolivello (P”0, P”1, P”2 e P”3), le quali hanno rispettivamente indirizzo iniziale 8192, 8704,9216 e 9728:
P ′
0 8192
1 8704
2 9216
3 9728
P”0
0 0
1 512
2 1024
3 1536
P”1
0 2048
1 2560
2 3072
3 3584
P”2
0 4096
1 4608
2 5120
3 5632
P”3
0 6144
1 6656
2 7168
3 7680
Si determini l’indirizzo fisico corrispondente all’indirizzo logico < 0, 3, 408 >
290
[A] 1944
[B] 7803
[C] 6267
[D] 4731
domanda N. 10:
Si consideri un sistema operativo con paginazione su richiesta basato sull’algoritmo First InFirst Out (FIFO), che assegna ad ogni processo 3 frame di 512 Byte e che richiede 2 Byte perla memorizzazione di un intero. Ponendo attenzione solo agli array A e B, e ricordando cheil linguaggio C memorizza gli array 2-dimensionali per righe, si determini il numero di pagefaults del seguente frammento di codice C. ...int A[1024], B[2][512];...N=512;for (i=0; i<2; i++){
for (j=0; j<N/2; j++){B[i][2*j] = A[i*N+j] + A[i*N+2*j];
} }
[A] 12
[B] 10
[C] 8
[D] 11
domanda N. 11:
Si consideri un sistema operativo con paginazione su richiesta basato sull’algoritmo First InFirst Out con seconda chance, che assegna ad ogni processo 5 frame. Se determini il numerodi page faults per la squenza di riferimenti alle pagine:
5, 4, 3, 5, 2, 1, 4, 6, 3, 5, 2, 5, 3, 1, 2
[A] 7
[B] 9
[C] 10
[D] 8
291
domanda N. 12:
Sia dato un disco con 200 tracce e velocita di seek di 1 traccia per ms. All’istante t=0il sistema operativo sta servendo una richiesta sulla traccia 100 e in coda ci sono richiesteper le tracce (55; 75; 80; 110; 135; 160). Successivamente arrivano altre richieste all’istantet=30 per la traccia 105 e all’istante t=135 per la traccia 100. Si calcoli il tempo di ricercacomplessivo in ms per servire tutte le richieste secondo la politica Shortest Seek Time First(SSTF), trascurando la latenza rotazionale e il tempo di trasferimento.
[A] 205
[B] 155
[C] 180
[D] 210
domanda N. 13:
Si determini la veridicita’ delle seguenti affermazioni:
a) Con un carico del disco pesante, la politica di scheduling SCAN andrebbe sempre preferitaalla politica C-SCAN a causa dell’overhead del ”ritorno a vuoto” della testina che inquesto caso diventa ancora piu significativo.
b) Il livello RAID con il piu alto overhead di memoria secondaria e il livello 5, a causa dellospazio utilizzato per la gestione delle informazioni relative alla parita.
[A] entrambe false
[B] entrambe vere
[C] a) vera ; b) falsa
[D] a) falsa ; b) vera
domanda N. 14:
Si consideri un disco che opera a 7200 rpm (giri al minuto), dove ogni traccia e composta da80 settori di 512 bytes ognuno. Si determini la velocita di trasferimento necessaria per poterleggere o scrivere una traccia intera durante una rotazione del disco.
[A] circa 19200 KB/sec
[B] circa 4800 KB/sec
[C] circa 9600 KB/sec
292
[D] circa 13400 KB/sec
domanda N. 15:
Si determini la veridicita’ delle seguenti affermazioni:
a) Un vantaggio dello schema di allocazione contigua di file in un file system e la velocita diaccesso poiche non si devono effettuare ulteriori operazioni di ricerche dei blocchi dopoaver individuato il primo blocco
b) Un problema nella prima versione della File Allocation Table di Microsoft (FAT12) era laframmentazione interna per i dischi di grandi dimensioni. Tale problema sussiste anchecon le nuove versioni FAT16 e FAT32, per cui esse vengono oramai utilizzate solo per ifile systen dei floppy disk.
[A] entrambe false
[B] entrambe vere
[C] a) vera ; b) falsa
[D] a) falsa ; b) vera
domanda N. 16:
Sia dato un file system che gestisca blocchi da 512 byte e indirizzi da 32 bit mediante unaallocazione indicizzata dei file. Si calcoli la dimensione massima di un file per questo filesystem supponendo che i blocchi indice contengono:
• 5 puntatori diretti a blocchi di dati
• 5 puntatori indiretti a blocchi di dati
[A] 271360 byte
[B] 50944 byte
[C] 330240 byte
[D] 67584 byte
domanda N. 17:
Si determini la veridicita delle seguenti affermazioni:
a) Si consideri un file formato da 100 record allocato su disco in forma concatenata dovei record del file sono memorizzati uno per blocco e il file descriptor e gia in memoriacentrale. Se l’ultimo record letto e’ il record 35, allora per cancellare il 60-mo recordsono necessari 25 accessi in lettura e 1 in scrittura.
293
b) Si consideri un file formato da 100 record allocato su disco in forma contigua dove i recorddel file sono memorizzati uno per blocco e il file descriptor e gia in memoria centrale. Sel’ultimo record letto e’ il record 10 allora per cancellare il 75-mo record sono necessari25 accessi in lettura e 25 in scrittura.
[A] a) falsa ; b) vera
[B] entrambe vere
[C] a) vera ; b) falsa
[D] entrambe false
294
================================================== compito N. 34 del 110609 ==========
=========================================
SVOLTO DA MATRICOLA
domanda 1
domanda 2
domanda 3
domanda 4
domanda 5
domanda 6
domanda 7
domanda 8
domanda 9
domanda 10
domanda 11
domanda 12
domanda 13
domanda 14
domanda 15
domanda 16
domanda 17
• 1.5 punti per ogni risposta esatta
• 0 punti per ogni risposta non data
• 0.5 punti di penalita’ per ogni risposta errata
FIRMA
295
============================================ CORSO DI SISTEMI OPERTIVI mod.A (gr. 1) ============ compito N. 35 del 110609 ==========
=========================================
domanda N. 1:
Si determini la veridicita’ delle seguenti affermazioni:
a) Uno dei principali vantaggi dei sistemi operativi con architettura monolitica e’ l’efficienza.Tale approccio, e oggi comunque poco utilizzato in quanto la complessita dei modernisistemi operativi lo rende poco praticabile.
b) Uno degli svantaggi delle macchine virtuali e’ la loro difficile realizzazione in quanto edifficile ottenere una replica della macchina fisica sottostante con strumenti software.
[A] entrambe false
[B] a) vera ; b) falsa
[C] entrambe vere
[D] a) falsa ; b) vera
domanda N. 2:
Si determini la veridicita’ delle seguenti affermazioni:
a) Le prestazioni di una qualunque applicazione multithreading e sempre piu’ efficiente nelcaso di una implementazione dei thread utente secondo il modello molti a uno rispettoad una implementazione secondo il modello uno a uno. Cio e’ dovuto al fatto che con ilmodello molti a uno, i thread a livello utente non richiamano il kernel per le operazionidi scheduling e sincronizzazione.
b) Uno svantaggio dell’implementazione dei threads secondo il modello uno a uno e la scarsaportabilita delle applicazioni, in quanto esse devono interfacciarsi direttamente con lechiamate di sistema relative al sistema operativo su cui deve essere eseguita l’applicazione.I sistemi operativi conformi ad interfacce standard, ad esempio POSIX, riducono il prob-lema.
[A] entrambe false
[B] a) falsa ; b) vera
[C] entrambe vere
[D] a) vera ; b) falsa
296
domanda N. 3:
Si determini il numero di processi generati (compreso quello mandato in esecuzione dalla lineadi comando) dal seguente codice C, compilato e fatto eseguire su un sistema con il sistemaoperativo Unix:main(){int pid, i;for (i = 0; i <= 3; i + +){
pid=fork();if (pid == 0 && i == 2) exit(0);
}exit(0);}
[A] 14
[B] 12
[C] 8
[D] 10
domanda N. 4:
Sia dato il seguente insieme di processi:
TA TC P
P1 1 7 2P2 2 5 4P3 6 4 5P4 7 7 1P5 10 2 3
dove TA e il tempo di arrivo nella coda dei processi pronti, TC e il tempo di utilizzo della CPUe P e la priorita (priorita massima = 5). Utilizzando l’algoritmo di scheduling a priorita conprelazione, si determini il tempo medio di esecuzione.
[A] 10.6
[B] 11
[C] 10.4
[D] 11.2
297
domanda N. 5:
Sia dato il seguente insieme di processi:
TA TC
P1 0 7P2 1 7P3 7 7P4 11 3P5 13 2
dove TA e il tempo di arrivo nella coda dei processi pronti e TC e il tempo di utilizzo della CPU.Utilizzando l’algoritmo di scheduling Round Robin con quanto di tempo q = 2, si determini iltempo medio di esecuzione.
[A] 15
[B] 14.6
[C] 14.4
[D] 14.8
domanda N. 6:
Siano dati tre processi che condividono una variabile x e i cui pseudo codici sono di seguitoriportati:
P1 P2 P3
wait(R) wait(S) wait(T)x = -x; x = x-1; x = x+1;signal(S); if (x > 0) then signal(R);wait(R); x = x-1; wait(T);x = -x; signal(T); print x;signal(T); else
signal(R);endif
Si determini l’output del processo P3 supponendo che inizialmente x = 1 e i tre semaforibinari siano inizializzati rispettivamente S = 0, R = 0, T = 1.
[A] 4
[B] 5
[C] 6
[D] 3
domanda N. 7:
Si determini la veridicita’ delle seguenti affermazioni:
298
a) Nei moderni sistemi operativi le tecniche di gestione della memoria centrale sono pocoimportanti a causa del basso costo economico delle stesse.
b) Andando dai livelli di memoria piu bassi (dispositivi secondari e terziari) a quelli piu alti(registri e cache), il costo economico per bit aumenta.
[A] entrambe false
[B] a) falsa ; b) vera
[C] entrambe vere
[D] a) vera ; b) falsa
domanda N. 8:
Sia dato un sistema che gestisce una memoria di 5120 byte mediante partizioni variabili. Sisupponga che nella memoria siano gia presenti 5 processi di dimensioni 740, 875, 250, 1450 e490 byte allocati rispettivamente a partire dagli indirizzi fisici 2048, 3072, 2788, 0 e 4096. Sidetermini l’indirizzo in cui verra allocato un ulteriore processo di 389 byte mediante la tecnicadel worst fit.
[A] 4586
[B] 3038
[C] 3947
[D] 1450
domanda N. 9:
Si consideri un sistema con paginazione su due livelli. Per un processo che richiede 16 pagine,ognuna di 512 byte, di seguito si riportano la tabella delle pagine di primo livello (P ′) e le4 tabelle di secondo livello (P”0, P”1, P”2 e P”3), le quali hanno rispettivamente indirizzofisico iniziale 0, 512, 1024 e 1536:
P ′
0 0
1 512
2 1024
3 1536
P”0
0 8192
1 11776
2 5120
3 14336
P”1
0 10752
1 7680
2 3072
3 6144
P”2
0 5632
1 10240
2 13824
3 11264
P”3
0 9216
1 3584
2 12800
3 14848
Si determini quale indirizzo fisico, tra quelli proposti, non appartiene allo spazio di indirizza-mento del processo.
[A] 15361
[B] 7682
299
[C] 8194
[D] 3586
domanda N. 10:
Si consideri un sistema operativo con paginazione su richiesta basato sull’algoritmo First InFirst Out (FIFO), che assegna ad ogni processo 3 frame di 512 Byte e che richiede 2 Byte perla memorizzazione di un intero. Ponendo attenzione solo agli array A e B, e ricordando cheil linguaggio C memorizza gli array 2-dimensionali per righe, si determini il numero di pagefaults del seguente frammento di codice C. ...int A[1024], B[2][512];...N=512;for (i=0; i<2; i++){
for (j=0; j<N/2; j++){B[i][2*j] = A[i*N+j] + A[i*N+2*j];
} }
[A] 11
[B] 12
[C] 10
[D] 8
domanda N. 11:
Si consideri un sistema operativo con paginazione su richiesta basato sull’algoritmo LeastRecently Used (LRU), che assegna ad ogni processo 5 frame. Se determini il numero di pagefaults per la squenza di riferimenti alle pagine:
5, 4, 3, 5, 2, 1, 4, 6, 3, 5, 2, 5, 3, 1, 7
[A] 11
[B] 9
[C] 12
[D] 10
domanda N. 12:
Sia dato un disco con 2000 tracce. Una operazione di lettura di un blocco richiede 3 ms
300
per lo spostamento tra due tracce adiacenti, 5 ms per la latenza rotazionale e 10 ms per iltrasferimento di un blocco di dati. Si calcoli il tempo necessario per leggere un file costituitoda 45 blocchi nel caso in cui questi ultimi siano distanti mediamente 15 tracce l’uno dall’altro.
[A] 2.04 sec
[B] 8.44 sec
[C] 2.7 sec
[D] 12.15 sec
domanda N. 13:
Si determini la veridicita’ delle seguenti affermazioni:
a) Il principale problema dei livelli 3 e 4 dei sistemi RAID che li rende meno preferibili rispettoal livello 5 e la necessita della generazione della parita, che comporta un supplemento dioverhead.
b) Utilizzando un disco con 7 ms di tempo di seek, 10 msec di latenza media rotazionale etempo di trasferimento di 20 msec, il tempo necessario per trasferire in memoria centraleun file composto da 15 blocchi, distanti mediamente 10 tracce, e di 1.5 secondi esatti.
[A] a) vera ; b) falsa
[B] entrambe false
[C] entrambe vere
[D] a) falsa ; b) vera
domanda N. 14:
Si calcoli la probabilitaa di perdere i dati con un sistema RAID level 1 con 6 dischi, se il MeanTime to Failure (MTF) e di 1500 giorni e il Mean Time to Repair (MTR) e di 15 giorni.
[A] 0.00009
[B] 0.00001
[C] 0.00002
[D] 0.00003
domanda N. 15:
Si determini la veridicita’ delle seguenti affermazioni:
301
a) Lo schema di allocazione basato sulla File Allocation Table (FAT) di Microsoft e unoschema che, con poca richiesta di memoria (necessaria solo per la tabella) e con pochiacccessi al disco assicura una gestione efficiente del file system anche se di grandi di-mensioni. Per tale motivo e ancora alla base di tutti i file system dei sistemi operativiMicrosoft.
b) Se il numero di blocchi usati in un file system e molto elevato, la memoria richiesta perla gestione dei blocchi liberi mediante lista concatenata puo essere inferiore a quellarichiesta dalla bitmap, nonostante quest’ultima usi solo un bit per blocco.
[A] a) falsa ; b) vera
[B] entrambe vere
[C] a) vera ; b) falsa
[D] entrambe false
domanda N. 16:
Sia dato un file system che gestisca blocchi da 512 byte e indirizzi da 32 bit mediante unaallocazione indicizzata dei file. Si calcoli la dimensione massima di un file per questo filesystem supponendo che i blocchi indice contengono:
• 5 puntatori diretti a blocchi di dati
• 5 puntatori indiretti a blocchi di dati
[A] 330240 byte
[B] 67584 byte
[C] 271360 byte
[D] 50944 byte
domanda N. 17:
Si determini la veridicita delle seguenti affermazioni:
a) Si consideri un file formato da 100 record allocato su disco in forma indicizzata dove irecord del file sono memorizzati uno per blocco e il file descriptor e gia in memoriacentrale. Se non e stato fatto ancora nessun accesso al file, allora per cancellare il 50-morecord e necessario 1 accesso in lettura e 1 in scrittura.
b) Si consideri un file formato da 100 record allocato su disco in forma contigua dove i recorddel file sono memorizzati uno per blocco e il file descriptor e gia in memoria centrale. Sel’ultimo record letto e’ il record 10 allora per cancellare il 75-mo record sono necessari25 accessi in lettura e 1 in scrittura.
302
[A] a) falsa ; b) vera
[B] entrambe vere
[C] a) vera ; b) falsa
[D] entrambe false
303
================================================== compito N. 35 del 110609 ==========
=========================================
SVOLTO DA MATRICOLA
domanda 1
domanda 2
domanda 3
domanda 4
domanda 5
domanda 6
domanda 7
domanda 8
domanda 9
domanda 10
domanda 11
domanda 12
domanda 13
domanda 14
domanda 15
domanda 16
domanda 17
• 1.5 punti per ogni risposta esatta
• 0 punti per ogni risposta non data
• 0.5 punti di penalita’ per ogni risposta errata
FIRMA
304
============================================ CORSO DI SISTEMI OPERTIVI mod.A (gr. 1) ============ compito N. 36 del 110609 ==========
=========================================
domanda N. 1:
Si determini la veridicita’ delle seguenti affermazioni:
a) L’ordine delle attivita’ di un sistema operativo e’ determinato da eventi che possono esseregenerati da dispositivi hardware, da errori in un programma in esecuzione oppure da unarichiesta specifica di un programma che intende accedere ai servizi del sistema operativostesso mediante chiamate di sistema.
b) Le routine di servizio relative ai differenti eventi di cui alla affermazione a) sono eseguitesempre in modalita’ sistema, anche nel caso di programmi utente che intendono accedereai servizi del sistema operativo attraverso le chiamate di sistema.
[A] entrambe vere
[B] a) falsa ; b) vera
[C] entrambe false
[D] a) vera ; b) falsa
domanda N. 2:
Si determini la veridicita’ delle seguenti affermazioni:
a) Il maggior svantaggio nell’uso dei segnali rispetto alle altre forme di IPC e l’impossibilitadi scambiare dati tra i processi.
b) Le principali azioni che un processo puo compiere quando riceve un segnale sono: catturare,ignorare o mascherare il segnale.
[A] a) vera ; b) falsa
[B] entrambe false
[C] a) falsa ; b) vera
[D] entrambe vere
domanda N. 3:
Si determini il numero di processi generati (compreso quello mandato in esecuzione dalla linea
305
di comando) dal seguente codice C, compilato e fatto eseguire su un sistema con il sistemaoperativo Unix:main(){int pid, i;for (i = 0; i <= 3; i + +){
pid=fork();if (pid == 0 && i == 2) exit(0);
}exit(0);}
[A] 10
[B] 14
[C] 12
[D] 8
domanda N. 4:
Sia dato il seguente insieme di processi:
TA TC
P1 0 10P2 1 8P3 4 3P4 9 2P5 12 4
dove TA e il tempo di arrivo nella coda dei processi pronti e TC e il tempo di utilizzo della CPU.Utilizzando l’algoritmo di scheduling dello Shortest Job First con prelazione, si determini iltempo medio di esecuzione.
[A] 10.0
[B] 10.4
[C] 10.2
[D] 9.8
domanda N. 5:
306
Sia dato il seguente insieme di processi:
TA TC
P1 0 3P2 1 5P3 3 7P4 8 5P5 10 6
dove TA e il tempo di arrivo nella coda dei processi pronti e TC e il tempo di utilizzo della CPU.Utilizzando l’algoritmo di scheduling Round Robin con quanto di tempo q = 2, si determini iltempo medio di esecuzione.
[A] 13.8
[B] 13.6
[C] 14
[D] 14.2
domanda N. 6:
Siano dati tre processi che condividono una variabile x e i cui pseudo codici sono di seguitoriportati:
P1 P2 P3
wait(R) wait(S) wait(T)x = x-5; x = x+2; x = x+3;signal(T); if(x >= 5)then if(x==1)thenwait(R); signal(T); signal(R);signal(S); else endif
signal(R); wait(T);endifwait(S);signal(T);
Supponendo che i tre semafori binari R, S e T siano inizializzati rispettivamente a R = 0,S = 1 e T = 0, si determini quale valore iniziale della variabile x, tra quelli proposti nellerisposte, non comporti una situazione di stallo per i processi.
[A] x = 1
[B] x = 2
[C] x = 3
[D] x = 4
307
domanda N. 7:
Si determini la veridicita’ delle seguenti affermazioni:
a) In generale, nel caso di gestione della memoria mediante paginazione, il problema dellaframmentazione aumenta col cresere della dimensione delle pagine.
b) La segmentazione e uno schema di gestione della memoria in cui un programma e divisoin moduli della stessa dimensione (i segmenti) che sono poi allocati in frame di memorialiberi.
[A] entrambe false
[B] entrambe vere
[C] a) falsa ; b) vera
[D] a) vera ; b) falsa
domanda N. 8:
Sia data una memoria di 32MByte gestita mediante paginazione con frame di 512 KByte e sisupponga che il sistema operativo richieda 6 MByte. Si calcoli la dimensione della memoriaeffettivamente ancora utilizzabile dopo l’allocazione di 5 processi rispettivamente di 2530,1840, 785, 3421, 2013 KByte.
[A] 21540 KByte
[B] 15360 KByte
[C] 19456 KByte
[D] 17408 KByte
domanda N. 9:
Si consideri un sistema con paginazione su due livelli. Per un processo che richiede 16 pagine,di seguito si riportano la tabella delle pagine di primo livello (P ′) e le 4 tabelle di secondolivello (P”0, P”1, P”2 e P”3), le quali hanno rispettivamente indirizzo iniziale 8192, 8704,9216 e 9728:
P ′
0 8192
1 8704
2 9216
3 9728
P”0
0 0
1 512
2 1024
3 1536
P”1
0 2048
1 2560
2 3072
3 3584
P”2
0 4096
1 4608
2 5120
3 5632
P”3
0 6144
1 6656
2 7168
3 7680
Si determini l’indirizzo fisico corrispondente all’indirizzo logico < 2, 0, 85 >
308
[A] 4693
[B] 4181
[C] 890
[D] 3671
domanda N. 10:
Si consideri un sistema operativo con paginazione su richiesta basato sull’algoritmo First InFirst Out (FIFO), che assegna ad ogni processo 3 frame di 512 Byte e che richiede 2 Byte perla memorizzazione di un intero. Ponendo attenzione solo agli array A, B e C, e ricordando cheil linguaggio C memorizza gli array 2-dimensionali per righe, si determini il numero di pagefaults del seguente frammento di codice C. ...int A[512], B[256], C[2][512];...N=256;for (i=0; i<2; i++){
for (j=0; j<N; j++){C[i][2*j] = A[i*N+j] + B[j];
} }
[A] 11
[B] 10
[C] 8
[D] 12
domanda N. 11:
Si consideri un sistema operativo con paginazione su richiesta basato sull’algoritmo LeastRecently Used (LRU), che assegna ad ogni processo 5 frame. Se determini il numero di pagefaults per la squenza di riferimenti alle pagine:
5, 4, 3, 5, 2, 1, 4, 6, 3, 5, 2, 5, 3, 1, 7
[A] 11
[B] 9
[C] 12
[D] 10
309
domanda N. 12:
Sia dato un disco con 200 tracce e velocita di seek di 1 traccia per ms. All’istante t=0 ilsistema operativo sta servendo una richiesta sulla traccia 70 e in coda ci sono richieste per letracce (55; 62; 65; 95; 97; 105). Successivamente arrivano altre richieste all’istante t=7 per latraccia 71 e all’istante t=50 per la traccia 63. Si calcoli il tempo di ricerca complessivo in msper servire tutte le richieste secondo la politica Shortest Seek Time First (SSTF), trascurandola latenza rotazionale e il tempo di trasferimento.
[A] 107
[B] 97
[C] 65
[D] 121
domanda N. 13:
Si determini la veridicita’ delle seguenti affermazioni:
a) Le testine di un disco memorizzano i dati in tracce, che sono una parte di unita piu grandichiamate settori, i quali formano i cilindri quando sono considerati verticalmente
b) L’algoritmo di scheduling del disco Shortest Seek Time First (SSTF) e il piu adatto aisistemi interattivi, in quanto assicura il minor tempo medio di servizio e non risente delproblema della posticipazione indefinita delle richieste.
[A] entrambe vere
[B] entrambe false
[C] a) vera ; b) falsa
[D] a) falsa ; b) vera
domanda N. 14:
Si calcoli la probabilitaa di perdere i dati con un sistema RAID level 1 con 6 dischi, se il MeanTime to Failure (MTF) e di 1300 giorni e il Mean Time to Repair (MTR) e di 16.9 giorni.
[A] 0.00009
[B] 0.00001
[C] 0.00011
[D] 0.00003
310
domanda N. 15:
Si determini la veridicita’ delle seguenti affermazioni:
a) Lo schema di allocazione basato sulla File Allocation Table (FAT) di Microsoft e unoschema che, con poca richiesta di memoria (necessaria solo per la tabella) e con pochiacccessi al disco assicura una gestione efficiente del file system anche se di grandi di-mensioni. Per tale motivo e ancora alla base di tutti i file system dei sistemi operativiMicrosoft.
b) Se il numero di blocchi usati in un file system e molto elevato, la memoria richiesta perla gestione dei blocchi liberi mediante lista concatenata puo essere inferiore a quellarichiesta dalla bitmap, nonostante quest’ultima usi solo un bit per blocco.
[A] a) falsa ; b) vera
[B] entrambe vere
[C] a) vera ; b) falsa
[D] entrambe false
domanda N. 16:
Sia dato un file system che gestisca blocchi da 1024 byte e indirizzi da 32 bit mediante unaallocazione indicizzata dei file. Si calcoli la dimensione massima di un file per questo filesystem supponendo che i blocchi indice contengono:
• 9 puntatori diretti a blocchi di dati
• 1 puntatori indiretti a blocchi di dati
[A] 50944 byte
[B] 266240 byte
[C] 330240 byte
[D] 271360 byte
domanda N. 17:
Si determini la veridicita delle seguenti affermazioni:
a) Si consideri un file formato da 100 record allocato su disco in forma concatenata dovei record del file sono memorizzati uno per blocco e il file descriptor e gia in memoriacentrale. Se l’ultimo record letto e’ il record 25, allora per cancellare il 60-mo recordsono necessari 35 accessi in lettura e 35 in scrittura.
311
b) Si consideri un file formato da 100 record allocato su disco in forma contigua dove i recorddel file sono memorizzati uno per blocco e il file descriptor e gia in memoria centrale. Sel’ultimo record letto e’ il record 10 allora per cancellare il 60-mo record sono necessari40 accessi in lettura e 1 in scrittura.
[A] entrambe vere
[B] entrambe false
[C] a) falsa ; b) vera
[D] a) vera ; b) falsa
312
================================================== compito N. 36 del 110609 ==========
=========================================
SVOLTO DA MATRICOLA
domanda 1
domanda 2
domanda 3
domanda 4
domanda 5
domanda 6
domanda 7
domanda 8
domanda 9
domanda 10
domanda 11
domanda 12
domanda 13
domanda 14
domanda 15
domanda 16
domanda 17
• 1.5 punti per ogni risposta esatta
• 0 punti per ogni risposta non data
• 0.5 punti di penalita’ per ogni risposta errata
FIRMA
313
============================================ CORSO DI SISTEMI OPERTIVI mod.A (gr. 1) ============ compito N. 37 del 110609 ==========
=========================================
domanda N. 1:
Si determini la veridicita’ delle seguenti affermazioni:
a) Un sistema operativo che e in grado di utilizzare in maniera efficiente le risorse che vengonoaggiunte al sistema e detto espandibile.
b) Le chiamate di sistema operano in maniera simile alle interruzioni, nel senso che quandoavviene una chiamata di sistema, il sistema si porta in modalita kernel e serve la richiestamediante una apposita routine di servizio.
[A] a) vera ; b) falsa
[B] entrambe vere
[C] a) falsa ; b) vera
[D] entrambe false
domanda N. 2:
Si determini la veridicita’ delle seguenti affermazioni:
a) Il maggior svantaggio nell’uso dei segnali rispetto alle altre forme di IPC e l’impossibilitadi scambiare dati tra i processi.
b) Le principali azioni che un processo puo compiere quando riceve un segnale sono: catturare,ignorare o mascherare il segnale.
[A] entrambe false
[B] a) falsa ; b) vera
[C] entrambe vere
[D] a) vera ; b) falsa
domanda N. 3:
Si determini il numero di processi generati (compreso quello mandato in esecuzione dalla lineadi comando) dal seguente codice C, compilato e fatto eseguire su un sistema con il sistemaoperativo Unix:
314
main(){int pid, i;for (i = 0; i <= 3; i + +){
pid=fork();if (pid == 0 && i < 2) exit(0);
}exit(0);}
[A] 6
[B] 8
[C] 9
[D] 10
domanda N. 4:
Sia dato il seguente insieme di processi:
TA TC
P1 0 8P2 0 2P3 3 4P4 5 6P5 9 2
dove TA e il tempo di arrivo nella coda dei processi pronti e TC e il tempo di utilizzo della CPU.Utilizzando l’algoritmo di scheduling dello Shortest Job First con prelazione, si determini iltempo medio di esecuzione.
[A] 8
[B] 7.5
[C] 8.5
[D] 7
domanda N. 5:
Sia dato il seguente insieme di processi:
TA TC
P1 0 8P2 3 6P3 5 8P4 9 4P5 11 2
315
dove TA e il tempo di arrivo nella coda dei processi pronti e TC e il tempo di utilizzo della CPU.Utilizzando l’algoritmo di scheduling Round Robin con quanto di tempo q = 2, si determini iltempo medio di esecuzione.
[A] 16.6
[B] 16
[C] 16.2
[D] 16.4
domanda N. 6:
Siano dati tre processi che condividono una variabile x e i cui pseudo codici sono di seguitoriportati:
P1 P2 P3
wait(R) wait(S) wait(T);x = x+2; x = x+4; x = x-5;if(x >= 4)then if(x==1)then signal(S);signal(S); signal(T); wait(T);
else endif signal(R);signal(T); wait(S);
endifwait(R);signal(S);
Supponendo che i tre semafori binari R, S e T siano inizializzati rispettivamente a R = 1,S = 0 e T = 0, si determini quale valore iniziale della variabile x, tra quelli proposti nellerisposte, non comporti una situazione di stallo per i processi.
[A] x = 1
[B] x = 3
[C] x = 2
[D] x = 0
domanda N. 7:
Si determini la veridicita’ delle seguenti affermazioni:
a) Andando dai livelli di memoria piu bassi (dispositivi secondari e terziari) a quelli piu alti(registri e cache), il tempo di accesso diminuisce.
b) In generale, l’overhead a cui si va in contro con l’allocazione non contigua dei processi inmemoria e compensata dal vantaggio di un aumento del grado di multiprogrammazione.
316
[A] entrambe false
[B] entrambe vere
[C] a) falsa ; b) vera
[D] a) vera ; b) falsa
domanda N. 8:
Sia dato un sistema che gestisce una memoria di 5120 byte mediante partizioni variabili. Sisupponga che nella memoria siano gia presenti 5 processi di dimensioni 740, 875, 250, 1450 e490 byte rispettivamente allocati negli indirizzi fisici 2048, 3072, 2788, 0 e 4096. Si determinil’indirizzo in cui verra allocato un ulteriore processo di 389 byte mediante la tecnica del bestfit.
[A] 3947
[B] 4586
[C] 1450
[D] 3038
domanda N. 9:
Si consideri un sistema con paginazione su due livelli. Per un processo che richiede 16 pagine,di seguito si riportano la tabella delle pagine di primo livello (P ′) e le 4 tabelle di secondolivello (P”0, P”1, P”2 e P”3), le quali hanno rispettivamente indirizzo iniziale 8192, 8704,9216 e 9728:
P ′
0 8192
1 8704
2 9216
3 9728
P”0
0 0
1 512
2 1024
3 1536
P”1
0 2048
1 2560
2 3072
3 3584
P”2
0 4096
1 4608
2 5120
3 5632
P”3
0 6144
1 6656
2 7168
3 7680
Si determini l’indirizzo fisico corrispondente all’indirizzo logico < 2, 0, 85 >
[A] 4181
[B] 890
[C] 3671
[D] 4693
317
domanda N. 10:
Si consideri un sistema operativo con paginazione su richiesta basato sull’algoritmo First InFirst Out (FIFO), che assegna ad ogni processo 3 frame di 512 Byte e che richiede 2 Byte perla memorizzazione di un intero. Ponendo attenzione solo agli array A, B e C, e ricordando cheil linguaggio C memorizza gli array 2-dimensionali per righe, si determini il numero di pagefaults del seguente frammento di codice C. ...int A[2][512], B[2][256], C[512];...N=256;for (i=0; i<2; i++){
for (j=0; j<N; j++){C[i*N+j] = A[i][2*j] + B[i][j];
} }
[A] 12
[B] 8
[C] 10
[D] 11
domanda N. 11:
Si consideri un sistema operativo con paginazione su richiesta basato sull’algoritmo del Work-ing Set con dimensione della finestra di osservazione w = 6. Si determini, a partire dall’istantet = 6, il minimo e massimo numero di frame che il sistema assegna ad un processo di 6 pagineche vengono referenziate nel seguente ordine:
1, 2, 4, 1, 2, 4, 3, 4, 3, 3, 3, 4, 5, 3, 4, 5, 6, 4, 5, 6, 5, 5, 6, 5, 4
[A] min=3, max=5
[B] min=3, max=4
[C] min=2, max=5
[D] min=2, max=4
domanda N. 12:
Sia dato un disco con 2000 tracce. Una operazione di lettura di un blocco richiede 3 msper lo spostamento tra due tracce adiacenti, 5 ms per la latenza rotazionale e 10 ms per iltrasferimento di un blocco di dati. Si calcoli il tempo necessario per leggere un file costituitoda 45 blocchi nel caso in cui questi ultimi siano distanti mediamente 15 tracce l’uno dall’altro.
318
[A] 8.44 sec
[B] 2.7 sec
[C] 12.15 sec
[D] 2.04 sec
domanda N. 13:
Si determini la veridicita’ delle seguenti affermazioni:
a) Il principale motivo per cui l’algoritmo di scheduling del disco Shortest Seek Time First epoco utilizzato nei sistemi di tipo generale e la possibilita di posticipazione indefinita dialcune richieste.
b) Uno dei parametri per la valutazione delle strategie di scheduling del disco e la varianzadei tempi di risposta che e una misura del numero di richieste servite per unita di tempo
[A] a) vera ; b) falsa
[B] entrambe false
[C] a) falsa ; b) vera
[D] entrambe vere
domanda N. 14:
Si calcoli la probabilitaa di perdere i dati con un sistema RAID level 5 con 5 dischi, se il MeanTime to Failure (MTF) e di 1500 giorni e il Mean Time to Repair (MTR) e di 24.75 giorni.
[A] 0.00011
[B] 0.0002
[C] 0.00003
[D] 0.00009
domanda N. 15:
Si determini la veridicita’ delle seguenti affermazioni:
a) Per motivi di efficienza, la lista dei blocchi liberi e generalmente ordinata secondo l’indicedel blocco.
b) I principali compiti di un file system sono: gestire le strutture logiche del file system(directory e file), organizzare i file in blocchi e gestirne l’allocazione, verificare l’integritadei dati, gestire lo spazio libero e verificare che i dati nei file non contengano errori.
319
[A] entrambe vere
[B] a) falsa ; b) vera
[C] entrambe false
[D] a) vera ; b) falsa
domanda N. 16:
Sia dato un file system che gestisca blocchi da 1024 byte e indirizzi da 32 bit mediante unaallocazione indicizzata dei file. Si calcoli la dimensione massima di un file per questo filesystem supponendo che i blocchi indice contengono:
• 9 puntatori diretti a blocchi di dati
• 1 puntatori indiretti a blocchi di dati
[A] 330240 byte
[B] 271360 byte
[C] 50944 byte
[D] 266240 byte
domanda N. 17:
Si determini la veridicita delle seguenti affermazioni:
a) Si consideri un file formato da 100 record allocato su disco in forma concatenata dovei record del file sono memorizzati uno per blocco e il file descriptor e gia in memoriacentrale. Se l’ultimo record letto e’ il record 35, allora per cancellare il 60-mo recordsono necessari 25 accessi in lettura e 1 in scrittura.
b) Si consideri un file formato da 100 record allocato su disco in forma contigua dove i recorddel file sono memorizzati uno per blocco e il file descriptor e gia in memoria centrale. Sel’ultimo record letto e’ il record 10 allora per cancellare il 75-mo record sono necessari25 accessi in lettura e 25 in scrittura.
[A] a) falsa ; b) vera
[B] entrambe vere
[C] a) vera ; b) falsa
[D] entrambe false
320
================================================== compito N. 37 del 110609 ==========
=========================================
SVOLTO DA MATRICOLA
domanda 1
domanda 2
domanda 3
domanda 4
domanda 5
domanda 6
domanda 7
domanda 8
domanda 9
domanda 10
domanda 11
domanda 12
domanda 13
domanda 14
domanda 15
domanda 16
domanda 17
• 1.5 punti per ogni risposta esatta
• 0 punti per ogni risposta non data
• 0.5 punti di penalita’ per ogni risposta errata
FIRMA
321
============================================ CORSO DI SISTEMI OPERTIVI mod.A (gr. 1) ============ compito N. 38 del 110609 ==========
=========================================
domanda N. 1:
Si determini la veridicita’ delle seguenti affermazioni:
a) La principale differenza tra un sistema operativo con architettura a strati ed uno con ar-chitettura a microkernel e che nel primo caso e consentita la comunicazione solo tramoduli appartenenti a strati adiacenti, mentre nel secondo caso e consentita la comuni-cazione attraverso tutti i moduli del sistema attraverso il kernel.
b) Per tolleranza ai guasti si intendela capacita di un sisietam operativo di correggere eventualierrori delle applicazioni degli utenti.
[A] a) vera ; b) falsa
[B] a) falsa ; b) vera
[C] entrambe vere
[D] entrambe false
domanda N. 2:
Si determini la veridicita’ delle seguenti affermazioni:
a) Le prestazioni di una qualunque applicazione multithreading e sempre piu’ efficiente nelcaso di una implementazione dei thread utente secondo il modello molti a uno rispettoad una implementazione secondo il modello uno a uno. Cio e’ dovuto al fatto che con ilmodello molti a uno, i thread a livello utente non richiamano il kernel per le operazionidi scheduling e sincronizzazione.
b) Uno svantaggio dell’implementazione dei threads secondo il modello uno a uno e la scarsaportabilita delle applicazioni, in quanto esse devono interfacciarsi direttamente con lechiamate di sistema relative al sistema operativo su cui deve essere eseguita l’applicazione.I sistemi operativi conformi ad interfacce standard, ad esempio POSIX, riducono il prob-lema.
[A] a) falsa ; b) vera
[B] entrambe vere
[C] a) vera ; b) falsa
[D] entrambe false
322
domanda N. 3:
Si determini il numero di processi generati (compreso quello mandato in esecuzione dalla lineadi comando) dal seguente codice C, compilato e fatto eseguire su un sistema con il sistemaoperativo Unix:main(){int pid, i;for (i = 0; i <= 3; i + +){
pid=fork();if (pid == 0 && i >= 0) exit(0);
}exit(0);}
[A] 8
[B] 7
[C] 9
[D] 5
domanda N. 4:
Sia dato il seguente insieme di processi:
TA TC P
P1 1 7 2P2 2 5 4P3 6 4 5P4 7 7 1P5 10 2 3
dove TA e il tempo di arrivo nella coda dei processi pronti, TC e il tempo di utilizzo della CPUe P e la priorita (priorita massima = 5). Utilizzando l’algoritmo di scheduling a priorita conprelazione, si determini il tempo medio di esecuzione.
[A] 10.6
[B] 11
[C] 10.4
[D] 11.2
323
domanda N. 5:
Sia dato il seguente insieme di processi:
TA TC
P1 0 8P2 1 6P3 3 6P4 7 4P5 9 4
dove TA e il tempo di arrivo nella coda dei processi pronti e TC e il tempo di utilizzo della CPU.Utilizzando l’algoritmo di scheduling Round Robin con quanto di tempo q = 2, si determini iltempo medio di esecuzione.
[A] 20.0
[B] 19.6
[C] 19.2
[D] 20.4
domanda N. 6:
Siano dati tre processi che condividono una variabile x e i cui pseudo codici sono di seguitoriportati:
P1 P2 P3
wait(R) wait(S) wait(T)x = x+2; x = x*2; x = x+1;if (x > 0) then signal(T); signal(S);
x = -1; wait(S); wait(T)endif x = -x; x = x+1print x; signal(R); signal(S);
Si determini l’output del processo P1 supponendo che inizialmente x = 1 e i tre semaforibinari siano inizializzati rispettivamente R = 0, S = 0, T = 1.
[A] -4
[B] -2
[C] -1
[D] -3
domanda N. 7:
Si determini la veridicita’ delle seguenti affermazioni:
324
a) In un sistema operativo con memoria virtuale, una differenza tra indirizzo logico e indirizzofisico e che il primo e generato dalla CPU mentre il secondo e generato dal MemoryManagement Unit (MMU).
b) Uno spazio di indirizzamento di 8 pagine, ognuna di 1024 byte, richiede 13 bit.
[A] a) falsa ; b) vera
[B] a) vera ; b) falsa
[C] entrambe false
[D] entrambe vere
domanda N. 8:
Si consideri un sistema di paginazione con tabella delle pagine in memoria centrale. Suppo-nendo che un riferimento alla memoria centrale richieda 180 ns e che il tempo di accesso airegistri TLB richieda 25 ns, si determini la percentuale di successo nell’accesso ai TLB (hitratio dei TLB) per ottenere un tempo medio di accesso di 232 ns.
[A] 88%
[B] 82%
[C] 85%
[D] 91%
domanda N. 9:
Si consideri un sistema con paginazione su due livelli. Per un processo che richiede 16 pagine,di seguito si riportano la tabella delle pagine di primo livello (P ′) e le 4 tabelle di secondolivello (P”0, P”1, P”2 e P”3), le quali hanno rispettivamente indirizzo iniziale 8192, 8704,9216 e 9728:
P ′
0 8192
1 8704
2 9216
3 9728
P”0
0 0
1 512
2 1024
3 1536
P”1
0 2048
1 2560
2 3072
3 3584
P”2
0 4096
1 4608
2 5120
3 5632
P”3
0 6144
1 6656
2 7168
3 7680
Si determini l’indirizzo fisico corrispondente all’indirizzo logico < 2, 1, 248 >
[A] 3320
[B] 4856
[C] 6904
325
[D] 1272
domanda N. 10:
Si consideri un sistema operativo con paginazione su richiesta basato sull’algoritmo First InFirst Out (FIFO), che assegna ad ogni processo 3 frame di 512 Byte e che richiede 2 Byte perla memorizzazione di un intero. Ponendo attenzione solo agli array A, B e C, e ricordando cheil linguaggio C memorizza gli array 2-dimensionali per righe, si determini il numero di pagefaults del seguente frammento di codice C. ...int A[2][512], B[512], C[512];...N=512;for (i=0; i<2; i++){
for (j=0; j<N; j++){C[j] = B[j/2 + i*256] + A[i][j];
} }
[A] 8
[B] 10
[C] 11
[D] 12
domanda N. 11:
Si consideri un sistema opereativo con paginazione su richiesta basato sull’algoritmo LeastRecently Used (LRU), che assegna ad ogni processo 5 frame. Si determini il numero di pagefaults per la seguente sequenza di riferimenti alle pagine:
4, 2, 7, 4, 7, 1, 5, 3, 1, 6, 5, 2, 6, 1, 3, 7
[A] 7
[B] 9
[C] 8
[D] 10
domanda N. 12:
Sia dato un disco con 200 tracce e velocita di seek di 1 traccia per ms. All’istante t=0 ilsistema operativo sta servendo una richiesta sulla traccia 70 e in coda ci sono richieste per letracce (55; 62; 65; 95; 97; 105). Successivamente arrivano altre richieste all’istante t=7 per la
326
traccia 71 e all’istante t=50 per la traccia 63. Si calcoli il tempo di ricerca complessivo in msper servire tutte le richieste secondo la politica Shortest Seek Time First (SSTF), trascurandola latenza rotazionale e il tempo di trasferimento.
[A] 107
[B] 97
[C] 65
[D] 121
domanda N. 13:
Si determini la veridicita’ delle seguenti affermazioni:
a) Il principale problema dei livelli 3 e 4 dei sistemi RAID che li rende meno preferibili rispettoal livello 5 e la necessita della generazione della parita, che comporta un supplemento dioverhead.
b) Utilizzando un disco con 7 ms di tempo di seek, 10 msec di latenza media rotazionale etempo di trasferimento di 20 msec, il tempo necessario per trasferire in memoria centraleun file composto da 15 blocchi, distanti mediamente 10 tracce, e di 1.5 secondi esatti.
[A] a) vera ; b) falsa
[B] entrambe false
[C] entrambe vere
[D] a) falsa ; b) vera
domanda N. 14:
Si consideri un disco che opera a 7200 rpm (giri al minuto), dove ogni traccia e composta da160 settori di 1024 byte ognuno. Si determini la velocita di trasferimento necessaria per poterleggere o scrivere una traccia intera durante una rotazione del disco.
[A] circa 9600 KB/sec
[B] circa 4800 KB/sec
[C] circa 13400 KB/sec
[D] circa 19200 KB/sec
domanda N. 15:
Si determini la veridicita’ delle seguenti affermazioni:
327
a) Lo schema di allocazione basato sulla File Allocation Table (FAT) di Microsoft e unoschema che, con poca richiesta di memoria (necessaria solo per la tabella) e con pochiacccessi al disco assicura una gestione efficiente del file system anche se di grandi di-mensioni. Per tale motivo e ancora alla base di tutti i file system dei sistemi operativiMicrosoft.
b) Se il numero di blocchi usati in un file system e molto elevato, la memoria richiesta perla gestione dei blocchi liberi mediante lista concatenata puo essere inferiore a quellarichiesta dalla bitmap, nonostante quest’ultima usi solo un bit per blocco.
[A] entrambe vere
[B] a) vera ; b) falsa
[C] entrambe false
[D] a) falsa ; b) vera
domanda N. 16:
Sia dato un file system che gestisca blocchi da 256 byte e indirizzi da 16 bit mediante unaallocazione indicizzata dei file. Si calcoli la dimensione massima di un file per questo filesystem supponendo che i blocchi indice contengono:
• 8 puntatori diretti a blocchi di dati
• 2 puntatori indiretti a blocchi di dati
[A] 266240 byte
[B] 67584 byte
[C] 271360 byte
[D] 50944 byte
domanda N. 17:
Si determini la veridicita delle seguenti affermazioni:
a) Si consideri un file formato da 100 record allocato su disco in forma indicizzata dove irecord del file sono memorizzati uno per blocco e il file descriptor e gia in memoriacentrale. Se non e stato fatto ancora nessun accesso al file, allora per cancellare il 60-morecord sono necessari 35 accessi in lettura e 1 in scrittura.
b) Si consideri un file formato da 100 record allocato su disco in forma contigua dove i recorddel file sono memorizzati uno per blocco e il file descriptor e gia in memoria centrale. Sel’ultimo record letto e’ il record 10 allora per cancellare il 60-mo record sono necessari40 accessi in lettura e 40 in scrittura.
328
[A] entrambe vere
[B] entrambe false
[C] a) falsa ; b) vera
[D] a) vera ; b) falsa
329
================================================== compito N. 38 del 110609 ==========
=========================================
SVOLTO DA MATRICOLA
domanda 1
domanda 2
domanda 3
domanda 4
domanda 5
domanda 6
domanda 7
domanda 8
domanda 9
domanda 10
domanda 11
domanda 12
domanda 13
domanda 14
domanda 15
domanda 16
domanda 17
• 1.5 punti per ogni risposta esatta
• 0 punti per ogni risposta non data
• 0.5 punti di penalita’ per ogni risposta errata
FIRMA
330
============================================ CORSO DI SISTEMI OPERTIVI mod.A (gr. 1) ============ compito N. 39 del 110609 ==========
=========================================
domanda N. 1:
Si determini la veridicita’ delle seguenti affermazioni:
a) L’ordine delle attivita’ di un sistema operativo e’ determinato da eventi che possono esseregenerati da dispositivi hardware, da errori in un programma in esecuzione oppure da unarichiesta specifica di un programma che intende accedere ai servizi del sistema operativostesso mediante chiamate di sistema.
b) Le routine di servizio relative ai differenti eventi di cui alla affermazione a) sono eseguitesempre in modalita’ sistema, anche nel caso di programmi utente che intendono accedereai servizi del sistema operativo attraverso le chiamate di sistema.
[A] entrambe vere
[B] a) falsa ; b) vera
[C] entrambe false
[D] a) vera ; b) falsa
domanda N. 2:
Si determini la veridicita’ delle seguenti affermazioni:
a) L’insieme delle informazioni che caratterizzano un processo in esecuzione e che sono mem-orizzate nel Process Control Block e chiamato contesto. Per tale motivo la proceura chesospende un processo in esecuzione per mandarne un altro e detta cambio di contesto(context switch).
b) Il tempo medio di esecuzione di un insieme di processi di un sistema operativo time sharingdiminuisce sempre quando aumenta la frequenza dei context switch, in quanto i processiin esecuzione si avvicendano piu rapidemente nell’uso della CPU.
[A] entrambe false
[B] a) falsa ; b) vera
[C] entrambe vere
[D] a) vera ; b) falsa
331
domanda N. 3:
Si determini il numero di processi generati (compreso quello mandato in esecuzione dalla lineadi comando) dal seguente codice C, compilato e fatto eseguire su un sistema con il sistemaoperativo Unix:main(){int pid, i;for (i = 0; i <= 3; i + +){
pid=fork();if (pid == 0 && i == 1) exit(0);
}exit(0);}
[A] 9
[B] 10
[C] 6
[D] 8
domanda N. 4:
Sia dato il seguente insieme di processi:
TA TC
P1 0 10P2 1 8P3 4 3P4 9 2P5 12 4
dove TA e il tempo di arrivo nella coda dei processi pronti e TC e il tempo di utilizzo della CPU.Utilizzando l’algoritmo di scheduling dello Shortest Job First con prelazione, si determini iltempo medio di esecuzione.
[A] 10.0
[B] 10.4
[C] 10.2
[D] 9.8
332
domanda N. 5:
Sia dato il seguente insieme di processi:
TA TC
P1 0 3P2 1 5P3 3 7P4 8 5P5 10 6
dove TA e il tempo di arrivo nella coda dei processi pronti e TC e il tempo di utilizzo della CPU.Utilizzando l’algoritmo di scheduling Round Robin con quanto di tempo q = 2, si determini iltempo medio di esecuzione.
[A] 13.6
[B] 14
[C] 14.2
[D] 13.8
domanda N. 6:
Siano dati tre processi che condividono una variabile x e i cui pseudo codici sono di seguitoriportati:
P1 P2 P3
wait(R) wait(S) wait(T)x = x+2; x = x*2; x = x+1;if (x > 0) then signal(T); signal(S);
x = -1; wait(S); wait(T)endif x = -x; x = x+1print x; signal(R); signal(S);
Si determini l’output del processo P1 supponendo che inizialmente x = 1 e i tre semaforibinari siano inizializzati rispettivamente R = 0, S = 0, T = 1.
[A] -1
[B] -3
[C] -4
[D] -2
domanda N. 7:
Si determini la veridicita’ delle seguenti affermazioni:
333
a) In un sistema con memoria virtuale con tabella delle pagine multilivello e possibile indi-rizzare un area di memoria maggiore rispetto a quella indirizzabile con una tradizionaletabella delle pagine ad un solo livello.
b) Si consideri un sistema con memoria virtuale che rappresenti un indirizzo virtuale v me-diante la coppia (b, d) usando 32 bit. Se la dimensione delle pagine e di 8192 byte allorail numero di pagina b e specificato usando n = 20 bit.
[A] a) vera ; b) falsa
[B] entrambe vere
[C] entrambe false
[D] a) falsa ; b) vera
domanda N. 8:
Sia data una memoria di 32MByte gestita mediante paginazione con frame di 512 KByte e sisupponga che il sistema operativo richieda 7 MByte. Si calcoli la dimensione della memoriaeffettivamente ancora utilizzabile dopo l’allocazione di 5 processi rispettivamente di 1229, 341,2831, 1710, 2116 KByte.
[A] 15360 KByte
[B] 19456 KByte
[C] 21540 KByte
[D] 15872 KByte
domanda N. 9:
Si consideri un sistema con paginazione su due livelli. Per un processo che richiede 16 pagine,di seguito si riportano la tabella delle pagine di primo livello (P ′) e le 4 tabelle di secondolivello (P”0, P”1, P”2 e P”3), le quali hanno rispettivamente indirizzo iniziale 8192, 8704,9216 e 9728:
P ′
0 8192
1 8704
2 9216
3 9728
P”0
0 0
1 512
2 1024
3 1536
P”1
0 2048
1 2560
2 3072
3 3584
P”2
0 4096
1 4608
2 5120
3 5632
P”3
0 6144
1 6656
2 7168
3 7680
Si determini l’indirizzo fisico corrispondente all’indirizzo logico < 3, 3, 123 >
[A] 7291
[B] 7803
334
[C] 635
[D] 2171
domanda N. 10:
Si consideri un sistema operativo con paginazione su richiesta basato sull’algoritmo First InFirst Out (FIFO), che assegna ad ogni processo 3 frame di 512 Byte e che richiede 2 Byte perla memorizzazione di un intero. Ponendo attenzione solo agli array A, B e C, e ricordando cheil linguaggio C memorizza gli array 2-dimensionali per righe, si determini il numero di pagefaults del seguente frammento di codice C. ...int A[2][512], B[2][256], C[512];...N=256;for (i=0; i<2; i++){
for (j=0; j<N; j++){C[i*N+j] = A[i][2*j] + B[i][j];
} }
[A] 12
[B] 8
[C] 10
[D] 11
domanda N. 11:
Si consideri un sistema opereativo con paginazione su richiesta basato sull’algoritmo FIFO conseconda chance, che assegna ad ogni processo 5 frame. Si determini il numero di page faultsper la seguente sequenza di riferimenti alle pagine:
7, 4, 5, 7, 3, 6, 4, 1, 2, 7, 4, 6, 5, 4, 7
[A] 9
[B] 10
[C] 7
[D] 8
domanda N. 12:
Sia dato un disco con 200 tracce e velocita di seek di 1 traccia per ms. All’istante t=0 il
335
sistema operativo sta servendo una richiesta sulla traccia 50 e in coda ci sono richieste per letracce (58; 15; 23; 25; 65; 55). Successivamente arrivano altre richieste all’istante t=7 per latraccia 49 e all’istante t=50 per la traccia 57. Si calcoli il tempo di ricerca complessivo perservire tutte le richieste secondo la politica Shortest Seek Time First (SSTF), trascurando lalatenza rotazionale e il tempo di trasferimento.
[A] 107
[B] 65
[C] 117
[D] 98
domanda N. 13:
Si determini la veridicita’ delle seguenti affermazioni:
a) La motivazione originale per l’introduzione dei sistemi RAID e stata l’osservazione che lavelocita di trasferimento cresceva ad un tasso molto inferiore a quello della crescita siadella capacita dei dischi sia della potenza di elaborazione delle CPU.
b) L’algorimo di scheduling del disco First Come First Served tende ad avere una accettabilevarianza dei tempi di risposta a spese del numero di richieste servite per unita di tempo.
[A] entrambe false
[B] a) falsa ; b) vera
[C] entrambe vere
[D] a) vera ; b) falsa
domanda N. 14:
Si consideri un disco che opera a 12000 rpm (giri al minuto), dove ogni traccia e composta da80 settori di 512 bytes ognuno. Si determini la velocita di trasferimento necessaria per poterleggere o scrivere una traccia intera durante una rotazione del disco.
[A] circa 8000 KB/sec
[B] circa 16000 KB/sec
[C] circa 9600 KB/sec
[D] circa 19200 KB/sec
domanda N. 15:
Si determini la veridicita’ delle seguenti affermazioni:
336
a) Uno dei vantaggi della bitmap rispetto alla lista dei blocchi liberi e la possibilita, per ilsistema, di determinare in maniera efficiente l’esistenza di un certo numero di blocchiliberi contigui.
b) In un file system con struttura gerarchica (ad es. Unix), il nome di un file e formatodall’insieme dei nomi delle directory a partire dalla directory utente fino al file.
[A] entrambe false
[B] entrambe vere
[C] a) falsa ; b) vera
[D] a) vera ; b) falsa
domanda N. 16:
Sia dato un file system di 2 MB che gestisca i file mediante allocazione tabellare (ad es. unaFile Allocation Table). Si determini la dimensione della tabella nel caso in cui i blocchi deldisco siano di 1024 byte.
[A] ∼ 2.7 KB
[B] ∼ 6 KB
[C] ∼ 64 KB
[D] ∼ 16 KB
domanda N. 17:
Si determini la veridicita delle seguenti affermazioni:
a) Si consideri un file formato da 100 record allocato su disco in forma concatenata dovei record del file sono memorizzati uno per blocco e il file descriptor e gia in memoriacentrale. Se l’ultimo record letto e’ il record 35, allora per cancellare il 60-mo recordsono necessari 25 accessi in lettura e 1 in scrittura.
b) Si consideri un file formato da 100 record allocato su disco in forma contigua dove i recorddel file sono memorizzati uno per blocco e il file descriptor e gia in memoria centrale. Sel’ultimo record letto e’ il record 10 allora per cancellare il 75-mo record sono necessari25 accessi in lettura e 25 in scrittura.
[A] entrambe false
[B] a) falsa ; b) vera
[C] entrambe vere
[D] a) vera ; b) falsa
337
================================================== compito N. 39 del 110609 ==========
=========================================
SVOLTO DA MATRICOLA
domanda 1
domanda 2
domanda 3
domanda 4
domanda 5
domanda 6
domanda 7
domanda 8
domanda 9
domanda 10
domanda 11
domanda 12
domanda 13
domanda 14
domanda 15
domanda 16
domanda 17
• 1.5 punti per ogni risposta esatta
• 0 punti per ogni risposta non data
• 0.5 punti di penalita’ per ogni risposta errata
FIRMA
338
============================================ CORSO DI SISTEMI OPERTIVI mod.A (gr. 1) ============ compito N. 40 del 110609 ==========
=========================================
domanda N. 1:
Si determini la veridicita’ delle seguenti affermazioni:
a) La principale differenza tra un sistema operativo con architettura a strati ed uno con ar-chitettura a microkernel e che nel primo caso e consentita la comunicazione solo tramoduli appartenenti a strati adiacenti, mentre nel secondo caso e consentita la comuni-cazione attraverso tutti i moduli del sistema attraverso il kernel.
b) Per tolleranza ai guasti si intendela capacita di un sisietam operativo di correggere eventualierrori delle applicazioni degli utenti.
[A] entrambe false
[B] a) vera ; b) falsa
[C] a) falsa ; b) vera
[D] entrambe vere
domanda N. 2:
Si determini la veridicita’ delle seguenti affermazioni:
a) Il sistema operativo accede molto spesso ai Process Control Blocks. Di conseguenza moltiprocessori possiedono un registro hardware che fa riferimento al PCB del processo inesecuzione in modo da facilitare il cambio di contesto.
b) Una delle operazioni che un processo puo’ effettuare quando riceve un segnale e di ignorarlo.Con tale termine si intende la capacita di redirigere il segnale ad un altro processo.
[A] entrambe false
[B] a) falsa ; b) vera
[C] entrambe vere
[D] a) vera ; b) falsa
domanda N. 3:
Si determini il numero di processi generati (compreso quello mandato in esecuzione dalla linea
339
di comando) dal seguente codice C, compilato e fatto eseguire su un sistema con il sistemaoperativo Unix:main(){int pid, i;for (i = 0; i <= 3; i + +){
pid=fork();if (pid == 0 && i > 2) exit(0);
}exit(0);}
[A] 10
[B] 16
[C] 9
[D] 8
domanda N. 4:
Sia dato il seguente insieme di processi:
TA TC P
P1 0 6 3P2 3 4 5P3 4 6 4P4 11 2 5P5 14 4 1
dove TA e il tempo di arrivo nella coda dei processi pronti, TC e il tempo di utilizzo della CPUe P e la priorita (priorita massima = 5). Utilizzando l’algoritmo di scheduling a priorita conprelazione, si determini il tempo medio di esecuzione.
[A] 8.8
[B] 8.6
[C] 8.2
[D] 8.4
domanda N. 5:
340
Sia dato il seguente insieme di processi:
TA TC
P1 0 8P2 1 6P3 3 6P4 7 4P5 9 4
dove TA e il tempo di arrivo nella coda dei processi pronti e TC e il tempo di utilizzo della CPU.Utilizzando l’algoritmo di scheduling Round Robin con quanto di tempo q = 2, si determini iltempo medio di esecuzione.
[A] 19.2
[B] 20.4
[C] 20.0
[D] 19.6
domanda N. 6:
Siano dati tre processi che condividono una variabile x e i cui pseudo codici sono di seguitoriportati:
P1 P2 P3
wait(R) wait(S) wait(T);x = x+2; x = x+4; x = x-5;if(x >= 4)then if(x==1)then signal(S);signal(S); signal(T); wait(T);
else endif signal(R);signal(T); wait(S);
endifwait(R);signal(S);
Supponendo che i tre semafori binari R, S e T siano inizializzati rispettivamente a R = 1,S = 0 e T = 0, si determini quale valore iniziale della variabile x, tra quelli proposti nellerisposte, non comporti una situazione di stallo per i processi.
[A] x = 3
[B] x = 2
[C] x = 0
[D] x = 1
341
domanda N. 7:
Si determini la veridicita’ delle seguenti affermazioni:
a) In un sistema operativo con memoria virtuale, una differenza tra indirizzo logico e indirizzofisico e che il primo e generato dalla CPU mentre il secondo e generato dal MemoryManagement Unit (MMU).
b) Uno spazio di indirizzamento di 8 pagine, ognuna di 1024 byte, richiede 13 bit.
[A] entrambe vere
[B] a) falsa ; b) vera
[C] a) vera ; b) falsa
[D] entrambe false
domanda N. 8:
Si consideri un sistema di paginazione con tabella delle pagine in memoria centrale. Suppo-nendo che un riferimento alla memoria centrale richieda 180 ns e che il tempo di accesso airegistri TLB richieda 25 ns, si determini la percentuale di successo nell’accesso ai TLB (hitratio dei TLB) per ottenere un tempo medio di accesso di 232 ns.
[A] 91%
[B] 88%
[C] 82%
[D] 85%
domanda N. 9:
Si consideri un sistema con paginazione su due livelli. Per un processo che richiede 16 pagine,ognuna di 512 byte, di seguito si riportano la tabella delle pagine di primo livello (P ′) e le4 tabelle di secondo livello (P”0, P”1, P”2 e P”3), le quali hanno rispettivamente indirizzofisico iniziale 0, 512, 1024 e 1536:
P ′
0 0
1 512
2 1024
3 1536
P”0
0 8192
1 11776
2 5120
3 14336
P”1
0 10752
1 7680
2 3072
3 6144
P”2
0 5632
1 10240
2 13824
3 11264
P”3
0 9216
1 3584
2 12800
3 14848
Si determini quale indirizzo fisico, tra quelli proposti, non appartiene allo spazio di indirizza-mento del processo.
342
[A] 5634
[B] 13826
[C] 5118
[D] 10241
domanda N. 10:
Si consideri un sistema operativo con paginazione su richiesta basato sull’algoritmo First InFirst Out (FIFO), che assegna ad ogni processo 3 frame di 512 Byte e che richiede 2 Byte perla memorizzazione di un intero. Ponendo attenzione solo agli array A, B e C, e ricordando cheil linguaggio C memorizza gli array 2-dimensionali per righe, si determini il numero di pagefaults del seguente frammento di codice C. ...int A[2][512], B[512], C[512];...N=512;for (i=0; i<2; i++){
for (j=0; j<N; j++){C[j] = B[j/2 + i*256] + A[i][j];
} }
[A] 10
[B] 11
[C] 12
[D] 8
domanda N. 11:
Si consideri un sistema operativo con paginazione su richiesta basato sull’algoritmo LeastRecently Used (LRU), che assegna ad ogni processo 5 frame. Se determini il numero di pagefaults per la squenza di riferimenti alle pagine:
5, 3, 2, 5, 2, 4, 1, 6, 4, 1, 3, 7, 4, 6, 2
[A] 10
[B] 7
[C] 9
[D] 8
343
domanda N. 12:
Sia dato un disco con 200 tracce e velocita di seek di 1 traccia per ms. All’istante t=0 ilsistema operativo sta servendo una richiesta sulla traccia 50 e in coda ci sono richieste per letracce (58; 15; 23; 25; 65; 55). Successivamente arrivano altre richieste all’istante t=7 per latraccia 49 e all’istante t=50 per la traccia 57. Si calcoli il tempo di ricerca complessivo perservire tutte le richieste secondo la politica Shortest Seek Time First (SSTF), trascurando lalatenza rotazionale e il tempo di trasferimento.
[A] 117
[B] 98
[C] 107
[D] 65
domanda N. 13:
Si determini la veridicita’ delle seguenti affermazioni:
a) Le testine di un disco memorizzano i dati in tracce, che sono una parte di unita piu grandichiamate settori, i quali formano i cilindri quando sono considerati verticalmente
b) L’algoritmo di scheduling del disco Shortest Seek Time First (SSTF) e il piu adatto aisistemi interattivi, in quanto assicura il minor tempo medio di servizio e non risente delproblema della posticipazione indefinita delle richieste.
[A] entrambe false
[B] a) vera ; b) falsa
[C] a) falsa ; b) vera
[D] entrambe vere
domanda N. 14:
Si consideri un disco che opera a 7200 rpm (giri al minuto), dove ogni traccia e composta da160 settori di 1024 byte ognuno. Si determini la velocita di trasferimento necessaria per poterleggere o scrivere una traccia intera durante una rotazione del disco.
[A] circa 13400 KB/sec
[B] circa 19200 KB/sec
[C] circa 9600 KB/sec
344
[D] circa 4800 KB/sec
domanda N. 15:
Si determini la veridicita’ delle seguenti affermazioni:
a) Rispetto allo schema di allocazione dei file con lista concatenata, il principale vantaggiodella allocazione indicizzata dei file in un file system e la possibilita di effettuare laricerca nel solo blocco indice, migliorando enormemente i tempi di attraversamento delfile.
b) Lo schema di gestione dei blocchi liberi basato sulla bitmap introduce sempre un minorsovraccarico di memoria rispetto alla lista dei blocchi liberi, poiche mediante la bitmapviene utilizzato un solo bit per blocco, mentre la lista richiede l’indice del blocco chepuo’ essere grande 16 o 32 bit.
[A] a) falsa ; b) vera
[B] entrambe false
[C] a) vera ; b) falsa
[D] entrambe vere
domanda N. 16:
Sia dato un file system che gestisca blocchi da 512 byte e indirizzi da 16 bit mediante unaallocazione indicizzata dei file. Si calcoli la dimensione massima di un file per questo filesystem supponendo che i blocchi indice contengono:
• 8 puntatori diretti a blocchi di dati
• 2 puntatori indiretti a blocchi di dati
[A] 266240 byte
[B] 330240 byte
[C] 67584 byte
[D] 271360 byte
domanda N. 17:
Si determini la veridicita delle seguenti affermazioni:
a) Si consideri un file formato da 100 record allocato su disco in forma concatenata dovei record del file sono memorizzati uno per blocco e il file descriptor e gia in memoriacentrale. Se l’ultimo record letto e’ il record 35, allora per cancellare il 60-mo recordsono necessari 25 accessi in lettura e 1 in scrittura.
345
b) Si consideri un file formato da 100 record allocato su disco in forma contigua dove i recorddel file sono memorizzati uno per blocco e il file descriptor e gia in memoria centrale. Sel’ultimo record letto e’ il record 10 allora per cancellare il 75-mo record sono necessari25 accessi in lettura e 25 in scrittura.
[A] a) vera ; b) falsa
[B] entrambe false
[C] a) falsa ; b) vera
[D] entrambe vere
346
================================================== compito N. 40 del 110609 ==========
=========================================
SVOLTO DA MATRICOLA
domanda 1
domanda 2
domanda 3
domanda 4
domanda 5
domanda 6
domanda 7
domanda 8
domanda 9
domanda 10
domanda 11
domanda 12
domanda 13
domanda 14
domanda 15
domanda 16
domanda 17
• 1.5 punti per ogni risposta esatta
• 0 punti per ogni risposta non data
• 0.5 punti di penalita’ per ogni risposta errata
FIRMA
347
============================================ CORSO DI SISTEMI OPERTIVI mod.A (gr. 1) ============ compito N. 41 del 110609 ==========
=========================================
domanda N. 1:
Si determini la veridicita’ delle seguenti affermazioni:
a) Uno dei vantaggi delle macchine virtuali e’ la possibilita’ di creare ambienti di elaborazionecompletamente separati, permettendo una protezione efficace delle risorse del sistemaoperativo e dei programmi tra loro.
b) Uno dei vantaggi delle macchine virtuali e’ la loro facile realizzazione, in quanto e’ suf-ficiente replicare una copia di un sistema operativo monoutente in piu’ partizioni deldisco, dando cosi’ ad ogni utente l’illusione di essere l’unico utente del sistema.
[A] a) falsa ; b) vera
[B] entrambe false
[C] entrambe vere
[D] a) vera ; b) falsa
domanda N. 2:
Si determini la veridicita’ delle seguenti affermazioni:
a) Il principale vantaggio nell’uso di due threads cooperanti di uno stesso processo, al postodi due processi distinti e che nel primo caso non e necessario sincronizzare i threads inquanto gia condividono lo spazio di indirizzamento, mentre nel secondo caso e’ necessariol’uso dei semafori.
b) La comunicazione tra threads cooperanti di uno stesso processo e sempre piu efficientedella comunicazione tra processi distinti in quanto i threads possono utilizzare lo spaziodi indirizzamento condiviso senza fare uso degli strumenti di comunicazione tra processigestiti dal kernel.
[A] entrambe vere
[B] entrambe false
[C] a) falsa ; b) vera
[D] a) vera ; b) falsa
348
domanda N. 3:
Si determini il numero di processi generati (compreso quello mandato in esecuzione dalla lineadi comando) dal seguente codice C, compilato e fatto eseguire su un sistema con il sistemaoperativo Unix:main(){int pid, i;for (i = 0; i <= 3; i + +){
pid=fork();if (pid == 0 && i >= 0) exit(0);
}exit(0);}
[A] 5
[B] 8
[C] 7
[D] 9
domanda N. 4:
Sia dato il seguente insieme di processi:
TA TC
P1 0 8P2 1 4P3 3 6P4 7 2P5 10 2
dove TA e il tempo di arrivo nella coda dei processi pronti e TC e il tempo di utilizzo della CPU.Utilizzando l’algoritmo di scheduling dello Shortest Job First con prelazione, si determini iltempo medio di esecuzione.
[A] 8.4
[B] 8.6
[C] 8.2
[D] 8.0
349
domanda N. 5:
Sia dato il seguente insieme di processi:
TA TC
P1 0 7P2 1 7P3 7 7P4 11 3P5 13 2
dove TA e il tempo di arrivo nella coda dei processi pronti e TC e il tempo di utilizzo della CPU.Utilizzando l’algoritmo di scheduling Round Robin con quanto di tempo q = 2, si determini iltempo medio di esecuzione.
[A] 14.4
[B] 14.8
[C] 15
[D] 14.6
domanda N. 6:
Siano dati tre processi che condividono una variabile x e i cui pseudo codici sono di seguitoriportati:
P1 P2 P3
wait(R) wait(S) wait(T)x = -x; x = x-1; x = x+1;signal(S); if (x > 0) then signal(R);wait(R); x = x-1; wait(T);x = -x; signal(T); print x;signal(T); else
signal(R);endif
Si determini l’output del processo P3 supponendo che inizialmente x = 1 e i tre semaforibinari siano inizializzati rispettivamente S = 0, R = 0, T = 1.
[A] 4
[B] 5
[C] 6
[D] 3
domanda N. 7:
Si determini la veridicita’ delle seguenti affermazioni:
350
a) Il tempo necessario a prelevare un dato dalla memoria in un sistema operativo che usa lamemoria virtuale e lo stesso di un sistema operativo che non ne fa uso.
b) Sia dato un processo di 6 pagine, in un sistema che assegna 5 frame ad ogni processo. Sel’esecuzione di tale processo richiede 15 riferimenti in memoria, l’algoritmo di paginazioneFIFO richiede almeno 6 page faults.
[A] entrambe vere
[B] a) vera ; b) falsa
[C] entrambe false
[D] a) falsa ; b) vera
domanda N. 8:
Si consideri un sistema di paginazione con tabella delle pagine in memoria centrale. Suppo-nendo che un riferimento alla memoria centrale richieda 190 ns e che il tempo di accesso airegistri TLB richieda 25 ns, si determini la percentuale di successo nell’accesso ai TLB (hitratio dei TLB) per ottenere un tempo medio di accesso di 272 ns.
[A] 70%
[B] 73.5%
[C] 76.6666%
[D] 68%
domanda N. 9:
Si consideri un sistema con paginazione su due livelli. Per un processo che richiede 16 pagine,di seguito si riportano la tabella delle pagine di primo livello (P ′) e le 4 tabelle di secondolivello (P”0, P”1, P”2 e P”3), le quali hanno rispettivamente indirizzo iniziale 8192, 8704,9216 e 9728:
P ′
0 8192
1 8704
2 9216
3 9728
P”0
0 0
1 512
2 1024
3 1536
P”1
0 2048
1 2560
2 3072
3 3584
P”2
0 4096
1 4608
2 5120
3 5632
P”3
0 6144
1 6656
2 7168
3 7680
Si determini l’indirizzo fisico corrispondente all’indirizzo logico < 2, 0, 85 >
[A] 4693
[B] 4181
351
[C] 890
[D] 3671
domanda N. 10:
Si consideri un sistema operativo con paginazione su richiesta basato sull’algoritmo First InFirst Out (FIFO), che assegna ad ogni processo 3 frame di 512 Byte e che richiede 2 Byte perla memorizzazione di un intero. Ponendo attenzione solo agli array A, B e C, e ricordando cheil linguaggio C memorizza gli array 2-dimensionali per righe, si determini il numero di pagefaults del seguente frammento di codice C. ...int A[2][512], B[512], C[512];...N=512;for (i=0; i<2; i++){
for (j=0; j<N; j++){B[j/2 + i*256] = A[i][j] + C[j];
} }
[A] 8
[B] 11
[C] 10
[D] 12
domanda N. 11:
Si consideri un sistema operativo con paginazione su richiesta basato sull’algoritmo del Work-ing Set con dimensione della finestra di osservazione w = 6. Si determini, a partire dall’istantet = 6, il minimo e massimo numero di frame che il sistema assegna ad un processo di 6 pagineche vengono referenziate nel seguente ordine:
1, 4, 2, 1, 2, 4, 1, 6, 2, 1, 6, 6, 1, 6, 1, 5, 3, 5, 1, 6, 4, 3, 5, 4, 4
[A] min=3, max=4
[B] min=2, max=5
[C] min=3, max=5
[D] min=2, max=4
domanda N. 12:
352
Sia dato un disco con 2000 tracce. Una operazione di lettura di un blocco richiede 3 msper lo spostamento tra due tracce adiacenti, 5 ms per la latenza rotazionale e 10 ms per iltrasferimento di un blocco di dati. Si calcoli il tempo necessario per leggere un file costituitoda 45 blocchi nel caso in cui questi ultimi siano distanti mediamente 15 tracce l’uno dall’altro.
[A] 2.04 sec
[B] 8.44 sec
[C] 2.7 sec
[D] 12.15 sec
domanda N. 13:
Si determini la veridicita’ delle seguenti affermazioni:
a) Con un carico del disco pesante, la politica di scheduling SCAN andrebbe sempre preferitaalla politica C-SCAN a causa dell’overhead del ”ritorno a vuoto” della testina che inquesto caso diventa ancora piu significativo.
b) Il livello RAID con il piu alto overhead di memoria secondaria e il livello 5, a causa dellospazio utilizzato per la gestione delle informazioni relative alla parita.
[A] entrambe vere
[B] a) vera ; b) falsa
[C] a) falsa ; b) vera
[D] entrambe false
domanda N. 14:
Si calcoli la probabilitaa di perdere i dati con un sistema RAID level 5 con 5 dischi, se il MeanTime to Failure (MTF) e di 1600 giorni e il Mean Time to Repair (MTR) e di 23.04 giorni.
[A] 0.0002
[B] 0.00003
[C] 0.00011
[D] 0.00009
domanda N. 15:
Si determini la veridicita’ delle seguenti affermazioni:
353
a) Un vantaggio dello schema di allocazione contigua di file in un file system e la velocita diaccesso poiche non si devono effettuare ulteriori operazioni di ricerche dei blocchi dopoaver individuato il primo blocco
b) Un problema nella prima versione della File Allocation Table di Microsoft (FAT12) era laframmentazione interna per i dischi di grandi dimensioni. Tale problema sussiste anchecon le nuove versioni FAT16 e FAT32, per cui esse vengono oramai utilizzate solo per ifile systen dei floppy disk.
[A] entrambe false
[B] entrambe vere
[C] a) vera ; b) falsa
[D] a) falsa ; b) vera
domanda N. 16:
Sia dato un file system di 8 MB che gestisca i file mediante allocazione tabellare (ad es. unaFile Allocation Table). Si determini la dimensione della tabella nel caso in cui i blocchi deldisco siano di 512 byte.
[A] 32 KB
[B] 28 KB
[C] 12 KB
[D] 13 KB
domanda N. 17:
Si determini la veridicita delle seguenti affermazioni:
a) Si consideri un file formato da 100 record allocato su disco in forma concatenata dovei record del file sono memorizzati uno per blocco e il file descriptor e gia in memoriacentrale. Se l’ultimo record letto e’ il record 25, allora per cancellare il 60-mo recordsono necessari 35 accessi in lettura e 35 in scrittura.
b) Si consideri un file formato da 100 record allocato su disco in forma contigua dove i recorddel file sono memorizzati uno per blocco e il file descriptor e gia in memoria centrale. Sel’ultimo record letto e’ il record 10 allora per cancellare il 60-mo record sono necessari40 accessi in lettura e 1 in scrittura.
[A] entrambe false
[B] a) falsa ; b) vera
[C] a) vera ; b) falsa
354
[D] entrambe vere
355
================================================== compito N. 41 del 110609 ==========
=========================================
SVOLTO DA MATRICOLA
domanda 1
domanda 2
domanda 3
domanda 4
domanda 5
domanda 6
domanda 7
domanda 8
domanda 9
domanda 10
domanda 11
domanda 12
domanda 13
domanda 14
domanda 15
domanda 16
domanda 17
• 1.5 punti per ogni risposta esatta
• 0 punti per ogni risposta non data
• 0.5 punti di penalita’ per ogni risposta errata
FIRMA
356
============================================ CORSO DI SISTEMI OPERTIVI mod.A (gr. 1) ============ compito N. 42 del 110609 ==========
=========================================
domanda N. 1:
Si determini la veridicita’ delle seguenti affermazioni:
a) I seguenti sono tutti nomi di sistemi operativi realmente esistiti: Unix, MS-DOS, Solaris,Multics, CTSS, Minix, MacOS, Xenix.
b) Il modulo del sistema operativo che si occupa di determinare quando e per quanto tempoun processo deve accedere alla CPU e chiamato Interprocessor Communication Manager.
[A] entrambe false
[B] a) vera ; b) falsa
[C] a) falsa ; b) vera
[D] entrambe vere
domanda N. 2:
Si determini la veridicita’ delle seguenti affermazioni:
a) Il principale vantaggio nell’uso di due threads cooperanti di uno stesso processo, al postodi due processi distinti e che nel primo caso non e necessario sincronizzare i threads inquanto gia condividono lo spazio di indirizzamento, mentre nel secondo caso e’ necessariol’uso dei semafori.
b) La comunicazione tra threads cooperanti di uno stesso processo e sempre piu efficientedella comunicazione tra processi distinti in quanto i threads possono utilizzare lo spaziodi indirizzamento condiviso senza fare uso degli strumenti di comunicazione tra processigestiti dal kernel.
[A] a) falsa ; b) vera
[B] a) vera ; b) falsa
[C] entrambe vere
[D] entrambe false
domanda N. 3:
Si determini il numero di processi generati (compreso quello mandato in esecuzione dalla linea
357
di comando) dal seguente codice C, compilato e fatto eseguire su un sistema con il sistemaoperativo Unix:main(){int pid, i;for (i = 0; i <= 3; i + +){
pid=fork();if (pid == 0 && i == 2) exit(0);
}exit(0);}
[A] 12
[B] 8
[C] 10
[D] 14
domanda N. 4:
Sia dato il seguente insieme di processi:
TA TC
P1 0 12P2 2 3P3 6 3P4 11 6P5 14 2
dove TA e il tempo di arrivo nella coda dei processi pronti e TC e il tempo di utilizzo della CPU.Utilizzando l’algoritmo di scheduling dello Shortest Job First con prelazione, si determini iltempo medio di esecuzione.
[A] 8.0
[B] 7.8
[C] 8.4
[D] 8.2
domanda N. 5:
358
Sia dato il seguente insieme di processi:
TA TC
P1 0 8P2 1 6P3 3 6P4 7 4P5 9 4
dove TA e il tempo di arrivo nella coda dei processi pronti e TC e il tempo di utilizzo della CPU.Utilizzando l’algoritmo di scheduling Round Robin con quanto di tempo q = 2, si determini iltempo medio di esecuzione.
[A] 20.4
[B] 20.0
[C] 19.6
[D] 19.2
domanda N. 6:
Siano dati tre processi che condividono una variabile x e i cui pseudo codici sono di seguitoriportati:
P1 P2 P3
wait(R) wait(S) wait(T)x = x+2; x = x*2; x = x+1;if (x > 0) then signal(T); signal(S);
x = -1; wait(S); wait(T)endif x = -x; x = x+1print x; signal(R); signal(S);
Si determini l’output del processo P1 supponendo che inizialmente x = 1 e i tre semaforibinari siano inizializzati rispettivamente R = 0, S = 0, T = 1.
[A] -1
[B] -3
[C] -4
[D] -2
domanda N. 7:
Si determini la veridicita’ delle seguenti affermazioni:
359
a) Il tempo necessario a prelevare un dato dalla memoria in un sistema operativo che usa lamemoria virtuale e lo stesso di un sistema operativo che non ne fa uso.
b) Sia dato un processo di 6 pagine, in un sistema che assegna 5 frame ad ogni processo. Sel’esecuzione di tale processo richiede 15 riferimenti in memoria, l’algoritmo di paginazioneFIFO richiede almeno 6 page faults.
[A] entrambe vere
[B] a) vera ; b) falsa
[C] entrambe false
[D] a) falsa ; b) vera
domanda N. 8:
Si consideri un sistema di paginazione con tabella delle pagine in memoria centrale. Suppo-nendo che un riferimento alla memoria centrale richieda 180 ns e che il tempo di accesso airegistri TLB richieda 30 ns, si determini la percentuale di successo nell’accesso ai TLB (hitratio dei TLB) per ottenere un tempo medio di accesso di 280 ns.
[A] 68.3333%
[B] 61.111%
[C] 58%
[D] 65%
domanda N. 9:
Si consideri un sistema con paginazione su due livelli. Per un processo che richiede 16 pagine,ognuna di 512 byte, di seguito si riportano la tabella delle pagine di primo livello (P ′) e le4 tabelle di secondo livello (P”0, P”1, P”2 e P”3), le quali hanno rispettivamente indirizzofisico iniziale 0, 512, 1024 e 1536:
P ′
0 0
1 512
2 1024
3 1536
P”0
0 8192
1 11776
2 5120
3 14336
P”1
0 10752
1 7680
2 3072
3 6144
P”2
0 5632
1 10240
2 13824
3 11264
P”3
0 9216
1 3584
2 12800
3 14848
Si determini quale indirizzo fisico, tra quelli proposti, non appartiene allo spazio di indirizza-mento del processo.
[A] 5634
[B] 13826
360
[C] 5118
[D] 10241
domanda N. 10:
Si consideri un sistema operativo con paginazione su richiesta basato sull’algoritmo First InFirst Out (FIFO), che assegna ad ogni processo 3 frame di 512 Byte e che richiede 2 Byte perla memorizzazione di un intero. Ponendo attenzione solo agli array A, B e C, e ricordando cheil linguaggio C memorizza gli array 2-dimensionali per righe, si determini il numero di pagefaults del seguente frammento di codice C. ...int A[2][512], B[512], C[512];...N=512;for (i=0; i<2; i++){
for (j=0; j<N; j++){B[j/2 + i*256] = A[i][j] + C[j];
} }
[A] 10
[B] 12
[C] 8
[D] 11
domanda N. 11:
Si consideri un sistema operativo con paginazione su richiesta basato sull’algoritmo del Work-ing Set con dimensione della finestra di osservazione w = 6. Si determini, a partire dall’istantet = 6, il minimo e massimo numero di frame che il sistema assegna ad un processo di 6 pagineche vengono referenziate nel seguente ordine:
1, 2, 4, 1, 2, 4, 3, 4, 3, 3, 3, 4, 5, 3, 4, 5, 6, 4, 5, 6, 5, 5, 6, 5, 4
[A] min=3, max=4
[B] min=2, max=5
[C] min=2, max=4
[D] min=3, max=5
domanda N. 12:
361
Sia dato un disco con 200 tracce e velocita di seek di 1 traccia per ms. All’istante t=0 ilsistema operativo sta servendo una richiesta sulla traccia 100 e in coda ci sono richieste per letracce (40; 65; 90; 120; 145; 125). Successivamente arrivano altre richieste all’istante t=30 perla traccia 95 e all’istante t=135 per la traccia 100. Si calcoli il tempo di ricerca complessivoper servire tutte le richieste secondo la politica Shortest Seek Time First (SSTF), trascurandola latenza rotazionale e il tempo di trasferimento.
[A] 215
[B] 185
[C] 210
[D] 165
domanda N. 13:
Si determini la veridicita’ delle seguenti affermazioni:
a) Le testine di un disco memorizzano i dati in tracce, che sono una parte di unita piu grandichiamate settori, i quali formano i cilindri quando sono considerati verticalmente
b) L’algoritmo di scheduling del disco Shortest Seek Time First (SSTF) e il piu adatto aisistemi interattivi, in quanto assicura il minor tempo medio di servizio e non risente delproblema della posticipazione indefinita delle richieste.
[A] entrambe false
[B] a) vera ; b) falsa
[C] a) falsa ; b) vera
[D] entrambe vere
domanda N. 14:
Si consideri un disco che opera a 12000 rpm (giri al minuto), dove ogni traccia e composta da80 settori di 512 bytes ognuno. Si determini la velocita di trasferimento necessaria per poterleggere o scrivere una traccia intera durante una rotazione del disco.
[A] circa 9600 KB/sec
[B] circa 19200 KB/sec
[C] circa 8000 KB/sec
[D] circa 16000 KB/sec
362
domanda N. 15:
Si determini la veridicita’ delle seguenti affermazioni:
a) Un modo per risolvere il problema dei numerosi accessi al disco con lo schema di allocazionedei file a lista concatenata e l’utilizzo di blocchi molto grandi. Con tale modifica si ottieneuno schema senza grossi inconvenienti legati alla gestione del disco, che e utilizzato innumerosi sistemi come, ad esempio, Solaris 2.
b) Uno svantaggio dello schema di allocazione contigua di file in un file system e la frammen-tazione esterna del disco.
[A] a) falsa ; b) vera
[B] a) vera ; b) falsa
[C] entrambe vere
[D] entrambe false
domanda N. 16:
Sia dato un file system di 2 MB che gestisca i file mediante allocazione tabellare (ad es. unaFile Allocation Table). Si determini la dimensione della tabella nel caso in cui i blocchi deldisco siano di 512 byte.
[A] 32 KB
[B] 6 KB
[C] 12 KB
[D] 48 KB
domanda N. 17:
Si determini la veridicita delle seguenti affermazioni:
a) Si consideri un file formato da 100 record allocato su disco in forma contigua dove i recorddel file sono memorizzati uno per blocco e il file descriptor e gia in memoria centrale. Sel’ultimo record letto e’ il record 10 allora per cancellare il 50-mo record sono necessari 1accesso in lettura e 1 in scrittura.
b) Si consideri un file formato da 100 record allocato su disco in forma concatenata dovei record del file sono memorizzati uno per blocco e il file descriptor e gia in memoriacentrale. Se l’ultimo record letto e’ il record 15, allora per cancellare il 65-mo recordsono necessari 50 accessi in lettura e 50 in scrittura.
363
[A] entrambe false
[B] a) falsa ; b) vera
[C] entrambe vere
[D] a) vera ; b) falsa
364
================================================== compito N. 42 del 110609 ==========
=========================================
SVOLTO DA MATRICOLA
domanda 1
domanda 2
domanda 3
domanda 4
domanda 5
domanda 6
domanda 7
domanda 8
domanda 9
domanda 10
domanda 11
domanda 12
domanda 13
domanda 14
domanda 15
domanda 16
domanda 17
• 1.5 punti per ogni risposta esatta
• 0 punti per ogni risposta non data
• 0.5 punti di penalita’ per ogni risposta errata
FIRMA
365
============================================ CORSO DI SISTEMI OPERTIVI mod.A (gr. 1) ============ compito N. 43 del 110609 ==========
=========================================
domanda N. 1:
Si determini la veridicita’ delle seguenti affermazioni:
a) Il livello software che contiene le componenti fondamentali di un sistema operativo e’ chiam-ato kernel. Al kernel appartengono i moduli per: la gestione della memoria centrale, ilcontrollo dei processi, la gestione dell’I/O e la gestione della memoria secondaria. Aquesto elenco di componenti fondamentali del kernel va aggiunto solo il sottosistema perla gestione delle interfacce grafiche e per l’interprete del linguaggio di comando.
b) I sistemi operativi hanno lo scopo primario di permettere alle applicazioni software diinteragire con l’hardware sottostante, e di gestire le risorse hardware e software delsistema in maniera efficiente.
[A] a) falsa ; b) vera
[B] a) vera ; b) falsa
[C] entrambe false
[D] entrambe vere
domanda N. 2:
Si determini la veridicita’ delle seguenti affermazioni:
a) Il meccanismo piu utilizzato dai sistemi operativi per impedire che un processo possamonopolizzare l’uso della CPU consiste nell’assegnare ai processi un numero massimo diistruzioni da eseguire.
b) Quando un processo viene rimosso dalla CPU perchee e scaduto il suo quanto di tempo,viene inserito sempre nella coda dei processi in attesa (waiting queue). Il processo vienerimosso da tale coda solo al momento di tornare in esecuzione
[A] entrambe vere
[B] entrambe false
[C] a) falsa ; b) vera
[D] a) vera ; b) falsa
366
domanda N. 3:
Si determini il numero di processi generati (compreso quello mandato in esecuzione dalla lineadi comando) dal seguente codice C, compilato e fatto eseguire su un sistema con il sistemaoperativo Unix:main(){int pid, i;for (i = 0; i <= 3; i + +){
pid=fork();if (pid == 0 && i > 1) exit(0);
}exit(0);}
[A] 9
[B] 8
[C] 10
[D] 12
domanda N. 4:
Sia dato il seguente insieme di processi:
TA TC P
P1 0 6 3P2 3 3 4P3 7 5 5P4 10 5 2P5 15 4 3
dove TA e il tempo di arrivo nella coda dei processi pronti, TC e il tempo di utilizzo della CPUe P e la priorita (priorita massima = 5). Utilizzando l’algoritmo di scheduling a priorita conprelazione, si determini il tempo medio di esecuzione.
[A] 7.8
[B] 7.6
[C] 7.4
[D] 7.2
367
domanda N. 5:
Sia dato il seguente insieme di processi:
TA TC
P1 0 3P2 1 5P3 3 7P4 8 5P5 10 6
dove TA e il tempo di arrivo nella coda dei processi pronti e TC e il tempo di utilizzo della CPU.Utilizzando l’algoritmo di scheduling Round Robin con quanto di tempo q = 2, si determini iltempo medio di esecuzione.
[A] 13.6
[B] 14
[C] 14.2
[D] 13.8
domanda N. 6:
Siano dati tre processi che condividono una variabile x e i cui pseudo codici sono di seguitoriportati:
P1 P2 P3
wait(R) wait(S) wait(T)x = x-5; x = x+2; x = x+3;signal(T); if(x >= 5)then if(x==1)thenwait(R); signal(T); signal(R);signal(S); else endif
signal(R); wait(T);endifwait(S);signal(T);
Supponendo che i tre semafori binari R, S e T siano inizializzati rispettivamente a R = 0,S = 1 e T = 0, si determini quale valore iniziale della variabile x, tra quelli proposti nellerisposte, non comporti una situazione di stallo per i processi.
[A] x = 2
[B] x = 3
[C] x = 4
[D] x = 1
368
domanda N. 7:
Si determini la veridicita’ delle seguenti affermazioni:
a) Nei moderni sistemi operativi le tecniche di gestione della memoria centrale sono pocoimportanti a causa del basso costo economico delle stesse.
b) Andando dai livelli di memoria piu bassi (dispositivi secondari e terziari) a quelli piu alti(registri e cache), il costo economico per bit aumenta.
[A] a) vera ; b) falsa
[B] entrambe false
[C] a) falsa ; b) vera
[D] entrambe vere
domanda N. 8:
Si consideri un sistema di paginazione con tabella delle pagine in memoria centrale. Suppo-nendo che un riferimento alla memoria centrale richieda 190 ns e che il tempo di accesso airegistri TLB richieda 25 ns, si determini la percentuale di successo nell’accesso ai TLB (hitratio dei TLB) per ottenere un tempo medio di accesso di 272 ns.
[A] 68%
[B] 70%
[C] 73.5%
[D] 76.6666%
domanda N. 9:
Si consideri un sistema con paginazione su due livelli. Per un processo che richiede 16 pagine,ognuna di 512 byte, di seguito si riportano la tabella delle pagine di primo livello (P ′) e le4 tabelle di secondo livello (P”0, P”1, P”2 e P”3), le quali hanno rispettivamente indirizzofisico iniziale 0, 512, 1024 e 1536:
P ′
0 0
1 512
2 1024
3 1536
P”0
0 8192
1 11776
2 5120
3 14336
P”1
0 10752
1 7680
2 3072
3 6144
P”2
0 5632
1 10240
2 13824
3 11264
P”3
0 9216
1 3584
2 12800
3 14848
Si determini quale indirizzo fisico, tra quelli proposti, non appartiene allo spazio di indirizza-mento del processo.
369
[A] 9218
[B] 14850
[C] 3070
[D] 6146
domanda N. 10:
Si consideri un sistema operativo con paginazione su richiesta basato sull’algoritmo First InFirst Out (FIFO), che assegna ad ogni processo 3 frame di 512 Byte e che richiede 2 Byte perla memorizzazione di un intero. Ponendo attenzione solo agli array A, B e C, e ricordando cheil linguaggio C memorizza gli array 2-dimensionali per righe, si determini il numero di pagefaults del seguente frammento di codice C. ...int A[512], B[2][256], C[2][512];...N=256;for (i=0; i<2; i++){
for (j=0; j<N; j++){C[i][2*j] = A[i*N+j] + B[i][j];
} }
[A] 8
[B] 10
[C] 11
[D] 12
domanda N. 11:
Si consideri un sistema operativo con paginazione su richiesta basato sull’algoritmo del Work-ing Set con dimensione della finestra di osservazione w = 6. Si determini, a partire dall’istantet = 6, il minimo e massimo numero di frame che il sistema assegna ad un processo di 6 pagineche vengono referenziate nel seguente ordine:
1, 2, 4, 1, 2, 4, 3, 4, 3, 3, 3, 4, 5, 3, 4, 5, 6, 4, 5, 6, 5, 5, 6, 5, 4
[A] min=3, max=5
[B] min=3, max=4
[C] min=2, max=5
[D] min=2, max=4
370
domanda N. 12:
Sia dato un disco con 200 tracce e velocita di seek di 1 traccia per ms. All’istante t=0 ilsistema operativo sta servendo una richiesta sulla traccia 100 e in coda ci sono richieste per letracce (40; 65; 90; 120; 145; 125). Successivamente arrivano altre richieste all’istante t=30 perla traccia 95 e all’istante t=135 per la traccia 100. Si calcoli il tempo di ricerca complessivoper servire tutte le richieste secondo la politica Shortest Seek Time First (SSTF), trascurandola latenza rotazionale e il tempo di trasferimento.
[A] 210
[B] 165
[C] 215
[D] 185
domanda N. 13:
Si determini la veridicita’ delle seguenti affermazioni:
a) Le tecniche di ottimizzazione rotazionale del disco hanno avuto una importanza crescentenegli ultimi anni perche i moderni dischi rigidi esibiscono tempi di seek e latenze mediedello stesso ordine di grandezza.
b) Il livello RAID 1 e il migliore per ambienti in cui l’affidabilita ha una priorita superiore alcosto o alle prestazioni.
[A] a) vera ; b) falsa
[B] a) falsa ; b) vera
[C] entrambe vere
[D] entrambe false
domanda N. 14:
Si calcoli la probabilitaa di perdere i dati con un sistema RAID level 5 con 5 dischi, se il MeanTime to Failure (MTF) e di 1600 giorni e il Mean Time to Repair (MTR) e di 23.04 giorni.
[A] 0.00009
[B] 0.0002
[C] 0.00003
[D] 0.00011
371
domanda N. 15:
Si determini la veridicita’ delle seguenti affermazioni:
a) Un vantaggio dello schema di allocazione contigua di file in un file system e la velocita diaccesso poiche non si devono effettuare ulteriori operazioni di ricerche dei blocchi dopoaver individuato il primo blocco
b) Un problema nella prima versione della File Allocation Table di Microsoft (FAT12) era laframmentazione interna per i dischi di grandi dimensioni. Tale problema sussiste anchecon le nuove versioni FAT16 e FAT32, per cui esse vengono oramai utilizzate solo per ifile systen dei floppy disk.
[A] a) vera ; b) falsa
[B] a) falsa ; b) vera
[C] entrambe false
[D] entrambe vere
domanda N. 16:
Sia dato un file system che gestisca blocchi da 512 byte e indirizzi da 32 bit mediante unaallocazione indicizzata dei file. Si calcoli la dimensione massima di un file per questo filesystem supponendo che i blocchi indice contengono:
• 5 puntatori diretti a blocchi di dati
• 5 puntatori indiretti a blocchi di dati
[A] 50944 byte
[B] 330240 byte
[C] 67584 byte
[D] 271360 byte
domanda N. 17:
Si determini la veridicita delle seguenti affermazioni:
a) Si consideri un file formato da 100 record allocato su disco in forma indicizzata dove irecord del file sono memorizzati uno per blocco e il file descriptor e gia in memoriacentrale. Se non e stato fatto ancora nessun accesso al file, allora per cancellare il 60-morecord sono necessari 35 accessi in lettura e 1 in scrittura.
372
b) Si consideri un file formato da 100 record allocato su disco in forma contigua dove i recorddel file sono memorizzati uno per blocco e il file descriptor e gia in memoria centrale. Sel’ultimo record letto e’ il record 10 allora per cancellare il 60-mo record sono necessari40 accessi in lettura e 40 in scrittura.
[A] a) falsa ; b) vera
[B] a) vera ; b) falsa
[C] entrambe vere
[D] entrambe false
373
================================================== compito N. 43 del 110609 ==========
=========================================
SVOLTO DA MATRICOLA
domanda 1
domanda 2
domanda 3
domanda 4
domanda 5
domanda 6
domanda 7
domanda 8
domanda 9
domanda 10
domanda 11
domanda 12
domanda 13
domanda 14
domanda 15
domanda 16
domanda 17
• 1.5 punti per ogni risposta esatta
• 0 punti per ogni risposta non data
• 0.5 punti di penalita’ per ogni risposta errata
FIRMA
374
============================================ CORSO DI SISTEMI OPERTIVI mod.A (gr. 1) ============ compito N. 44 del 110609 ==========
=========================================
domanda N. 1:
Si determini la veridicita’ delle seguenti affermazioni:
a) Per motivi di sicurezza, le seguenti istruzioni dovrebbero essere sempre eseguite in modalitasistema: lettura del clock di sistema, disabilitazione delle interruzioni, switch dallamodalita utente a quella di sistema, accesso ai dispositivi di I/O.
b) La principale difficolta nello sviluppo di un sistema operativo real time e garantire che iprocessi terminino la loro esecuzione in un fissato intervallo di tempo. In tal senso unruolo chiave e svolto dallo scheduler.
[A] entrambe vere
[B] entrambe false
[C] a) falsa ; b) vera
[D] a) vera ; b) falsa
domanda N. 2:
Si determini la veridicita’ delle seguenti affermazioni:
a) In ogni sistema operativo e presente una tabella (chiamata tabella dei processi o ProcessControl Block = PCB) che tiene traccia di tutti i processi in esecuzione. In tale tabellae memorizzato per ogni processo in esecuzione un identificativo di processo (pid), unpuntatore alla memoria dove sono stati memorizzati il codice e l’area dati, nonche’ tuttele informazioni necessarie per effettuare correttamente il cambio di contesto.
b) Pur avendo alcuni campi sempre presenti in tutti i sistemi operativi, la struttura generaledel PCB dipende dalla implementazione del sistema operativo.
[A] entrambe vere
[B] a) falsa ; b) vera
[C] a) vera ; b) falsa
[D] entrambe false
375
domanda N. 3:
Si determini il numero di processi generati (compreso quello mandato in esecuzione dalla lineadi comando) dal seguente codice C, compilato e fatto eseguire su un sistema con il sistemaoperativo Unix:main(){int pid, i;for (i = 0; i <= 3; i + +){
pid=fork();if (pid == 0 && i > 1) exit(0);
}exit(0);}
[A] 10
[B] 12
[C] 9
[D] 8
domanda N. 4:
Sia dato il seguente insieme di processi:
TA TC P
P1 0 6 3P2 3 3 4P3 7 5 5P4 10 5 2P5 15 4 3
dove TA e il tempo di arrivo nella coda dei processi pronti, TC e il tempo di utilizzo della CPUe P e la priorita (priorita massima = 5). Utilizzando l’algoritmo di scheduling a priorita conprelazione, si determini il tempo medio di esecuzione.
[A] 7.4
[B] 7.2
[C] 7.8
[D] 7.6
376
domanda N. 5:
Sia dato il seguente insieme di processi:
TA TC
P1 0 3P2 1 5P3 3 7P4 8 5P5 10 6
dove TA e il tempo di arrivo nella coda dei processi pronti e TC e il tempo di utilizzo della CPU.Utilizzando l’algoritmo di scheduling Round Robin con quanto di tempo q = 2, si determini iltempo medio di esecuzione.
[A] 13.6
[B] 14
[C] 14.2
[D] 13.8
domanda N. 6:
Siano dati tre processi che condividono una variabile x e i cui pseudo codici sono di seguitoriportati:
P1 P2 P3
wait(R) wait(S) wait(T)x = 2*x; x = x*2; x = x+1;if (x > 0) then signal(T); signal(S);
x = x+1; wait(T)signal(S); x = x-1
else signal(R);x = x-1;signal(T);
endifwait(R);print x;
Si determini l’output del processo P1 supponendo che inizialmente x = −1 e i tre semaforibinari siano inizializzati rispettivamente R = 1, S = 0, T = 0.
[A] 5
[B] 4
[C] -5
[D] -4
377
domanda N. 7:
Si determini la veridicita’ delle seguenti affermazioni:
a) I semafori possono essere usati in sistemi con allocazione contigua della memoria per evitareche i processi effetuino accessi illegali (ad esempio all’area di memoria assegnata alsistema operativo).
b) Per limitare il problema della frammentazione esterna, la tecnica del compattamento uniscebuchi adiacenti in memoria, mentre la tecnica della coalescenza rialloca i processi in ese-cuzione in maniera contigua in maniera da creare un unico spazio di memoria disponibileper i nuovi processi.
[A] entrambe false
[B] a) falsa ; b) vera
[C] entrambe vere
[D] a) vera ; b) falsa
domanda N. 8:
Sia data una memoria di 32MByte gestita mediante paginazione con frame di 512 KByte e sisupponga che il sistema operativo richieda 6 MByte. Si calcoli la dimensione della memoriaeffettivamente ancora utilizzabile dopo l’allocazione di 5 processi rispettivamente di 2530,1840, 785, 3421, 2013 KByte.
[A] 15360 KByte
[B] 19456 KByte
[C] 17408 KByte
[D] 21540 KByte
domanda N. 9:
Si consideri un sistema con paginazione su due livelli. Per un processo che richiede 16 pagine,ognuna di 512 byte, di seguito si riportano la tabella delle pagine di primo livello (P ′) e le4 tabelle di secondo livello (P”0, P”1, P”2 e P”3), le quali hanno rispettivamente indirizzofisico iniziale 0, 512, 1024 e 1536:
P ′
0 0
1 512
2 1024
3 1536
P”0
0 8192
1 11776
2 5120
3 14336
P”1
0 10752
1 7680
2 3072
3 6144
P”2
0 5632
1 10240
2 13824
3 11264
P”3
0 9216
1 3584
2 12800
3 14848
378
Si determini quale indirizzo fisico, tra quelli proposti, non appartiene allo spazio di indirizza-mento del processo.
[A] 8194
[B] 3586
[C] 15361
[D] 7682
domanda N. 10:
Si consideri un sistema operativo con paginazione su richiesta basato sull’algoritmo First InFirst Out (FIFO), che assegna ad ogni processo 3 frame di 512 Byte e che richiede 2 Byte perla memorizzazione di un intero. Ponendo attenzione solo agli array A, B e C, e ricordando cheil linguaggio C memorizza gli array 2-dimensionali per righe, si determini il numero di pagefaults del seguente frammento di codice C. ...int A[2][512], B[512], C[512];...N=512;for (i=0; i<2; i++){
for (j=0; j<N; j++){B[j/2 + i*256] = A[i][j] + C[j];
} }
[A] 10
[B] 12
[C] 8
[D] 11
domanda N. 11:
Si consideri un sistema opereativo con paginazione su richiesta basato sull’algoritmo LeastRecently Used (LRU), che assegna ad ogni processo 5 frame. Si determini il numero di pagefaults per la seguente sequenza di riferimenti alle pagine:
6, 1, 4, 6, 5, 3, 1, 2, 4, 6, 5, 6, 4, 3, 5
[A] 10
[B] 9
[C] 8
379
[D] 7
domanda N. 12:
Sia dato un disco con 2000 tracce. Una operazione di lettura di un blocco richiede 3 msper lo spostamento tra due tracce adiacenti, 5 ms per la latenza rotazionale e 10 ms per iltrasferimento di un blocco di dati. Si calcoli il tempo necessario per leggere un file costituitoda 45 blocchi nel caso in cui questi ultimi siano distanti mediamente 15 tracce l’uno dall’altro.
[A] 12.15 sec
[B] 2.04 sec
[C] 8.44 sec
[D] 2.7 sec
domanda N. 13:
Si determini la veridicita’ delle seguenti affermazioni:
a) L’algoritmo di scheduling del disco First Come First Served (FCFS) e l’algoritmo menoutilizzato nei sistemi interattivi di tipo generale perche e quello che ha il piu alto overheadper la gestione delle strutture dati necessarie all’algoritmo stesso.
b) I principali vantaggi di un sistema RAID 0 sono la semplicita di realizzazione e l’elevatavelocita di trasferimento.
[A] a) vera ; b) falsa
[B] entrambe vere
[C] a) falsa ; b) vera
[D] entrambe false
domanda N. 14:
Si consideri un disco che opera a 12000 rpm (giri al minuto), dove ogni traccia e composta da160 settori di 512 bytes ognuno. Si determini la velocita di trasferimento necessaria per poterleggere o scrivere una traccia intera durante una rotazione del disco.
[A] circa 19200 KB/sec
[B] circa 16000 KB/sec
[C] circa 9600 KB/sec
380
[D] circa 8000 KB/sec
domanda N. 15:
Si determini la veridicita’ delle seguenti affermazioni:
a) Un vantaggio dello schema di allocazione contigua di file in un file system e la velocita diaccesso poiche non si devono effettuare ulteriori operazioni di ricerche dei blocchi dopoaver individuato il primo blocco
b) Un problema nella prima versione della File Allocation Table di Microsoft (FAT12) era laframmentazione interna per i dischi di grandi dimensioni. Tale problema sussiste anchecon le nuove versioni FAT16 e FAT32, per cui esse vengono oramai utilizzate solo per ifile systen dei floppy disk.
[A] a) falsa ; b) vera
[B] entrambe false
[C] entrambe vere
[D] a) vera ; b) falsa
domanda N. 16:
Sia dato un file system che gestisca blocchi da 256 byte e indirizzi da 32 bit mediante unaallocazione indicizzata dei file. Si calcoli la dimensione massima di un file per questo filesystem supponendo che i blocchi indice contengono:
• 7 puntatori diretti a blocchi di dati
• 3 puntatori indiretti a blocchi di dati
[A] 266240 byte
[B] 330240 byte
[C] 67584 byte
[D] 50944 byte
domanda N. 17:
Si determini la veridicita delle seguenti affermazioni:
a) Si consideri un file formato da 100 record allocato su disco in forma contigua dove i recorddel file sono memorizzati uno per blocco e il file descriptor e gia in memoria centrale. Sel’ultimo record letto e’ il record 25 allora per cancellare il 70-mo record sono necessari30 accessi in lettura e 30 in scrittura.
381
b) Si consideri un file formato da 100 record allocato su disco in forma concatenata dovei record del file sono memorizzati uno per blocco e il file descriptor e gia in memoriacentrale. Se l’ultimo record letto e’ il record 35, allora per cancellare il 75-mo recordsono necessari 40 accessi in lettura e 1 in scrittura.
[A] entrambe false
[B] a) falsa ; b) vera
[C] entrambe vere
[D] a) vera ; b) falsa
382
================================================== compito N. 44 del 110609 ==========
=========================================
SVOLTO DA MATRICOLA
domanda 1
domanda 2
domanda 3
domanda 4
domanda 5
domanda 6
domanda 7
domanda 8
domanda 9
domanda 10
domanda 11
domanda 12
domanda 13
domanda 14
domanda 15
domanda 16
domanda 17
• 1.5 punti per ogni risposta esatta
• 0 punti per ogni risposta non data
• 0.5 punti di penalita’ per ogni risposta errata
FIRMA
383
============================================ CORSO DI SISTEMI OPERTIVI mod.A (gr. 1) ============ compito N. 45 del 110609 ==========
=========================================
domanda N. 1:
Si determini la veridicita’ delle seguenti affermazioni:
a) Uno degli scopi principali delle chiamate di sistema e’ quello di fornire ai programmi deimetodi di accesso diretto alle funzionalita’ del sistema operativo in maniera protetta.
b) Poiche’ le chiamate di sistema sono l’unico modo con cui un processo utente puo’ accedereai servizi del sistema operativo, il relativo codice e’ eseguito in modalita’ utente
[A] a) vera ; b) falsa
[B] a) falsa ; b) vera
[C] entrambe false
[D] entrambe vere
domanda N. 2:
Si determini la veridicita’ delle seguenti affermazioni:
a) In ogni sistema operativo e presente una tabella (chiamata tabella dei processi o ProcessControl Block = PCB) che tiene traccia di tutti i processi in esecuzione. In tale tabellae memorizzato per ogni processo in esecuzione un identificativo di processo (pid), unpuntatore alla memoria dove sono stati memorizzati il codice e l’area dati, nonche’ tuttele informazioni necessarie per effettuare correttamente il cambio di contesto.
b) Pur avendo alcuni campi sempre presenti in tutti i sistemi operativi, la struttura generaledel PCB dipende dalla implementazione del sistema operativo.
[A] a) vera ; b) falsa
[B] entrambe false
[C] entrambe vere
[D] a) falsa ; b) vera
domanda N. 3:
Si determini il numero di processi generati (compreso quello mandato in esecuzione dalla linea
384
di comando) dal seguente codice C, compilato e fatto eseguire su un sistema con il sistemaoperativo Unix:main(){int pid, i;for (i = 0; i <= 3; i + +){
pid=fork();if (pid == 0 && i <= 1) exit(0);
}exit(0);}
[A] 10
[B] 6
[C] 9
[D] 8
domanda N. 4:
Sia dato il seguente insieme di processi:
TA TC P
P1 1 7 2P2 2 5 4P3 6 4 5P4 7 7 1P5 10 2 3
dove TA e il tempo di arrivo nella coda dei processi pronti, TC e il tempo di utilizzo della CPUe P e la priorita (priorita massima = 5). Utilizzando l’algoritmo di scheduling a priorita conprelazione, si determini il tempo medio di esecuzione.
[A] 10.6
[B] 11
[C] 10.4
[D] 11.2
domanda N. 5:
385
Sia dato il seguente insieme di processi:
TA TC
P1 0 8P2 0 2P3 3 4P4 5 6P5 9 2
dove TA e il tempo di arrivo nella coda dei processi pronti e TC e il tempo di utilizzo della CPU.Utilizzando l’algoritmo di scheduling Round Robin con quanto di tempo q = 2, si determini iltempo medio di esecuzione.
[A] 11.8
[B] 11.2
[C] 11.6
[D] 11.4
domanda N. 6:
Siano dati tre processi che condividono una variabile x e i cui pseudo codici sono di seguitoriportati:
P1 P2 P3
wait(R) wait(S) wait(T)x = -x; x = x-1; x = x+1;signal(S); if (x > 0) then signal(R);wait(R); x = x-1; wait(T);x = -x; signal(T); print x;signal(T); else
signal(R);endif
Si determini l’output del processo P3 supponendo che inizialmente x = 1 e i tre semaforibinari siano inizializzati rispettivamente S = 0, R = 0, T = 1.
[A] 6
[B] 3
[C] 4
[D] 5
domanda N. 7:
Si determini la veridicita’ delle seguenti affermazioni:
386
a) Il principale vantaggio dell’introduzione dei meccanismi di memoria virtuale (sia paginatache segmentata) e l’eliminazione del problema della frammentazione.
b) Si consideri un sistema con memoria virtuale che rappresenti un indirizzo virtuale v medi-ante la coppia (b, d) usando 32 bit. Se il numero di pagina b e specificato usando n = 20bit, allora la dimensione delle pagine e di 4096 byte.
[A] a) falsa ; b) vera
[B] a) vera ; b) falsa
[C] entrambe false
[D] entrambe vere
domanda N. 8:
Sia dato un sistema che gestisce una memoria di 5120 byte mediante partizioni variabili. Sisupponga che nella memoria siano gia presenti 5 processi di dimensioni 740, 875, 250, 1450 e490 byte allocati rispettivamente a partire dagli indirizzi fisici 2048, 3072, 2788, 0 e 4096. Sidetermini l’indirizzo in cui verra allocato un ulteriore processo di 389 byte mediante la tecnicadel worst fit.
[A] 4586
[B] 3038
[C] 3947
[D] 1450
domanda N. 9:
Si consideri un sistema con paginazione su due livelli. Per un processo che richiede 16 pagine,di seguito si riportano la tabella delle pagine di primo livello (P ′) e le 4 tabelle di secondolivello (P”0, P”1, P”2 e P”3), le quali hanno rispettivamente indirizzo iniziale 8192, 8704,9216 e 9728:
P ′
0 8192
1 8704
2 9216
3 9728
P”0
0 0
1 512
2 1024
3 1536
P”1
0 2048
1 2560
2 3072
3 3584
P”2
0 4096
1 4608
2 5120
3 5632
P”3
0 6144
1 6656
2 7168
3 7680
Si determini l’indirizzo fisico corrispondente all’indirizzo logico < 1, 2, 341 >
[A] 6997
[B] 5461
387
[C] 3413
[D] 1877
domanda N. 10:
Si consideri un sistema operativo con paginazione su richiesta basato sull’algoritmo First InFirst Out (FIFO), che assegna ad ogni processo 3 frame di 512 Byte e che richiede 2 Byte perla memorizzazione di un intero. Ponendo attenzione solo agli array A, B e C, e ricordando cheil linguaggio C memorizza gli array 2-dimensionali per righe, si determini il numero di pagefaults del seguente frammento di codice C. ...int A[512], B[2][256], C[2][512];...N=256;for (i=0; i<2; i++){
for (j=0; j<N; j++){C[i][2*j] = A[i*N+j] + B[i][j];
} }
[A] 10
[B] 11
[C] 12
[D] 8
domanda N. 11:
Si consideri un sistema operativo con paginazione su richiesta basato sull’algoritmo LeastRecently Used (LRU), che assegna ad ogni processo 5 frame. Se determini il numero di pagefaults per la squenza di riferimenti alle pagine:
5, 6, 5, 4, 5, 7, 3, 7, 4, 7, 6, 5, 2, 1, 5
[A] 10
[B] 7
[C] 9
[D] 8
domanda N. 12:
Sia dato un disco con 200 tracce e velocita di seek di 1 traccia per ms. All’istante t=0 il sistema
388
operativo sta servendo una richiesta sulla traccia 100 e in coda ci sono richieste per le tracce(10; 30; 55; 80; 92; 130). Successivamente arrivano altre richieste all’istante t=40 per la traccia50 e all’istante t=100 per la traccia 15. Si calcoli il tempo di ricerca complessivo per serviretutte le richieste secondo la politica LOOK, iniziando in ordine discendente e trascurando lalatenza rotazionale e il tempo di trasferimento.
[A] 285
[B] 325
[C] 110
[D] 215
domanda N. 13:
Si determini la veridicita’ delle seguenti affermazioni:
a) Le testine di un disco memorizzano i dati in tracce, che sono una parte di unita piu grandichiamate settori, i quali formano i cilindri quando sono considerati verticalmente
b) L’algoritmo di scheduling del disco Shortest Seek Time First (SSTF) e il piu adatto aisistemi interattivi, in quanto assicura il minor tempo medio di servizio e non risente delproblema della posticipazione indefinita delle richieste.
[A] entrambe vere
[B] entrambe false
[C] a) vera ; b) falsa
[D] a) falsa ; b) vera
domanda N. 14:
Si consideri un disco che opera a 12000 rpm (giri al minuto), dove ogni traccia e composta da80 settori di 512 bytes ognuno. Si determini la velocita di trasferimento necessaria per poterleggere o scrivere una traccia intera durante una rotazione del disco.
[A] circa 8000 KB/sec
[B] circa 16000 KB/sec
[C] circa 9600 KB/sec
[D] circa 19200 KB/sec
domanda N. 15:
Si determini la veridicita’ delle seguenti affermazioni:
389
a) Lo schema di allocazione basato sulla File Allocation Table (FAT) di Microsoft e unoschema che, con poca richiesta di memoria (necessaria solo per la tabella) e con pochiacccessi al disco assicura una gestione efficiente del file system anche se di grandi di-mensioni. Per tale motivo e ancora alla base di tutti i file system dei sistemi operativiMicrosoft.
b) Se il numero di blocchi usati in un file system e molto elevato, la memoria richiesta perla gestione dei blocchi liberi mediante lista concatenata puo essere inferiore a quellarichiesta dalla bitmap, nonostante quest’ultima usi solo un bit per blocco.
[A] entrambe false
[B] a) falsa ; b) vera
[C] entrambe vere
[D] a) vera ; b) falsa
domanda N. 16:
Sia dato un file system di 2 MB che gestisca i file mediante allocazione tabellare (ad es. unaFile Allocation Table). Si determini la dimensione della tabella nel caso in cui i blocchi deldisco siano di 1024 byte.
[A] ∼ 64 KB
[B] ∼ 16 KB
[C] ∼ 2.7 KB
[D] ∼ 6 KB
domanda N. 17:
Si determini la veridicita delle seguenti affermazioni:
a) Si consideri un file formato da 100 record allocato su disco in forma contigua dove i recorddel file sono memorizzati uno per blocco e il file descriptor e gia in memoria centrale. Sel’ultimo record letto e’ il record 30 allora per cancellare il 70-mo record sono necessari40 accessi in lettura e 1 in scrittura.
b) Si consideri un file formato da 100 record allocato su disco in forma concatenata dovei record del file sono memorizzati uno per blocco e il file descriptor e gia in memoriacentrale. Se l’ultimo record letto e’ il record 10, allora per cancellare il 35-mo recordsono necessari 25 accessi in lettura e 25 in scrittura.
[A] entrambe false
[B] entrambe vere
390
[C] a) vera ; b) falsa
[D] a) falsa ; b) vera
391
================================================== compito N. 45 del 110609 ==========
=========================================
SVOLTO DA MATRICOLA
domanda 1
domanda 2
domanda 3
domanda 4
domanda 5
domanda 6
domanda 7
domanda 8
domanda 9
domanda 10
domanda 11
domanda 12
domanda 13
domanda 14
domanda 15
domanda 16
domanda 17
• 1.5 punti per ogni risposta esatta
• 0 punti per ogni risposta non data
• 0.5 punti di penalita’ per ogni risposta errata
FIRMA
392
============================================ CORSO DI SISTEMI OPERTIVI mod.A (gr. 1) ============ compito N. 46 del 110609 ==========
=========================================
domanda N. 1:
Si determini la veridicita’ delle seguenti affermazioni:
a) Uno dei principali vantaggi dei sistemi operativi con architettura monolitica e’ l’efficienza.Tale approccio, e oggi comunque poco utilizzato in quanto la complessita dei modernisistemi operativi lo rende poco praticabile.
b) Uno degli svantaggi delle macchine virtuali e’ la loro difficile realizzazione in quanto edifficile ottenere una replica della macchina fisica sottostante con strumenti software.
[A] a) vera ; b) falsa
[B] entrambe vere
[C] a) falsa ; b) vera
[D] entrambe false
domanda N. 2:
Si determini la veridicita’ delle seguenti affermazioni:
a) Le prestazioni di una qualunque applicazione multithreading e sempre piu’ efficiente nelcaso di una implementazione dei thread utente secondo il modello molti a uno rispettoad una implementazione secondo il modello uno a uno. Cio e’ dovuto al fatto che con ilmodello molti a uno, i thread a livello utente non richiamano il kernel per le operazionidi scheduling e sincronizzazione.
b) Uno svantaggio dell’implementazione dei threads secondo il modello uno a uno e la scarsaportabilita delle applicazioni, in quanto esse devono interfacciarsi direttamente con lechiamate di sistema relative al sistema operativo su cui deve essere eseguita l’applicazione.I sistemi operativi conformi ad interfacce standard, ad esempio POSIX, riducono il prob-lema.
[A] entrambe vere
[B] a) vera ; b) falsa
[C] entrambe false
[D] a) falsa ; b) vera
393
domanda N. 3:
Si determini il numero di processi generati (compreso quello mandato in esecuzione dalla lineadi comando) dal seguente codice C, compilato e fatto eseguire su un sistema con il sistemaoperativo Unix:main(){int pid, i;for (i = 0; i <= 3; i + +){
pid=fork();if (pid == 0 && i == 2) exit(0);
}exit(0);}
[A] 10
[B] 14
[C] 12
[D] 8
domanda N. 4:
Sia dato il seguente insieme di processi:
TA TC
P1 0 8P2 0 2P3 3 4P4 5 6P5 9 2
dove TA e il tempo di arrivo nella coda dei processi pronti e TC e il tempo di utilizzo della CPU.Utilizzando l’algoritmo di scheduling dello Shortest Job First con prelazione, si determini iltempo medio di esecuzione.
[A] 8.5
[B] 7
[C] 8
[D] 7.5
394
domanda N. 5:
Sia dato il seguente insieme di processi:
TA TC
P1 0 10P2 3 6P3 5 6P4 9 4P5 13 2
dove TA e il tempo di arrivo nella coda dei processi pronti e TC e il tempo di utilizzo della CPU.Utilizzando l’algoritmo di scheduling Round Robin con quanto di tempo q = 2, si determini iltempo medio di esecuzione.
[A] 17.6
[B] 18.0
[C] 18.4
[D] 18.8
domanda N. 6:
Siano dati tre processi che condividono una variabile x e i cui pseudo codici sono di seguitoriportati:
P1 P2 P3
wait(R) wait(S) wait(T)x = x-5; x = x+2; x = x+3;signal(T); if(x >= 3)then if(x==1)thenwait(R); signal(R); signal(R);signal(S); else endif
signal(T); wait(T);endifwait(S);signal(T);
Supponendo che i tre semafori binari R, S e T siano inizializzati rispettivamente a R = 0,S = 1 e T = 0, si determini quale valore iniziale della variabile x, tra quelli proposti nellerisposte, non comporti una situazione di stallo per i processi.
[A] x = −1
[B] x = 0
[C] x = 2
[D] x = 1
395
domanda N. 7:
Si determini la veridicita’ delle seguenti affermazioni:
a) In un sistema con memoria virtuale con tabella delle pagine multilivello e possibile indi-rizzare un area di memoria maggiore rispetto a quella indirizzabile con una tradizionaletabella delle pagine ad un solo livello.
b) Si consideri un sistema con memoria virtuale che rappresenti un indirizzo virtuale v me-diante la coppia (b, d) usando 32 bit. Se la dimensione delle pagine e di 8192 byte allorail numero di pagina b e specificato usando n = 20 bit.
[A] a) vera ; b) falsa
[B] entrambe vere
[C] entrambe false
[D] a) falsa ; b) vera
domanda N. 8:
Sia data una memoria di 32MByte gestita mediante paginazione con frame di 512 KByte e sisupponga che il sistema operativo richieda 6 MByte. Si calcoli la dimensione della memoriaeffettivamente ancora utilizzabile dopo l’allocazione di 5 processi rispettivamente di 2530,1840, 785, 3421, 2013 KByte.
[A] 21540 KByte
[B] 15360 KByte
[C] 19456 KByte
[D] 17408 KByte
domanda N. 9:
Si consideri un sistema con paginazione su due livelli. Per un processo che richiede 16 pagine,di seguito si riportano la tabella delle pagine di primo livello (P ′) e le 4 tabelle di secondolivello (P”0, P”1, P”2 e P”3), le quali hanno rispettivamente indirizzo iniziale 8192, 8704,9216 e 9728:
P ′
0 8192
1 8704
2 9216
3 9728
P”0
0 0
1 512
2 1024
3 1536
P”1
0 2048
1 2560
2 3072
3 3584
P”2
0 4096
1 4608
2 5120
3 5632
P”3
0 6144
1 6656
2 7168
3 7680
Si determini l’indirizzo fisico corrispondente all’indirizzo logico < 3, 3, 123 >
396
[A] 635
[B] 2171
[C] 7291
[D] 7803
domanda N. 10:
Si consideri un sistema operativo con paginazione su richiesta basato sull’algoritmo First InFirst Out (FIFO), che assegna ad ogni processo 3 frame di 512 Byte e che richiede 2 Byte perla memorizzazione di un intero. Ponendo attenzione solo agli array A, B e C, e ricordando cheil linguaggio C memorizza gli array 2-dimensionali per righe, si determini il numero di pagefaults del seguente frammento di codice C. ...int A[2][512], B[512], C[512];...N=512;for (i=0; i<2; i++){
for (j=0; j<N; j++){C[j] = B[j/2 + i*256] + A[i][j];
} }
[A] 10
[B] 11
[C] 12
[D] 8
domanda N. 11:
Si consideri un sistema operativo con paginazione su richiesta basato sull’algoritmo del Work-ing Set con dimensione della finestra di osservazione w = 6. Si determini, a partire dall’istantet = 6, il minimo e massimo numero di frame che il sistema assegna ad un processo di 6 pagineche vengono referenziate nel seguente ordine:
4, 2, 1, 1, 6, 6, 4, 1, 1, 6, 5, 6, 3, 5, 3, 5, 4, 3, 2, 3, 2, 1, 3, 2, 1
[A] min=2, max=4
[B] min=3, max=4
[C] min=2, max=5
[D] min=3, max=5
397
domanda N. 12:
Sia dato un disco con 200 tracce e velocita di seek di 1 traccia per ms. All’istante t=0 ilsistema operativo sta servendo una richiesta sulla traccia 50 e in coda ci sono richieste per letracce (58; 15; 23; 25; 65; 55). Successivamente arrivano altre richieste all’istante t=7 per latraccia 49 e all’istante t=50 per la traccia 57. Si calcoli il tempo di ricerca complessivo perservire tutte le richieste secondo la politica Shortest Seek Time First (SSTF), trascurando lalatenza rotazionale e il tempo di trasferimento.
[A] 107
[B] 65
[C] 117
[D] 98
domanda N. 13:
Si determini la veridicita’ delle seguenti affermazioni:
a) Il principale problema dei livelli 3 e 4 dei sistemi RAID che li rende meno preferibili rispettoal livello 5 e la necessita della generazione della parita, che comporta un supplemento dioverhead.
b) Utilizzando un disco con 7 ms di tempo di seek, 10 msec di latenza media rotazionale etempo di trasferimento di 20 msec, il tempo necessario per trasferire in memoria centraleun file composto da 15 blocchi, distanti mediamente 10 tracce, e di 1.5 secondi esatti.
[A] entrambe vere
[B] a) falsa ; b) vera
[C] a) vera ; b) falsa
[D] entrambe false
domanda N. 14:
Si calcoli la probabilitaa di perdere i dati con un sistema RAID level 5 con 5 dischi, se il MeanTime to Failure (MTF) e di 1500 giorni e il Mean Time to Repair (MTR) e di 24.75 giorni.
[A] 0.00009
[B] 0.00011
[C] 0.0002
398
[D] 0.00003
domanda N. 15:
Si determini la veridicita’ delle seguenti affermazioni:
a) Un vantaggio dello schema di allocazione contigua di file in un file system e la velocita diaccesso poiche non si devono effettuare ulteriori operazioni di ricerche dei blocchi dopoaver individuato il primo blocco
b) Un problema nella prima versione della File Allocation Table di Microsoft (FAT12) era laframmentazione interna per i dischi di grandi dimensioni. Tale problema sussiste anchecon le nuove versioni FAT16 e FAT32, per cui esse vengono oramai utilizzate solo per ifile systen dei floppy disk.
[A] a) vera ; b) falsa
[B] a) falsa ; b) vera
[C] entrambe false
[D] entrambe vere
domanda N. 16:
Sia dato un file system che gestisca blocchi da 1024 byte e indirizzi da 32 bit mediante unaallocazione indicizzata dei file. Si calcoli la dimensione massima di un file per questo filesystem supponendo che i blocchi indice contengono:
• 9 puntatori diretti a blocchi di dati
• 1 puntatori indiretti a blocchi di dati
[A] 266240 byte
[B] 330240 byte
[C] 271360 byte
[D] 50944 byte
domanda N. 17:
Si determini la veridicita delle seguenti affermazioni:
a) Si consideri un file formato da 100 record allocato su disco in forma concatenata dovei record del file sono memorizzati uno per blocco e il file descriptor e gia in memoriacentrale. Se l’ultimo record letto e’ il record 25, allora per cancellare il 60-mo recordsono necessari 35 accessi in lettura e 35 in scrittura.
399
b) Si consideri un file formato da 100 record allocato su disco in forma contigua dove i recorddel file sono memorizzati uno per blocco e il file descriptor e gia in memoria centrale. Sel’ultimo record letto e’ il record 10 allora per cancellare il 60-mo record sono necessari40 accessi in lettura e 1 in scrittura.
[A] a) falsa ; b) vera
[B] a) vera ; b) falsa
[C] entrambe vere
[D] entrambe false
400
================================================== compito N. 46 del 110609 ==========
=========================================
SVOLTO DA MATRICOLA
domanda 1
domanda 2
domanda 3
domanda 4
domanda 5
domanda 6
domanda 7
domanda 8
domanda 9
domanda 10
domanda 11
domanda 12
domanda 13
domanda 14
domanda 15
domanda 16
domanda 17
• 1.5 punti per ogni risposta esatta
• 0 punti per ogni risposta non data
• 0.5 punti di penalita’ per ogni risposta errata
FIRMA
401
============================================ CORSO DI SISTEMI OPERTIVI mod.A (gr. 1) ============ compito N. 47 del 110609 ==========
=========================================
domanda N. 1:
Si determini la veridicita’ delle seguenti affermazioni:
a) Uno dei principali vantaggi dei sistemi operativi con architettura monolitica e’ l’efficienza.Tale approccio, e oggi comunque poco utilizzato in quanto la complessita dei modernisistemi operativi lo rende poco praticabile.
b) Uno degli svantaggi delle macchine virtuali e’ la loro difficile realizzazione in quanto edifficile ottenere una replica della macchina fisica sottostante con strumenti software.
[A] entrambe false
[B] a) vera ; b) falsa
[C] entrambe vere
[D] a) falsa ; b) vera
domanda N. 2:
Si determini la veridicita’ delle seguenti affermazioni:
a) Il principale vantaggio nell’uso di due threads cooperanti di uno stesso processo, al postodi due processi distinti e che nel primo caso non e necessario sincronizzare i threads inquanto gia condividono lo spazio di indirizzamento, mentre nel secondo caso e’ necessariol’uso dei semafori.
b) La comunicazione tra threads cooperanti di uno stesso processo e sempre piu efficientedella comunicazione tra processi distinti in quanto i threads possono utilizzare lo spaziodi indirizzamento condiviso senza fare uso degli strumenti di comunicazione tra processigestiti dal kernel.
[A] a) vera ; b) falsa
[B] entrambe vere
[C] entrambe false
[D] a) falsa ; b) vera
402
domanda N. 3:
Si determini il numero di processi generati (compreso quello mandato in esecuzione dalla lineadi comando) dal seguente codice C, compilato e fatto eseguire su un sistema con il sistemaoperativo Unix:main(){int pid, i;for (i = 0; i <= 3; i + +){
pid=fork();if (pid == 0 && i == 1) exit(0);
}exit(0);}
[A] 10
[B] 6
[C] 8
[D] 9
domanda N. 4:
Sia dato il seguente insieme di processi:
TA TC
P1 0 8P2 0 2P3 3 4P4 5 6P5 9 2
dove TA e il tempo di arrivo nella coda dei processi pronti e TC e il tempo di utilizzo della CPU.Utilizzando l’algoritmo di scheduling dello Shortest Job First con prelazione, si determini iltempo medio di esecuzione.
[A] 7.5
[B] 8.5
[C] 7
[D] 8
403
domanda N. 5:
Sia dato il seguente insieme di processi:
TA TC
P1 0 8P2 0 2P3 3 4P4 5 6P5 9 2
dove TA e il tempo di arrivo nella coda dei processi pronti e TC e il tempo di utilizzo della CPU.Utilizzando l’algoritmo di scheduling Round Robin con quanto di tempo q = 2, si determini iltempo medio di esecuzione.
[A] 11.4
[B] 11.8
[C] 11.2
[D] 11.6
domanda N. 6:
Siano dati tre processi che condividono una variabile x e i cui psudo codici sono di seguitoriportati:
P1 P2 P3
wait(R) wait(S) wait(T)x = x+1; x = 2*x; x = x+1;if (x > 0) then x = x+1; x = 2*x;
signal(S); signal(T); signal(S);else wait(S); wait(T);
signal(T); x = x+1; print(x);endif signal(T); signal(R);wait(R);
Si determini l’output del processo P3 supponendo che inizialmente x = 0 e i tre semaforibinari siano inizializzati rispettivamente R = 1, S = 0, T = 0.
[A] 11
[B] 9
[C] 8
[D] 10
domanda N. 7:
Si determini la veridicita’ delle seguenti affermazioni:
404
a) Nei moderni sistemi operativi le tecniche di gestione della memoria centrale sono pocoimportanti a causa del basso costo economico delle stesse.
b) Andando dai livelli di memoria piu bassi (dispositivi secondari e terziari) a quelli piu alti(registri e cache), il costo economico per bit aumenta.
[A] entrambe vere
[B] a) vera ; b) falsa
[C] entrambe false
[D] a) falsa ; b) vera
domanda N. 8:
Sia dato un sistema che gestisce una memoria di 5120 byte mediante partizioni variabili. Sisupponga che nella memoria siano gia presenti 5 processi di dimensioni 740, 875, 250, 1450 e490 byte rispettivamente allocati negli indirizzi fisici 2048, 3072, 2788, 0 e 4096. Si determinil’indirizzo in cui verra allocato un ulteriore processo di 389 byte mediante la tecnica del bestfit.
[A] 3947
[B] 4586
[C] 1450
[D] 3038
domanda N. 9:
Si consideri un sistema con paginazione su due livelli. Per un processo che richiede 16 pagine,di seguito si riportano la tabella delle pagine di primo livello (P ′) e le 4 tabelle di secondolivello (P”0, P”1, P”2 e P”3), le quali hanno rispettivamente indirizzo iniziale 8192, 8704,9216 e 9728:
P ′
0 8192
1 8704
2 9216
3 9728
P”0
0 0
1 512
2 1024
3 1536
P”1
0 2048
1 2560
2 3072
3 3584
P”2
0 4096
1 4608
2 5120
3 5632
P”3
0 6144
1 6656
2 7168
3 7680
Si determini l’indirizzo fisico corrispondente all’indirizzo logico < 2, 0, 85 >
[A] 4693
[B] 4181
405
[C] 890
[D] 3671
domanda N. 10:
Si consideri un sistema operativo con paginazione su richiesta basato sull’algoritmo First InFirst Out (FIFO), che assegna ad ogni processo 3 frame di 512 Byte e che richiede 2 Byte perla memorizzazione di un intero. Ponendo attenzione solo agli array A, B e C, e ricordando cheil linguaggio C memorizza gli array 2-dimensionali per righe, si determini il numero di pagefaults del seguente frammento di codice C. ...int A[2][512], B[512], C[512];...N=512;for (i=0; i<2; i++){
for (j=0; j<N; j++){C[j] = B[j/2 + i*256] + A[i][j];
} }
[A] 10
[B] 11
[C] 12
[D] 8
domanda N. 11:
Si consideri un sistema operativo con paginazione su richiesta basato sull’algoritmo First InFirst Out con seconda chance, che assegna ad ogni processo 5 frame. Se determini il numerodi page faults per la squenza di riferimenti alle pagine:
7, 6, 5, 7, 4, 3, 6, 2, 1, 7, 6, 3, 5, 4, 7
[A] 9
[B] 8
[C] 10
[D] 7
domanda N. 12:
Sia dato un disco con 200 tracce e velocita di seek di 1 traccia per ms. All’istante t=0 il
406
sistema operativo sta servendo una richiesta sulla traccia 100 e in coda ci sono richieste per letracce (40; 65; 90; 120; 145; 125). Successivamente arrivano altre richieste all’istante t=30 perla traccia 95 e all’istante t=135 per la traccia 100. Si calcoli il tempo di ricerca complessivoper servire tutte le richieste secondo la politica Shortest Seek Time First (SSTF), trascurandola latenza rotazionale e il tempo di trasferimento.
[A] 165
[B] 215
[C] 185
[D] 210
domanda N. 13:
Si determini la veridicita’ delle seguenti affermazioni:
a) Le testine di un disco memorizzano i dati in tracce, che sono una parte di unita piu grandichiamate settori, i quali formano i cilindri quando sono considerati verticalmente
b) L’algoritmo di scheduling del disco Shortest Seek Time First (SSTF) e il piu adatto aisistemi interattivi, in quanto assicura il minor tempo medio di servizio e non risente delproblema della posticipazione indefinita delle richieste.
[A] entrambe false
[B] a) vera ; b) falsa
[C] a) falsa ; b) vera
[D] entrambe vere
domanda N. 14:
Si consideri un disco che opera a 7200 rpm (giri al minuto), dove ogni traccia e composta da80 settori di 512 bytes ognuno. Si determini la velocita di trasferimento necessaria per poterleggere o scrivere una traccia intera durante una rotazione del disco.
[A] circa 4800 KB/sec
[B] circa 9600 KB/sec
[C] circa 13400 KB/sec
[D] circa 19200 KB/sec
domanda N. 15:
Si determini la veridicita’ delle seguenti affermazioni:
407
a) Per motivi di efficienza, la lista dei blocchi liberi e generalmente ordinata secondo l’indicedel blocco.
b) I principali compiti di un file system sono: gestire le strutture logiche del file system(directory e file), organizzare i file in blocchi e gestirne l’allocazione, verificare l’integritadei dati, gestire lo spazio libero e verificare che i dati nei file non contengano errori.
[A] a) vera ; b) falsa
[B] entrambe vere
[C] a) falsa ; b) vera
[D] entrambe false
domanda N. 16:
Sia dato un file system di 2 MB che gestisca i file mediante allocazione tabellare (ad es. unaFile Allocation Table). Si determini la dimensione della tabella nel caso in cui i blocchi deldisco siano di 1024 byte.
[A] ∼ 64 KB
[B] ∼ 16 KB
[C] ∼ 2.7 KB
[D] ∼ 6 KB
domanda N. 17:
Si determini la veridicita delle seguenti affermazioni:
a) Si consideri un file formato da 100 record allocato su disco in forma contigua dove i recorddel file sono memorizzati uno per blocco e il file descriptor e gia in memoria centrale. Sel’ultimo record letto e’ il record 10 allora per cancellare il 50-mo record sono necessari 1accesso in lettura e 1 in scrittura.
b) Si consideri un file formato da 100 record allocato su disco in forma concatenata dovei record del file sono memorizzati uno per blocco e il file descriptor e gia in memoriacentrale. Se l’ultimo record letto e’ il record 15, allora per cancellare il 65-mo recordsono necessari 50 accessi in lettura e 50 in scrittura.
[A] entrambe false
[B] a) falsa ; b) vera
[C] entrambe vere
[D] a) vera ; b) falsa
408
================================================== compito N. 47 del 110609 ==========
=========================================
SVOLTO DA MATRICOLA
domanda 1
domanda 2
domanda 3
domanda 4
domanda 5
domanda 6
domanda 7
domanda 8
domanda 9
domanda 10
domanda 11
domanda 12
domanda 13
domanda 14
domanda 15
domanda 16
domanda 17
• 1.5 punti per ogni risposta esatta
• 0 punti per ogni risposta non data
• 0.5 punti di penalita’ per ogni risposta errata
FIRMA
409
============================================ CORSO DI SISTEMI OPERTIVI mod.A (gr. 1) ============ compito N. 48 del 110609 ==========
=========================================
domanda N. 1:
Si determini la veridicita’ delle seguenti affermazioni:
a) Il livello software che contiene le componenti fondamentali di un sistema operativo e’ chiam-ato kernel. Al kernel appartengono i moduli per: la gestione della memoria centrale, ilcontrollo dei processi, la gestione dell’I/O e la gestione della memoria secondaria. Aquesto elenco di componenti fondamentali del kernel va aggiunto solo il sottosistema perla gestione delle interfacce grafiche e per l’interprete del linguaggio di comando.
b) I sistemi operativi hanno lo scopo primario di permettere alle applicazioni software diinteragire con l’hardware sottostante, e di gestire le risorse hardware e software delsistema in maniera efficiente.
[A] a) vera ; b) falsa
[B] entrambe false
[C] entrambe vere
[D] a) falsa ; b) vera
domanda N. 2:
Si determini la veridicita’ delle seguenti affermazioni:
a) Le prestazioni di una qualunque applicazione multithreading e sempre piu’ efficiente nelcaso di una implementazione dei thread utente secondo il modello molti a uno rispettoad una implementazione secondo il modello uno a uno. Cio e’ dovuto al fatto che con ilmodello molti a uno, i thread a livello utente non richiamano il kernel per le operazionidi scheduling e sincronizzazione.
b) Uno svantaggio dell’implementazione dei threads secondo il modello uno a uno e la scarsaportabilita delle applicazioni, in quanto esse devono interfacciarsi direttamente con lechiamate di sistema relative al sistema operativo su cui deve essere eseguita l’applicazione.I sistemi operativi conformi ad interfacce standard, ad esempio POSIX, riducono il prob-lema.
[A] entrambe false
[B] a) falsa ; b) vera
[C] entrambe vere
410
[D] a) vera ; b) falsa
domanda N. 3:
Si determini il numero di processi generati (compreso quello mandato in esecuzione dalla lineadi comando) dal seguente codice C, compilato e fatto eseguire su un sistema con il sistemaoperativo Unix:main(){int pid, i;for (i = 0; i <= 3; i + +){
pid=fork();if (pid == 0 && i > 1) exit(0);
}exit(0);}
[A] 10
[B] 12
[C] 9
[D] 8
domanda N. 4:
Sia dato il seguente insieme di processi:
TA TC
P1 0 12P2 2 3P3 6 3P4 11 6P5 14 2
dove TA e il tempo di arrivo nella coda dei processi pronti e TC e il tempo di utilizzo della CPU.Utilizzando l’algoritmo di scheduling dello Shortest Job First con prelazione, si determini iltempo medio di esecuzione.
[A] 8.4
[B] 8.2
[C] 8.0
[D] 7.8
411
domanda N. 5:
Sia dato il seguente insieme di processi:
TA TC
P1 0 10P2 3 6P3 5 6P4 9 4P5 13 2
dove TA e il tempo di arrivo nella coda dei processi pronti e TC e il tempo di utilizzo della CPU.Utilizzando l’algoritmo di scheduling Round Robin con quanto di tempo q = 2, si determini iltempo medio di esecuzione.
[A] 17.6
[B] 18.0
[C] 18.4
[D] 18.8
domanda N. 6:
Siano dati tre processi che condividono una variabile x e i cui pseudo codici sono di seguitoriportati:
P1 P2 P3
wait(R) wait(S) wait(T)x = x-5; x = x+2; x = x+3;signal(T); if(x >= 5)then if(x==1)thenwait(R); signal(T); signal(R);signal(S); else endif
signal(R); wait(T);endifwait(S);signal(T);
Supponendo che i tre semafori binari R, S e T siano inizializzati rispettivamente a R = 0,S = 1 e T = 0, si determini quale valore iniziale della variabile x, tra quelli proposti nellerisposte, non comporti una situazione di stallo per i processi.
[A] x = 1
[B] x = 2
[C] x = 3
412
[D] x = 4
domanda N. 7:
Si determini la veridicita’ delle seguenti affermazioni:
a) Nei moderni sistemi operativi le tecniche di gestione della memoria centrale sono pocoimportanti a causa del basso costo economico delle stesse.
b) Andando dai livelli di memoria piu bassi (dispositivi secondari e terziari) a quelli piu alti(registri e cache), il costo economico per bit aumenta.
[A] entrambe false
[B] a) falsa ; b) vera
[C] entrambe vere
[D] a) vera ; b) falsa
domanda N. 8:
Si consideri un sistema di paginazione con tabella delle pagine in memoria centrale. Suppo-nendo che un riferimento alla memoria centrale richieda 190 ns e che il tempo di accesso airegistri TLB richieda 25 ns, si determini la percentuale di successo nell’accesso ai TLB (hitratio dei TLB) per ottenere un tempo medio di accesso di 272 ns.
[A] 68%
[B] 70%
[C] 73.5%
[D] 76.6666%
domanda N. 9:
Si consideri un sistema con paginazione su due livelli. Per un processo che richiede 16 pagine,ognuna di 512 byte, di seguito si riportano la tabella delle pagine di primo livello (P ′) e le4 tabelle di secondo livello (P”0, P”1, P”2 e P”3), le quali hanno rispettivamente indirizzofisico iniziale 0, 512, 1024 e 1536:
P ′
0 0
1 512
2 1024
3 1536
P”0
0 8192
1 11776
2 5120
3 14336
P”1
0 10752
1 7680
2 3072
3 6144
P”2
0 5632
1 10240
2 13824
3 11264
P”3
0 9216
1 3584
2 12800
3 14848
Si determini quale indirizzo fisico, tra quelli proposti, non appartiene allo spazio di indirizza-mento del processo.
413
[A] 10754
[B] 12802
[C] 5122
[D] 13314
domanda N. 10:
Si consideri un sistema operativo con paginazione su richiesta basato sull’algoritmo First InFirst Out (FIFO), che assegna ad ogni processo 3 frame di 512 Byte e che richiede 2 Byte perla memorizzazione di un intero. Ponendo attenzione solo agli array A, B e C, e ricordando cheil linguaggio C memorizza gli array 2-dimensionali per righe, si determini il numero di pagefaults del seguente frammento di codice C. ...int A[2][512], B[512], C[512];...N=512;for (i=0; i<2; i++){
for (j=0; j<N; j++){C[j] = B[j/2 + i*256] + A[i][j];
} }
[A] 12
[B] 8
[C] 10
[D] 11
domanda N. 11:
Si consideri un sistema opereativo con paginazione su richiesta basato sull’algoritmo LeastRecently Used (LRU), che assegna ad ogni processo 5 frame. Si determini il numero di pagefaults per la seguente sequenza di riferimenti alle pagine:
6, 7, 1, 6, 5, 4, 7, 3, 1, 6, 5, 6, 1, 4, 2
[A] 10
[B] 11
[C] 9
[D] 12
414
domanda N. 12:
Sia dato un disco con 200 tracce e velocita di seek di 1 traccia per ms. All’istante t=0 ilsistema operativo sta servendo una richiesta sulla traccia 50 e in coda ci sono richieste per letracce (58; 15; 23; 25; 65; 55). Successivamente arrivano altre richieste all’istante t=7 per latraccia 49 e all’istante t=50 per la traccia 57. Si calcoli il tempo di ricerca complessivo perservire tutte le richieste secondo la politica Shortest Seek Time First (SSTF), trascurando lalatenza rotazionale e il tempo di trasferimento.
[A] 98
[B] 107
[C] 65
[D] 117
domanda N. 13:
Si determini la veridicita’ delle seguenti affermazioni:
a) Le tecniche di ottimizzazione rotazionale del disco hanno avuto una importanza crescentenegli ultimi anni perche i moderni dischi rigidi esibiscono tempi di seek e latenze mediedello stesso ordine di grandezza.
b) Il livello RAID 1 e il migliore per ambienti in cui l’affidabilita ha una priorita superiore alcosto o alle prestazioni.
[A] entrambe vere
[B] entrambe false
[C] a) vera ; b) falsa
[D] a) falsa ; b) vera
domanda N. 14:
Si calcoli la probabilitaa di perdere i dati con un sistema RAID level 5 con 5 dischi, se il MeanTime to Failure (MTF) e di 1600 giorni e il Mean Time to Repair (MTR) e di 23.04 giorni.
[A] 0.00009
[B] 0.0002
[C] 0.00003
[D] 0.00011
415
domanda N. 15:
Si determini la veridicita’ delle seguenti affermazioni:
a) Per motivi di efficienza, la lista dei blocchi liberi e generalmente ordinata secondo l’indicedel blocco.
b) I principali compiti di un file system sono: gestire le strutture logiche del file system(directory e file), organizzare i file in blocchi e gestirne l’allocazione, verificare l’integritadei dati, gestire lo spazio libero e verificare che i dati nei file non contengano errori.
[A] a) vera ; b) falsa
[B] entrambe vere
[C] a) falsa ; b) vera
[D] entrambe false
domanda N. 16:
Sia dato un file system che gestisca blocchi da 1024 byte e indirizzi da 32 bit mediante unaallocazione indicizzata dei file. Si calcoli la dimensione massima di un file per questo filesystem supponendo che i blocchi indice contengono:
• 9 puntatori diretti a blocchi di dati
• 1 puntatori indiretti a blocchi di dati
[A] 330240 byte
[B] 271360 byte
[C] 50944 byte
[D] 266240 byte
domanda N. 17:
Si determini la veridicita delle seguenti affermazioni:
a) Si consideri un file formato da 100 record allocato su disco in forma indicizzata dove irecord del file sono memorizzati uno per blocco e il file descriptor e gia in memoriacentrale. Se non e stato fatto ancora nessun accesso al file, allora per cancellare il 50-morecord e necessario 1 accesso in lettura e 1 in scrittura.
b) Si consideri un file formato da 100 record allocato su disco in forma contigua dove i recorddel file sono memorizzati uno per blocco e il file descriptor e gia in memoria centrale. Sel’ultimo record letto e’ il record 10 allora per cancellare il 75-mo record sono necessari25 accessi in lettura e 1 in scrittura.
416
[A] entrambe false
[B] a) falsa ; b) vera
[C] entrambe vere
[D] a) vera ; b) falsa
417
================================================== compito N. 48 del 110609 ==========
=========================================
SVOLTO DA MATRICOLA
domanda 1
domanda 2
domanda 3
domanda 4
domanda 5
domanda 6
domanda 7
domanda 8
domanda 9
domanda 10
domanda 11
domanda 12
domanda 13
domanda 14
domanda 15
domanda 16
domanda 17
• 1.5 punti per ogni risposta esatta
• 0 punti per ogni risposta non data
• 0.5 punti di penalita’ per ogni risposta errata
FIRMA
418
============================================ CORSO DI SISTEMI OPERTIVI mod.A (gr. 1) ============ compito N. 49 del 110609 ==========
=========================================
domanda N. 1:
Si determini la veridicita’ delle seguenti affermazioni:
a) Per motivi di sicurezza, le seguenti istruzioni dovrebbero essere sempre eseguite in modalitasistema: lettura del clock di sistema, disabilitazione delle interruzioni, switch dallamodalita utente a quella di sistema, accesso ai dispositivi di I/O.
b) La principale difficolta nello sviluppo di un sistema operativo real time e garantire che iprocessi terminino la loro esecuzione in un fissato intervallo di tempo. In tal senso unruolo chiave e svolto dallo scheduler.
[A] entrambe false
[B] a) falsa ; b) vera
[C] a) vera ; b) falsa
[D] entrambe vere
domanda N. 2:
Si determini la veridicita’ delle seguenti affermazioni:
a) Il principale vantaggio nell’uso di due threads cooperanti di uno stesso processo, al postodi due processi distinti e che nel primo caso non e necessario sincronizzare i threads inquanto gia condividono lo spazio di indirizzamento, mentre nel secondo caso e’ necessariol’uso dei semafori.
b) La comunicazione tra threads cooperanti di uno stesso processo e sempre piu efficientedella comunicazione tra processi distinti in quanto i threads possono utilizzare lo spaziodi indirizzamento condiviso senza fare uso degli strumenti di comunicazione tra processigestiti dal kernel.
[A] entrambe false
[B] a) falsa ; b) vera
[C] a) vera ; b) falsa
[D] entrambe vere
419
domanda N. 3:
Si determini il numero di processi generati (compreso quello mandato in esecuzione dalla lineadi comando) dal seguente codice C, compilato e fatto eseguire su un sistema con il sistemaoperativo Unix:main(){int pid, i;for (i = 0; i <= 3; i + +){
pid=fork();if (pid == 0 && i < 3) exit(0);
}exit(0);}
[A] 8
[B] 5
[C] 9
[D] 6
domanda N. 4:
Sia dato il seguente insieme di processi:
TA TC
P1 0 12P2 2 3P3 6 3P4 11 6P5 14 2
dove TA e il tempo di arrivo nella coda dei processi pronti e TC e il tempo di utilizzo della CPU.Utilizzando l’algoritmo di scheduling dello Shortest Job First con prelazione, si determini iltempo medio di esecuzione.
[A] 8.0
[B] 7.8
[C] 8.4
[D] 8.2
420
domanda N. 5:
Sia dato il seguente insieme di processi:
TA TC
P1 0 8P2 3 6P3 5 8P4 9 4P5 11 2
dove TA e il tempo di arrivo nella coda dei processi pronti e TC e il tempo di utilizzo della CPU.Utilizzando l’algoritmo di scheduling Round Robin con quanto di tempo q = 2, si determini iltempo medio di esecuzione.
[A] 16.4
[B] 16.6
[C] 16
[D] 16.2
domanda N. 6:
Siano dati tre processi che condividono una variabile x e i cui pseudo codici sono di seguitoriportati:
P1 P2 P3
wait(R) wait(S) wait(T);x = x+2; x = x+4; x = x-5;if(x >= 4)then if(x==1)then signal(S);signal(S); signal(T); wait(T);
else endif signal(R);signal(T); wait(S);
endifwait(R);signal(S);
Supponendo che i tre semafori binari R, S e T siano inizializzati rispettivamente a R = 1,S = 0 e T = 0, si determini quale valore iniziale della variabile x, tra quelli proposti nellerisposte, non comporti una situazione di stallo per i processi.
[A] x = 1
[B] x = 3
[C] x = 2
[D] x = 0
421
domanda N. 7:
Si determini la veridicita’ delle seguenti affermazioni:
a) Il significativo overhrad associato alla tecnica del compattamento usata per ridurre il prob-lema della frammentazione esterna, rende tale tecnica poco adatta per un utilizzo neisistemi operativi real-time.
b) In un sistema operativo che gestisce la memoria centrale mediante partizioni fisse, i registrichiamati base e limit vengono utilizzati per decidere in quale partizione allocare i processi.
[A] a) falsa ; b) vera
[B] entrambe vere
[C] entrambe false
[D] a) vera ; b) falsa
domanda N. 8:
Si consideri un sistema di paginazione con tabella delle pagine in memoria centrale. Suppo-nendo che un riferimento alla memoria centrale richieda 180 ns e che il tempo di accesso airegistri TLB richieda 30 ns, si determini la percentuale di successo nell’accesso ai TLB (hitratio dei TLB) per ottenere un tempo medio di accesso di 280 ns.
[A] 65%
[B] 68.3333%
[C] 61.111%
[D] 58%
domanda N. 9:
Si consideri un sistema con paginazione su due livelli. Per un processo che richiede 16 pagine,ognuna di 512 byte, di seguito si riportano la tabella delle pagine di primo livello (P ′) e le4 tabelle di secondo livello (P”0, P”1, P”2 e P”3), le quali hanno rispettivamente indirizzofisico iniziale 0, 512, 1024 e 1536:
P ′
0 0
1 512
2 1024
3 1536
P”0
0 8192
1 11776
2 5120
3 14336
P”1
0 10752
1 7680
2 3072
3 6144
P”2
0 5632
1 10240
2 13824
3 11264
P”3
0 9216
1 3584
2 12800
3 14848
Si determini quale indirizzo fisico, tra quelli proposti, non appartiene allo spazio di indirizza-mento del processo.
422
[A] 15361
[B] 7682
[C] 8194
[D] 3586
domanda N. 10:
Si consideri un sistema operativo con paginazione su richiesta basato sull’algoritmo First InFirst Out (FIFO), che assegna ad ogni processo 3 frame di 512 Byte e che richiede 2 Byte perla memorizzazione di un intero. Ponendo attenzione solo agli array A, B e C, e ricordando cheil linguaggio C memorizza gli array 2-dimensionali per righe, si determini il numero di pagefaults del seguente frammento di codice C. ...int A[2][512], B[512], C[512];...N=512;for (i=0; i<2; i++){
for (j=0; j<N; j++){B[j/2 + i*256] = A[i][j] + C[j];
} }
[A] 10
[B] 12
[C] 8
[D] 11
domanda N. 11:
Si consideri un sistema operativo con paginazione su richiesta basato sull’algoritmo LeastRecently Used (LRU), che assegna ad ogni processo 5 frame. Se determini il numero di pagefaults per la squenza di riferimenti alle pagine:
5, 6, 5, 4, 5, 7, 3, 7, 4, 7, 6, 5, 2, 1, 5
[A] 7
[B] 9
[C] 8
[D] 10
423
domanda N. 12:
Sia dato un disco con 200 tracce e velocita di seek di 1 traccia per ms. All’istante t=0 il sistemaoperativo sta servendo una richiesta sulla traccia 100 e in coda ci sono richieste per le tracce(10; 30; 55; 80; 92; 130). Successivamente arrivano altre richieste all’istante t=40 per la traccia50 e all’istante t=100 per la traccia 15. Si calcoli il tempo di ricerca complessivo per serviretutte le richieste secondo la politica LOOK, iniziando in ordine discendente e trascurando lalatenza rotazionale e il tempo di trasferimento.
[A] 215
[B] 285
[C] 325
[D] 110
domanda N. 13:
Si determini la veridicita’ delle seguenti affermazioni:
a) Le tecniche di ottimizzazione rotazionale del disco hanno avuto una importanza crescentenegli ultimi anni perche i moderni dischi rigidi esibiscono tempi di seek e latenze mediedello stesso ordine di grandezza.
b) Il livello RAID 1 e il migliore per ambienti in cui l’affidabilita ha una priorita superiore alcosto o alle prestazioni.
[A] entrambe vere
[B] entrambe false
[C] a) vera ; b) falsa
[D] a) falsa ; b) vera
domanda N. 14:
Si consideri un disco che opera a 7200 rpm (giri al minuto), dove ogni traccia e composta da80 settori di 512 bytes ognuno. Si determini la velocita di trasferimento necessaria per poterleggere o scrivere una traccia intera durante una rotazione del disco.
[A] circa 9600 KB/sec
[B] circa 13400 KB/sec
[C] circa 19200 KB/sec
424
[D] circa 4800 KB/sec
domanda N. 15:
Si determini la veridicita’ delle seguenti affermazioni:
a) Un modo per risolvere il problema dei numerosi accessi al disco con lo schema di allocazionedei file a lista concatenata e l’utilizzo di blocchi molto grandi. Con tale modifica si ottieneuno schema senza grossi inconvenienti legati alla gestione del disco, che e utilizzato innumerosi sistemi come, ad esempio, Solaris 2.
b) Uno svantaggio dello schema di allocazione contigua di file in un file system e la frammen-tazione esterna del disco.
[A] entrambe false
[B] a) falsa ; b) vera
[C] a) vera ; b) falsa
[D] entrambe vere
domanda N. 16:
Sia dato un file system di 2 MB che gestisca i file mediante allocazione tabellare (ad es. unaFile Allocation Table). Si determini la dimensione della tabella nel caso in cui i blocchi deldisco siano di 512 byte.
[A] 6 KB
[B] 12 KB
[C] 48 KB
[D] 32 KB
domanda N. 17:
Si determini la veridicita delle seguenti affermazioni:
a) Si consideri un file formato da 100 record allocato su disco in forma indicizzata dove irecord del file sono memorizzati uno per blocco e il file descriptor e gia in memoriacentrale. Se non e stato fatto ancora nessun accesso al file, allora per cancellare il 60-morecord sono necessari 35 accessi in lettura e 1 in scrittura.
b) Si consideri un file formato da 100 record allocato su disco in forma contigua dove i recorddel file sono memorizzati uno per blocco e il file descriptor e gia in memoria centrale. Sel’ultimo record letto e’ il record 10 allora per cancellare il 60-mo record sono necessari40 accessi in lettura e 40 in scrittura.
425
[A] a) falsa ; b) vera
[B] a) vera ; b) falsa
[C] entrambe vere
[D] entrambe false
426
================================================== compito N. 49 del 110609 ==========
=========================================
SVOLTO DA MATRICOLA
domanda 1
domanda 2
domanda 3
domanda 4
domanda 5
domanda 6
domanda 7
domanda 8
domanda 9
domanda 10
domanda 11
domanda 12
domanda 13
domanda 14
domanda 15
domanda 16
domanda 17
• 1.5 punti per ogni risposta esatta
• 0 punti per ogni risposta non data
• 0.5 punti di penalita’ per ogni risposta errata
FIRMA
427
============================================ CORSO DI SISTEMI OPERTIVI mod.A (gr. 1) ============ compito N. 50 del 110609 ==========
=========================================
domanda N. 1:
Si determini la veridicita’ delle seguenti affermazioni:
a) Per motivi di sicurezza, le seguenti istruzioni dovrebbero essere sempre eseguite in modalitasistema: lettura del clock di sistema, disabilitazione delle interruzioni, switch dallamodalita utente a quella di sistema, accesso ai dispositivi di I/O.
b) La principale difficolta nello sviluppo di un sistema operativo real time e garantire che iprocessi terminino la loro esecuzione in un fissato intervallo di tempo. In tal senso unruolo chiave e svolto dallo scheduler.
[A] entrambe vere
[B] entrambe false
[C] a) falsa ; b) vera
[D] a) vera ; b) falsa
domanda N. 2:
Si determini la veridicita’ delle seguenti affermazioni:
a) Il principale vantaggio nell’uso di due threads cooperanti di uno stesso processo, al postodi due processi distinti e che nel primo caso non e necessario sincronizzare i threads inquanto gia condividono lo spazio di indirizzamento, mentre nel secondo caso e’ necessariol’uso dei semafori.
b) La comunicazione tra threads cooperanti di uno stesso processo e sempre piu efficientedella comunicazione tra processi distinti in quanto i threads possono utilizzare lo spaziodi indirizzamento condiviso senza fare uso degli strumenti di comunicazione tra processigestiti dal kernel.
[A] entrambe vere
[B] entrambe false
[C] a) falsa ; b) vera
[D] a) vera ; b) falsa
428
domanda N. 3:
Si determini il numero di processi generati (compreso quello mandato in esecuzione dalla lineadi comando) dal seguente codice C, compilato e fatto eseguire su un sistema con il sistemaoperativo Unix:main(){int pid, i;for (i = 0; i <= 3; i + +){
pid=fork();if (pid == 0 && i < 2) exit(0);
}exit(0);}
[A] 9
[B] 10
[C] 6
[D] 8
domanda N. 4:
Sia dato il seguente insieme di processi:
TA TC
P1 0 8P2 0 2P3 3 4P4 5 6P5 9 2
dove TA e il tempo di arrivo nella coda dei processi pronti e TC e il tempo di utilizzo della CPU.Utilizzando l’algoritmo di scheduling dello Shortest Job First con prelazione, si determini iltempo medio di esecuzione.
[A] 7.5
[B] 8.5
[C] 7
[D] 8
429
domanda N. 5:
Sia dato il seguente insieme di processi:
TA TC
P1 0 8P2 3 6P3 5 8P4 9 4P5 11 2
dove TA e il tempo di arrivo nella coda dei processi pronti e TC e il tempo di utilizzo della CPU.Utilizzando l’algoritmo di scheduling Round Robin con quanto di tempo q = 2, si determini iltempo medio di esecuzione.
[A] 16
[B] 16.2
[C] 16.4
[D] 16.6
domanda N. 6:
Siano dati tre processi che condividono una variabile x e i cui pseudo codici sono di seguitoriportati:
P1 P2 P3
wait(R) wait(S) wait(T)x = x+3; x = x-5; x = x+2;if(x==4)then signal(R); if(x >= 5)then
signal(S); wait(S); signal(S);endif signal(T); elsewait(R); signal(R);
endifwait(T);signal(R);
Supponendo che i tre semafori binari R, S e T siano inizializzati rispettivamente a R = 0,S = 0 e T = 1, si determini quale valore iniziale della variabile x, tra quelli proposti nellerisposte, non comporti una situazione di stallo per i processi.
[A] x = 4
[B] x = 1
[C] x = 3
[D] x = 2
430
domanda N. 7:
Si determini la veridicita’ delle seguenti affermazioni:
a) Nei moderni sistemi operativi le tecniche di gestione della memoria centrale sono pocoimportanti a causa del basso costo economico delle stesse.
b) Andando dai livelli di memoria piu bassi (dispositivi secondari e terziari) a quelli piu alti(registri e cache), il costo economico per bit aumenta.
[A] a) vera ; b) falsa
[B] entrambe false
[C] a) falsa ; b) vera
[D] entrambe vere
domanda N. 8:
Sia dato un sistema che gestisce una memoria di 5120 byte mediante partizioni variabili. Sisupponga che nella memoria siano gia presenti 5 processi di dimensioni 740, 875, 250, 1450 e490 byte rispettivamente allocati negli indirizzi fisici 2048, 3072, 2788, 0 e 4096. Si determinil’indirizzo in cui verra allocato un ulteriore processo di 389 byte mediante la tecnica del bestfit.
[A] 3038
[B] 3947
[C] 4586
[D] 1450
domanda N. 9:
Si consideri un sistema con paginazione su due livelli. Per un processo che richiede 16 pagine,ognuna di 512 byte, di seguito si riportano la tabella delle pagine di primo livello (P ′) e le4 tabelle di secondo livello (P”0, P”1, P”2 e P”3), le quali hanno rispettivamente indirizzofisico iniziale 0, 512, 1024 e 1536:
P ′
0 0
1 512
2 1024
3 1536
P”0
0 8192
1 11776
2 5120
3 14336
P”1
0 10752
1 7680
2 3072
3 6144
P”2
0 5632
1 10240
2 13824
3 11264
P”3
0 9216
1 3584
2 12800
3 14848
Si determini quale indirizzo fisico, tra quelli proposti, non appartiene allo spazio di indirizza-mento del processo.
431
[A] 14338
[B] 3074
[C] 7666
[D] 11266
domanda N. 10:
Si consideri un sistema operativo con paginazione su richiesta basato sull’algoritmo First InFirst Out (FIFO), che assegna ad ogni processo 3 frame di 512 Byte e che richiede 2 Byte perla memorizzazione di un intero. Ponendo attenzione solo agli array A, B e C, e ricordando cheil linguaggio C memorizza gli array 2-dimensionali per righe, si determini il numero di pagefaults del seguente frammento di codice C. ...int A[2][512], B[512], C[512];...N=512;for (i=0; i<2; i++){
for (j=0; j<N; j++){C[j] = B[j/2 + i*256] + A[i][j];
} }
[A] 8
[B] 10
[C] 11
[D] 12
domanda N. 11:
Si consideri un sistema operativo con paginazione su richiesta basato sull’algoritmo LeastRecently Used (LRU), che assegna ad ogni processo 5 frame. Se determini il numero di pagefaults per la squenza di riferimenti alle pagine:
3, 5, 6, 3, 6, 4, 7, 2, 4, 7, 5, 1, 4, 2, 6
[A] 9
[B] 8
[C] 10
[D] 7
432
domanda N. 12:
Sia dato un disco con 200 tracce e velocita di seek di 1 traccia per ms. All’istante t=0 ilsistema operativo sta servendo una richiesta sulla traccia 100 e in coda ci sono richieste per letracce (40; 65; 90; 120; 145; 125). Successivamente arrivano altre richieste all’istante t=30 perla traccia 95 e all’istante t=135 per la traccia 100. Si calcoli il tempo di ricerca complessivoper servire tutte le richieste secondo la politica Shortest Seek Time First (SSTF), trascurandola latenza rotazionale e il tempo di trasferimento.
[A] 210
[B] 165
[C] 215
[D] 185
domanda N. 13:
Si determini la veridicita’ delle seguenti affermazioni:
a) La motivazione originale per l’introduzione dei sistemi RAID e stata l’osservazione che lavelocita di trasferimento cresceva ad un tasso molto inferiore a quello della crescita siadella capacita dei dischi sia della potenza di elaborazione delle CPU.
b) L’algorimo di scheduling del disco First Come First Served tende ad avere una accettabilevarianza dei tempi di risposta a spese del numero di richieste servite per unita di tempo.
[A] entrambe false
[B] a) falsa ; b) vera
[C] entrambe vere
[D] a) vera ; b) falsa
domanda N. 14:
Si consideri un disco che opera a 7200 rpm (giri al minuto), dove ogni traccia e composta da160 settori di 512 bytes ognuno. Si determini la velocita di trasferimento necessaria per poterleggere o scrivere una traccia intera durante una rotazione del disco.
[A] circa 13400 KB/sec
[B] circa 19200 KB/sec
[C] circa 9600 KB/sec
433
[D] circa 4800 KB/sec
domanda N. 15:
Si determini la veridicita’ delle seguenti affermazioni:
a) Uno dei vantaggi della bitmap rispetto alla lista dei blocchi liberi e la possibilita, per ilsistema, di determinare in maniera efficiente l’esistenza di un certo numero di blocchiliberi contigui.
b) In un file system con struttura gerarchica (ad es. Unix), il nome di un file e formatodall’insieme dei nomi delle directory a partire dalla directory utente fino al file.
[A] a) falsa ; b) vera
[B] a) vera ; b) falsa
[C] entrambe false
[D] entrambe vere
domanda N. 16:
Sia dato un file system di 8 MB che gestisca i file mediante allocazione tabellare (ad es. unaFile Allocation Table). Si determini la dimensione della tabella nel caso in cui i blocchi deldisco siano di 1024 byte.
[A] 104 KB
[B] 64 KB
[C] 13 KB
[D] 12 KB
domanda N. 17:
Si determini la veridicita delle seguenti affermazioni:
a) Si consideri un file formato da 100 record allocato su disco in forma indicizzata dove irecord del file sono memorizzati uno per blocco e il file descriptor e gia in memoriacentrale. Se non e stato fatto ancora nessun accesso al file, allora per cancellare il 60-morecord sono necessari 35 accessi in lettura e 1 in scrittura.
b) Si consideri un file formato da 100 record allocato su disco in forma contigua dove i recorddel file sono memorizzati uno per blocco e il file descriptor e gia in memoria centrale. Sel’ultimo record letto e’ il record 10 allora per cancellare il 60-mo record sono necessari40 accessi in lettura e 40 in scrittura.
434
[A] a) vera ; b) falsa
[B] entrambe vere
[C] entrambe false
[D] a) falsa ; b) vera
435
================================================== compito N. 50 del 110609 ==========
=========================================
SVOLTO DA MATRICOLA
domanda 1
domanda 2
domanda 3
domanda 4
domanda 5
domanda 6
domanda 7
domanda 8
domanda 9
domanda 10
domanda 11
domanda 12
domanda 13
domanda 14
domanda 15
domanda 16
domanda 17
• 1.5 punti per ogni risposta esatta
• 0 punti per ogni risposta non data
• 0.5 punti di penalita’ per ogni risposta errata
FIRMA
436