Documenti di Didattica
Documenti di Professioni
Documenti di Cultura
il
al
Pagina 2di 36
Risposta esatta: D
6------------------------In un sistema paginato sono stati rilevati i seguenti parametri: utilizzo CPU 20%, utilizzo
Paging Disk 97%,
utilizzo altri dispositivi di I/O 5%. Volendo migliorare l'utilizzo della CPU quale dei seguenti
accorgimenti
adottereste?
A) installare un Paging Disk di maggiori dimensioni;
B) installare una CPU piu' veloce;
C) decrementare il grado di multiprogrammazione;
D) incrementare il grado di multiprogrammazione;
Risposta esatta: C
7-------------------------Come viene fornita al File System l'informazione relativa a quale record deve essere letto,
quando si effettua una
lettura su un file a accesso diretto?
A) non viene fornita, perche' il File System si basa sul concetto di posizione corrente
B) viene fornito il numero d'ordine del record
C) viene fornita una chiave di accesso
D) viene fornito il puntatore al blocco che contiene il record
Risposta esatta: B
8-------------------------Si consideri un sistema in cui sono in esecuzione 20 processi. Ciascun processo esegue
elaborazioni (CPU burst)
della durata media di 10 ms (con varianza piccola), poi manda un prompt all'utente e attende un
input da tastiera
che mediamente e' di 20 caratteri. I processi non fanno accessi a disco. Cosa ci si puo'
attendere come ordine di
grandezza del tempo medio di risposta in ms (tempo che intercorre fra il momento in cui l'utente
termina l'input e il
momento in cui riceve il prompt), nel caso di politica FIFO e RR con quanto di tempo di 50 ms?
A) 10,10
B) 100,10
C) 100,50
D) 100,100
Risposta esatta: A
Appello 15 gennaio 1997
1.1 Si consideri un sistema costituito da tre processi P1, P2 e P3, e due semafori
generalizzati S1 e S2 inizializzati a zero. I processi hanno la seguente struttura:
P1: repeat {V(S1)} forever
P2: repeat {P(S1); print("A"); V(S2)} forever
P3: repeat {P(S2); print("B")} forever
Quale fra le seguenti sequenze NON pu sicuramente essere stampata
A. ABABABAB.....
B. AAABBAABBBA....
C. AAABBABBBA....
D. AABBAABBAA...
Risposta esatta: C
In un sistema a memoria paginata si consideri la seguente stringa di riferimento a memoria:
1 2 3 4 2 1 5 6 2 1 2 3 7 6 3 2 1 2 3 6
1.2 Considerando 5 frame allocate per processo quanti page fault sono generati
rispettivamente con gli algoritmi FIFO e LRU?
A. 10, 7
B. 9,6
C. 10, 8
D. 11,10
Risposta esatta: C
1.3 Si consideri un sistema in cui esistono cinque unita' della risorsa R1 e sette unita'
della risorsa R2, e tre processi P1, P2 e P3. Le richieste massime per i tre processi sono
rispettivamente (3, 3), (4, 7) e (5, 4). Al tempo T la situazione di allocazione e'
rispettivamente (2, 2), (1, 4) e (1, 0). Il sistema si trova in uno stato sicuro?
A. si, con la sequenza P2, P1, P3
B. si, con la sequenza P1, P3, P2
Pagina 3di 36
Pagina 4di 36
numero di accessi proporzionale alla distanza fra la posizione corrente vecchia e quella
nuova
D. dipende dalle politiche di gestione del buffer pool
Risposta esatta: B
Appello 13 gennaio 1999
Dare una sola risposta per ogni domanda. E' facoltativo inserire un BREVE commento per ciascun
quiz. Il commento non
altera il punteggio, ma puo' essere utile in sede di discussione orale (a volte c'e' una logica
anche negli errori...).
Si consideri un sistema costituito da tre processi P1, P2 e P3, e tre semafori binari S1
inizializzato a verde, S2 e S3 inizializzati a rosso. I processi hanno la seguente struttura:
1.
P1: repeat {P(S1); print( "A"); "estrazione casuale di un valore X booleano"; if X V(S2) else
V(S3);}
forever
P2: repeat {P(S2); print("B"); V(S1)} forever
P3: repeat {P(S3); print("C"); V(S1)} forever
Quale fra le seguenti sequenze non pu essere stampata?
ABAABAAC&.. A.
ACACACAC&. B.
ABABABAB&. C.
ABACABAC& D.
Risposta esatta: A
In un sistema a memoria paginata si consideri la seguente stringa di riferimento a memoria: 1.
1 2 3 4 1 2 5 6 3 4 1 2 3 4
Considerando 4 frame allocate per processo quanti page fault sono generati rispettivamente con
gli
algoritmi FIFO e LRU?
10, 10 A.
10, 9 B.
8, 10 C.
10, 8 D.
Risposta esatta: A
In un sistema Unix viene mandato in esecuzione un programma con la seguente struttura: 1.
var i:integer=0;
if fork() {print(1); i=i+1; "elaborazioni1 che non manipolano i"; printi(i)}
else {print (1); i=i-1; "elaborazioni2 che non manipolano i"; print(i)}; &.
Quale fra le seguenti sequenze non pu essere stampata?
0, 1, 0, -1 A.
0, 0, 1, -1 B.
0, -1, 0, 1 C.
0, 1, 1, 0 D.
Risposta esatta: D
Quale fra le seguenti politiche di scheduling: non "safe", cio non garantisce l_esecuzione
di ciascun processo entro un tempo finito? 1) FIFO, 2) Round Robin, 3) a priorit
"preemptive"
1.
FIFO A.
Round Robin B.
a priorit preemptive C.
nessuna, sono tutte politiche "safe" D.
Risposta esatta: C
Si consideri un sistema a processi (o a thread, in questo contesto le due cose sono
equivalenti). Il processo in esecuzione esegue una readchar(my_buffer), con cui richiede di
leggere un carattere da tastiera; my_buffer il puntatore a variabile locale al processo dove
dovr essere scritto il carattere. La tastiera connessa attraverso una interfaccia seriale che
genera un interrupt per ogni carattere letto. Dopo aver emesso il comando il processo passa
in stato di attesa (wait). Quando passer in stato di pronto (ready)?
1.
quando il driver riconosce che stata completato l_input di una linea A.
quando il controller riconosce che stata completato l_input di una linea B.
ogni volta che viene ricevuto un interrupt da tastiera C.
Pagina 5di 36
Pagina 6di 36
Pagina 7di 36
Pagina 8di 36
memoria..
a) 5
b) 7
c) 12
d) 6
Risposta esatta: b
No comment
9-------------------------In una rete a maglia e di tipo datagram l'algoritmo di instradamento
a) non viene applicato
b) e' applicato al primo pacchetto che appartiene al flusso da una sorgente ad una destinazione
c) deve essere di tipo adattivo per consentire di trasferire pacchetti su cammini diversi
d) e' applicato ad ogni pacchetto compresi i pacchetti di controllo
Risposta esatta: d
Commento: poiche' il servizio di tipo datagram e' connectionless, bisogna ripetere
l'istradamento per ogni pacchetto
trasmesso. Non "deve" (ma puo') essere di tipo adattivo.
10-------------------------Una politica di short-term scheduling di tipo FIFO senza preemption puo' essere utilizzata
a) in sistemi batch nei quali la risorsa critica e' la CPU, e in sistemi interattivi nei quali
si e' sicuri che tutti i processi
sono IO-bound
b) solo in sistemi batch nei quali la risorsa critica e' la CPU
c) solo in sistemi interattivi nei quali si e' sicuri che tutti i processi sono IO-bound
d) non deve essere utilizzata, perche' potrebbe comportare che un processo monopolizzi la CPU
per un tempo
impredicibile
Risposta esatta: a
Commento: se il sistema e' batch e la risorsa critica e' la CPU, non interessa molto il tempo di
risposta, ma interessa
minimizzare l'overhead dovuto alle commutazioni di contesto. In un sistema interattivo interessa
il temp di risposta, ma
se tutti i processi sono IO-bound si e' sicuri che nessuno monopolizza la CPU.
Appello 18 febbraio 1997
Dare una sola risposta per ogni domanda. E' facoltativo inserire un BREVE commento per ciascun
quiz. Il commento non
altera il punteggio, ma puo' essere utile in sede di discussione orale (a volte c'e' una logica
anche negli errori...).
1 ==========
Cosa contiene il program counter appena un processo P1 viene schedulato per
l'esecuzione e la CPU e' pronta ad eseguire la fase di fetch della prima istruzione
di
P1? Si consideri un sistema segmentato e l' indirizzo fisico del primo segmento di
codice di P1 e' 4096:
A) 4096
B) 0000
C) l'indirizzo dello spazio logico in cui il loader ha caricato il programma
D) l'indirizzo contenuto nella prima cella della segment table
Risposta esatta: B
2 ==========
La macchina virtuale emulata da un nucleo che supporta un sistema a processi e un
meccanismo di fork di tipo Unix e' logicamente assimilabile a:
A) un sistema con piu' processori e una memoria condivisa
B) un sistema con un unico processore e uno spazio di memoria privata per
ciascun
processo
C) un sistema con piu' processori, una memoria privata per ciascun processore, e
uno
spazio di memoria condivisa utilizzato per la comunicazione tra processi
D) un sistema con piu' processori e una memoria privata per ciascun processore
Risposta esatta: D
3==============
Si consideri un sistema con 5 processi P0, P1, P2, P3 e P4 e 4 risorse A, B, C, e D.
Pagina 9di 36
Pagina 10di 36
Pagina 11di 36
C. 10, 8
D. 9,8
Risposta esatta: B
1.3 Cosa contiene il program counter appena un processo P1 viene schedulato per l'esecuzione e
la CPU
e' pronta ad eseguire la fase di fetch della prima istruzione di P1? Si consideri un sistema
segmentato e l'
indirizzo fisico del primo segmento di codice di P1 e' 4096:
A. 4096
B. 0000
C. l'indirizzo dello spazio logico in cui il loader ha caricato il programma
D. l'indirizzo contenuto nella prima cella della segment table
Risposta esatta: B
1.4 Al verificarsi di una interruzione i contenuti dei registri accumolatori devono venire
salvati
dall'hardware.
A. vero, per motivi di efficienza
B. vero, perche' tutti i registri di CPU devono venire salvati dall'hardware
C. falso, perche' possono essere salvati dalla routine di risposta a interruzione
D. falso, perche' tutti i registri di CPU possono essere salvati dalla routine di risposta a
interruzione
Risposta esatta: C
1.5 Quale dei seguenti algoritmi di scheduling del disco garantisce un tempo di attesa piu'
uniforme?
A. SCAN o ascensore con scansione bidirezionale
B. C-SCAN o ascensore con scansione in unica direzione
C. FCFS
D. Shortest Seek First
Risposta esatta: B
1.6 In un sistema a processi con scheduling FIFO e priorita' preemptive la transizione dallo
stato di
esecuzione ("running") a quello di pronto ("ready") si puo' verificare:
A. allo scadere del quanto di tempo
B. mai
C. quando occorre mandare in esecuzione un processo a priorita' piu' alta
D. quando il processo running esegue una operazione sospensiva
Risposta esatta: C
1.7 In Unix la primitiva SYNC consente di forzare la scrittura su disco di un blocco di dati in
buffer
cache. In MS/DOS questa primitiva non esiste. Perche'?
A. perche' in MS/DOS la responsabilita' dei salvataggi su disco e' lasciata alle applicazioni
B. perche' MS/DOS usa una tecnica di write-through caching
C. perche' MS/DOS e' uniprogrammato, quindi i blocchi di dati in memoria rimangono allocati al
processo in esecuzione fino alla sua terminazione
D. perche' Unix e' time-sharing, quindi occorre poter sincronizzare gli accessi a disco e
l'esecuzione dei
programmi
Risposta esatta: B
1.8 Quanti accessi a disco richiede una operazione di "seek" (cambiamento della posizione
corrente) su
un file sequenziale (su disco)?
A. occorre un numero di accessi proporzionale alla distanza fra la posizione corrente vecchia e
quella
nuova
B. nessuno
C. dipende dalla tecnica di allocazione dei blocchi fisici. Se e' con indice ad albero occorre
un numero di
accessi uguale alla profondita' dell'albero. Se e' a lista occorre un numero di accessi
proporzionale alla
distanza fra la posizione corrente vecchia e quella nuova
D. dipende dalle politiche di gestione del buffer pool
Risposta esatta: B
Appello 24 febbraio 1999
Pagina 12di 36
Dare una sola risposta per ogni domanda. E' facoltativo inserire un BREVE commento per ciascun
quiz. Il commento non
altera il punteggio, ma puo' essere utile in sede di discussione orale (a volte c'e' una logica
anche negli errori...).
Si consideri un sistema costituito da tre processi P1, P2 e P3, e due semafori generalizzati S1,
S2
inizializzati a zero. I processi hanno la seguente struttura:
1.
P1: repeat {V(S1);} forever
P2: repeat {P(S1); print("A"); V(S2);} forever
P3: repeat {P(S2); print("B");} forever
Quale fra le seguenti sequenze non pu essere stampata?
ABAABAAB A.
ABABABAB B.
AAAABBBB C.
ABAABBBA D.
Risposta esatta: D
In un sistema a memoria paginata si consideri la seguente stringa di riferimento a memoria: 1.
1 2 3 4 1 2 5 6 3 4 1 2 3 4
Considerando 4 frame allocate per processo quanti page fault sono generati rispettivamente con
gli algoritmi FIFO e LRU?
10, 10 A.
10, 7 B.
8, 7 C.
10, 8 D.
Risposta esatta: B
In un sistema Unix viene mandato in esecuzione un programma con la seguente struttura: 1.
var i:integer=0;
if fork() { i++; "elaborazioni che non manipolano i";}
else { i--; "elaborazioni che non manipolano i";};
i++; print(i);
Quale fra i seguenti output pu essere stampato?
1 2 A.
2 1 B.
0 2 C.
1 D.
Risposta esatta: C
In un sistema paginato interattivo esistono 5 terminali a ciascuno dei quali associato un
processo con una
struttura ciclica che attende input da terminale, svolge elaborazioni della durata media di 100
ms e manda
un output su terminale. Si rileva un tempo di risposta medio di 250 ms. Cosa si pu dedurre?
1.
che il sistema dimensionato correttamente A.
che la memoria centrale sottodimensionata B.
che la CPU troppo lenta C.
che le misure sono errate D.
Risposta esatta: B
Una organizzazione a segmenti della memoria in un sistema che non gestisce le interruzioni di
segment
fault:
1.
e' utile solo perche' garantisce la protezione dei segmenti contro accessi non autorizzati A.
e' utile perche' garantisce la protezione dei segmenti contro accessi non autorizzati, e
consente di gestire uno spazio
di memoria fisica maggiore di quello logico
B.
non ha nessuna utilita' pratica, anche se e' teoricamente fattibile C.
non e' realizzabile perche' la MMU genera le interruzioni di segment fault che, se non gestite,
produrrebbero
malfunzionamenti
D.
Risposta esatta B
Pagina 13di 36
Pagina 14di 36
Pagina 15di 36
Pagina 16di 36
Pagina 17di 36
Pagina 18di 36
utilizzano l'intero quanto di tempo. Il ritardo e' quindi di 4 quanti di tempo + 5 commutazioni
di contesto.
1.6 In un sistema uniprogrammato un programma che non esegue operazioni di
ingresso/uscita viene eseguito in 10 secondi. In quanto tempo viene eseguito lo
stesso programma in un sistema con la stessa CPU, uniprogrammato e con con
memoria virtuale a pagine, se si verifica mediamente un page fault ogni 10.000
istruzioni macchina eseguite? (Si assuma un tempo di esecuzione della istruzione
macchina di un micro secondo e un tempo medio di accesso a disco di 10
millisecondi)
A) tra 20 e 30 secondi
B) tra 11 e 12 secondi
C) tra 80 e 120 secondi
D) non si puo' rispondere perche' il tempo perso per il caricamento e scaricamento delle pagine
dipende dall'algoritmo
di rimpiazzamento utilizzato
risposta corretta: A
Commento: 10.000 istruzioni vengono eseguite in 10 millisecondi. Quindi ogni 10 ms si perdono 10
o 20 ms per lo swap (20
se la pagina eliminata deve essere riscritta su disco).
1.7 Utilizzando un modello di comunicazione a livello rete di tipo Datagram
(connectionless), come viene identificato il destinatario di un pacchetto?
A) fornendo l'identificatore del circuito virtuale
B) fornendo l'identificatore del processo destinatario
C) fornendo il suo indirizzo di rete
D) viene identificato dai meccanismi di routing
risposta corretta: C
Commento: se il modello e' Datagram, il concetto di circuito virtuale non esiste. A livello
rete, il concetto di processo non e'
visibile. I meccanismi di routing hanno il compito di istradare un pacchetto, essendo noto
l'identificatore del destinatario.
1.8 Si consideri un sistema con 3 processi P0, P1 e P2 e 3 risorse non
prelazionabili A, B e C. All'istante t l'allocazione delle risorse e' la seguente:
P0 possiede 1 risorsa di tipo A, 2 di tipo B e 2 di tipo C. Le richieste massime
di P0 sono: 3 risorse di tipo A, 4 di tipo B e 5 di tipo C.
P1 possiede 1 risorsa di tipo A e 2 di tipo C. Le richieste massime di P1 sono:
2 risorse di tipo A, 2 di tipo B e 3 di tipo C.
P2 possiede 1 risorsa di tipo A, 2 di tipo B e 1 di tipo C. Le richieste massime
di P2 sono: 1 risorsa di tipo A, 2 di tipo B e 1 di tipo C.
Il sistema dispone complessivamente di 3 risorse di tipo A,4 di tipo B e 5 di tipo C.
All'istante t il sistema e'
A) in uno stato non sicuro
B) in deadlock
C) in starvation
D) in uno stato sicuro
risposta corretta: D
Commento: P2 puo' ovviamente essere completato erilascia le sue risorse. A questo punto sono
disponibili risorse sufficienti
a soddisfare le richieste massime di P1, che a sua volta puo' essere completato e rilascia
rsorse sufficienti a soddisfare le
richieste massime di P0.
Appello 14 giugno 1996
Dare una sola risposta per ogni domanda. E' facoltativo inserire un BREVE commento per ciascun
quiz.
Il commento non altera il punteggio, ma puo' essere utile in sede di discussione orale (a volte
c'e' una
logica anche negli errori...).
1.1 Per "sistema multiprogrammato" si intende:
A. un sistema in cui piu' programmi sono contemporaneamente residenti in memoria centrale
B. un sistema in cui piu' utenti lavorano in modo concorrente attraverso terminali
C. un sistema in cui, allo scadere di un quanto di tempo, il programma in esecuzione viene
scaricato su
disco e ne viene caricato un altro
D. un sistema in cui viene usata una politica a quanti di tempo
Pagina 19di 36
Risposta corretta: A
1.2 La gestione a lista dei blocchi fisici di un file e' vantaggiosa rispetto a quella contigua:
A. perche' minimizza il numero di accessi a disco
B. perche' consente di gestire efficacemente i file indexed
C. perche' consente di far crescere dinamicamente il file
D. non e' vantaggiosa per nessun motivo in quanto spreca spazio per i puntatori
Risposta corretta: C
1.3 Si consideri una routine di risposta a interruzione con la seguente struttura
"prologo"
move registro periferica to accumulatore1
memorizza accumulatore1 all'indirizzo assoluto ALFA
"epilogo"
Quali registri devono essere salvati dal "prologo", supponendo che la subroutine alfa utilizzi
accumulatore1 e accumulatore2?
A. accumulatore1, stack pointer
B. accumulatore1
C. accumulatore1, program counter, parola di stato
D. tutti i registri di CPU
Risposta corretta: B
1.4 La dimensione teorica di una memoria virtuale a pagine e' limitata:
A. dalla necessita' di evitare il thrashing
B. non esiste limitazione
C. dal numero di bit dei registri di indirizzamento
D. dalle dimensioni della memoria di massa
Risposta corretta: C
1.5 Si consideri un sistema con due processi A e B che utilizzano l'istruzione Test &Set per
proteggere
una regione critica RC. Ciascun processo effettua un loop di attesa attiva usando Test&Set per
verificare
se puo' accedere alla regione critica. Il processo A ha priorita' piu' alta rispetto a B. Lo
scheduler e' FIFO
con priorita' e prelazione della CPU. Quale fra le seguenti affermazioni e' vera?
A. il sistema puo' entrare in stallo; Test & Set non ammette priorita' diverse fra processi
B. RC e' regolarmente protetta solo se A e B usano la stessa CPU
C. il sistema puo' entrare in stallo; la soluzione e' utilizzare scheduler RR
D. RC e' regolarmente protetta
Risposta corretta: C
1.6 Su sistemi di piccole dimensioni l'interruzione di orologio e' generata usualmente a
intervalli
dell'ordine delle decine di millisecondi.
A. vero, perche' l'intervallo deve essere dello stesso ordine dei tempi di accesso a disco
B. falso, perche' l'intervallo deve essere dello stesso ordine di grandezza del tempo di
esecuzione di una
microistruzione macchina
C. vero, perche' una frequanza maggiore produrrebbe un eccessivo sovraccarico (overhead) di
gestione
D. falso, perche' l'interruzione di orologio produce effetti visibili all'utente (p. es. la
visualizzazione
dell'ora) e quindi non deve essere troppo frequente rispetto alle capacita' di percezione umane
Risposta esatta: C
1.7 Si consideri un sistema con tre processi P1, P2, P3 e una risorsa R di cui esistono 6
unita'. Le
richieste massime complessive dei processi sono rispettivamente 5, 3, 2. All'istante t la
situazione di
allocazione e' 2, 2, 1. Sia P1 che P2 chiedono una risorsa. Quale dele seguenti affermazioni e'
vera?
A. il sistema e' in uno stato non sicuro
B. il sistema e' in deadlock
C. e' indifferente soddisfare P1 o P2
D. solo P2 puo' essere soddisfatto in modo sicuro
Risposta esatta: D
1.8 In un monitor Java:
A. e' garantita la mutua esclusione sull'accesso alla classe
B. e' garantita la mutua esclusione sull'esecuzione di ciascun metodo synchronized
Pagina 20di 36
C. e' garantita la mutua esclusione sull'accesso a una istanza, indipendentemente da quale sia
il metodo
synchronized invocato
D. e' garantita la mutua esclusione sull'esecuzione di qualsiasi metodo
Risposta esatta: C
1.9 Se un processo effettua una operazione P su un semaforo associato a una periferica, chi
effettua la V
corrispondente?
A. la routine di risposta all'interrupt associato alla periferica
B. il controller della periferica
C. il prossimo processo che invia un comando alla periferica
D. il driver software della periferica solo se scatta un timeout
Risposta esatta: A
1.10 In un sistema con memoria virtuale a segmenti, la verifica della presenza in memoria del
segmento
referenziato e' effettuata:
A. da un modulo hardware/firmware
B. da un modulo software di sistema operativo
C. dal supporto a tempo di esecuzione del linguaggio
D. da una funzione di sistema invocata esplicitamente dal programma
Risposta esatta: A
Appello 13 giugno 1997
Dare una sola risposta per ogni domanda. E' facoltativo inserire un BREVE commento per ciascun
quiz. Il commento non
altera il punteggio, ma puo' essere utile in sede di discussione orale (a volte c'e' una logica
anche negli errori...).
1.1 In un sistema a processi con politica a priorita' preemptive la transizione dallo stato di
esecuzione ("running") a quello di
pronto ("ready") si puo' verificare:
A. allo scadere del quanto di tempo
B. allo scadere del quanto di tempo o quando viene risvegliato un processo a priorita' piu' alta
di quello in esecuzione
C. quando viene risvegliato un processo a priorita' piu' alta di quello in esecuzione
D. quando il processo in esecuzione esegue una operazione sospensiva
Risposta Esatta: C
1.2 Quale delle seguenti operazioni viene svolta con minor frequenza?
A. aggiornamento dei registri associativi che contengono parte della page table
B. aggiornamento del program counter
C. fetch di una istruzione
D. accesso alla page table
Risposta Esatta: A
1.3 Se in un programma Java viene eseguita una notify():
a) vengono risvegliati tutti i thread che hanno effettuato una wait() sul monitor
b) viene risvegliato il primo dei thread che hanno effettuato una wait() sul monitor
c) viene incrementato un contatore di eventi associato al monitor
d) viene risvegliato uno dei thread che hanno effettuato una wait() sul monitor
Risposta Esatta: D
1.4 Si consideri un sistema con due processi A e B che utilizzano l'istruzione Test&Set per
proteggere una regione critica
RC. Ciascun processo effettua un loop di attesa attiva usando Test&Set per verificare se puo'
accedere alla regione critica. Il
processo A ha priorita' piu' alta rispetto a B. Lo scheduler e' FIFO con priorita' e prelazione
della CPU. Quale fra le seguenti
affermazioni e' vera ?
A. il sistema puo' entrare in stallo; Test & Set non ammette priorita' diverse fra processi
B. RC e' regolarmente protetta solo se A e B usano la stessa CPU
C. il sistema puo' entrare in stallo; la soluzione e' utilizzare scheduler RR
D. RC e' regolarmente protetta
Risposta Esatta: C
1.5 Si consideri un sistema con tre processi P1, P2, P3 e una risorsa R di cui esistono 6
unita'. Le richieste massime
complessive dei processi sono rispettivamente 5, 3, 2. All'istante t la situazione di
allocazione e' 2, 2, 1. Sia P1 che P2
Pagina 21di 36
Pagina 22di 36
utilizzo altri dispositivi di I/O 5%. Volendo migliorare l'utilizzo della CPU quale dei seguenti
accorgimenti
adottereste?
1.
decrementare il grado di multiprogrammazione; A.
installare una CPU piu' veloce; B.
installare un Paging Disk di maggiori dimensioni; C.
incrementare il grado di multiprogrammazione; D.
Risposta esatta: A
Si consideri un File System con allocazione dei blocchi fisici organizzata a indice a piu'
livelli. Se N e' il
numero di puntatori a blocchi fisici contenuti in un nodo dell'albero di indici, come varia il
numero di livelli
dell'indice al variare della dimensione D del file?
1.
come il logaritmo di D in base 2 A.
come il logaritmo di N in base 2 B.
come il logaritmo di N in base D C.
come il logaritmo di D in base N D.
Risposta esatta D
Avrebbe senso realizzare una architettura a processi su un sistema sprovvisto di meccanismo di
interruzione?
1.
no, perche' l'interruzione e' essenziale per implementare i meccanismi del nucleo A.
si, perche' impedisce che un singolo programma monopolizzi la CPU B.
no, perche' non sarebbe possibile realizzare il time-sharing C.
si, nel caso in cui tutti i processi siano fortemente interattivi D.
Risposta esatta D
Quale fra le seguenti politiche di scheduling la pi adeguata per garantire un ragionevole
tempo di
risposta a tutti i processi, indipendentemente dalle loro caratteristiche?
1.
FIFO A.
Round Robin B.
a priorit preemptive C.
a priorit non preemptive D.
Risposta esatta B
Si consideri un sistema in cui due processi, P1 e P2, possono utilizzare entrambi le risorse R1
e R2 in modo 1.
esclusivo e senza possibilit di preemption. Al tempo T, P1 in stato ready ed ha assegnata la
risorsa R1;
P2 in esecuzione ed effettua una richiesta per la risorsa R2. Il sistema in uno stato:
non sicuro A.
di deadlock B.
sicuro C.
non possibile rispondere senza sapere se P1 e P2 hanno richiesto anche, rispettivamente, R2 e
R1 D.
Risposta esatta C
La gestione di operazioni di I/O su interruzione e' piu' efficiente di quella a controllo di
programma 1.
vero, se per "efficienza" si intende la capacita' di utilizzare al meglio la CPU, e se la
frequenza di trasferimento dati
e' bassa rispetto alla frequenza di esecuzione delle istruzioni macchina
A.
vero, se per "efficienza" si intende la capacita' di utilizzare al meglio la CPU, e se la
frequenza di trasferimento dati
e' vicina alla frequenza di esecuzione delle istruzioni macchina
B.
vero, se per "efficienza" si intende la capacita' di trasferire dati alla massima velocita'
possibile C.
falso, tranne che nel caso di sistemi multiutente D.
Risposta esatta A
Appello 10 giugno 1999
Pagina 23di 36
Pagina 24di 36
Commento: il collo di bottiglia e' evidentemente il Paging Disk. Non potendo utilizzare un
Paging Disk piu' veloce,
occorre ridurre il numero di page fault, e quindi aumentare il numero di frame assegnati a
ciascun processo attraverso
una diminuzione del grado di multiprogrammazione. L'utilizzo di una CPU piu' veloce non farebbe
che portare a una
ulteriore diminuzione dell'utilizzo di CPU.
1.6 In un sistema a processi la transizione dallo stato di esecuzione
("running") a quello di pronto ("ready") si puo' verificare:
A) solo allo scadere del quanto di tempo
B) solo quando si risveglia un processo a priorita' maggiore
C) allo scadere del quanto di tempo o quando si risveglia un processo a priorita' maggiore
D) allo scadere del quanto di tempo o quando il processo running lo richiede
Risposta esatta: C
Commento: puo' avvenire, in generale, nei casi di preemption. Non puo' mai avvenire su richiesta
del processo, per il
quale dal punto di vista programmativo lo stato ready non e' visibile.
1.7 Quale delle seguenti funzioni appartengono allo strato di trasporto di una
rete di comunicazione?
A) instradamento dei pacchetti in rete
B) comunicazione affidabile end to end indipendentemente dalla sottorete
C) comunicazione affidabile su un link punto punto
D) crittografia e conversioni di formato dell'informazione
Risposta esatta: B
Commento: A, C e D sono di competenza rispettivamente dei livelli network (3), data link (2) e
presentation (6).
1.8 Quale tra i seguenti algoritmi di scheduling e' piu' appropriato per la
gestione di un sistema real-time?
A) Shortest Job First
B) Round Robin
C) FIFO con priorita'
D) FIFO
Risposta esatta: C
Commento: SJF tende a minimizzare il tempo medio di Risposta, noti i burst di utilizzo della CPU
da parte dei
processi. RR ha lo stesso obiettivo, nel caso in cui i burst non siano noti. In un sistema RT
occorre garantire che le
attivita' critiche siano svolte al piu' presto. Quindi la politica migliore e' la FIFO con
priorita', possibilmente
preemptive.
Appello 12 luglio 1996
Dare una sola risposta per ogni domanda. E' facoltativo inserire un BREVE commento per ciascun
quiz. Il commento non
altera il punteggio, ma puo' essere utile in sede di discussione orale (a volte c'e' una logica
anche negli errori...).
3.1 In un sistema Unix, e' possibile far comunicare due processi attraverso un meccanismo tipo
monitor?
A. Si, se i due processi condividono un'area dati
B. Si, se i due processi sono figli dello stesso padre
C. No, perche' in Unix i processi non condividono memoria
D. No, perche' Unix non supporta operazioni tipo wait()
Risposta Esatta: C
3.2 Quale fra le seguenti politiche di scheduling: non e' "safe", cioe' non garantisce
l'esecuzione di ciascun processo entro un
tempo finito? 1) FIFO, 2) Round Robin, 3) a priorita' "preemptive"
A. FIFO
B. Round Robin
C. a priorita' preemptive
D. nessuna, sono tutte politiche "safe"
Risposta Esatta: C
3.3 Si consideri un sistema con memoria virtuale a pagine. Quando vengono resettati
rispettivamente i bit di uso e di modifica
delle pagine presenti in memoria centrale?
Pagina 25di 36
A. entrambi dopo un certo tempo da quando sono stati settati; quando precisamente cio' avviene
dipende dall'algoritmo di
paging utilizzato
B. il bit di modifica mai, il bit di uso dopo un certo tempo da quando e' stato settato; quando
precisamente cio' avviene dipende
dall'algoritmo di paging utilizzato
C. il bit di uso mai, il bit di modifica dopo un certo tempo da quando e' stato settato; quando
precisamente cio' avviene dipende
dall'algoritmo di paging utilizzato
D. non vengono mai resettati fino a che la pagina non viene scaricata su disco
Risposta Esatta: B
3.4 Si consideri un sistema a processi (o a thread, in questo contesto le due cose sono
equivalenti). Il processo in esecuzione
esegue una readln(my_buffer), con cui richiede di leggere una linea di caratteri da tastiera;
my_buffer e' una variabile locale al
processo dove dovranno essere accumulati i caratteri. La tastiera e' connessa attraverso una
interfaccia seriale che genera un
interrupt per ogni carattere letto. Dopo aver emesso il comando il processo passa in stato di
attesa (wait). Quando passera' in
stato di pronto (ready)?
A. quando il driver riconosce che e' stata completato l'input di una linea
B. quando il controller riconosce che e' stata completato l'input di una linea
C. ogni volta che viene ricevuto un interrupt da tastiera
D. quando lo scheduler, in funzione delle sue politiche, decide di mandare in esecuzione il
processo
Risposta Esatta: A
3.5 Si consideri un sistema in cui due processi, P1 e P2, possono utilizzare entrambi le risorse
R1 e R2 in modo esclusivo e
senza possibiloita' di preemption. Al tempo T, P1 ha assegnata la risorsa R1 e P2 ha assegnata
la risorsa R2, ed entrambi i
processi sono in stato ready. Il sistema e' in uno stato:
A. non sicuro
B. di deadlock
C. sicuro
D. non e' possibile rispondere senza sapere se P1 e P2 hanno richiestoanche, rispettivamente, R2
e R1 (in questo caso
sarebbero in deadlock, altrimenti no)
Risposta Esatta: A
3.6 In quale caso la gestione a memoria virtuale (con swap di pagine) e' inutile o, al limite,
pericolosa?
A. in un sistema uniprogrammato
B. in un sistema real-time per controllo di processo
C. in un sistema che svolge attivita' di calcolo scientifico
D. e' sempre utile
Risposta Esatta: B
3.7 Qual e' la differenza, in un sistema tipo Unix, fra una operazione move e una operazione
copy su un file?
A. move attribuisce un nuovo path name al file, copy crea una copia fisica. Dopo l'esecuzione
dell'operazione, in entrambi i
casi il file e' visibile sia con il path name vecchio, sia con il path name nuovo
B. move attribuisce un nuovo path name al file, copy crea una copia fisica. Dopo l'esecuzione
della move, il file e' visibile
soloo con il path name nuovo. Dopo l'esecuzione della copy, il file e' visibilew sia con il path
name vecchio, sia con il path
name nuovo
C. move attribuisce un nuovo path name al file, copy crea una copia fisica. Dopo l'esecuzione
dell'operazione, in entrambi i
casi il file e' visibile solo con il path name nuovo
D. move sposta il file nell'ambito del disco fisso, copy ne crea una copia su unita' rimovibile
Risposta Esatta: B
3.8 Si consideri un programma eseguito in ambiente Unix, con il seguente schema:
integer i = 0;
...
if (fork()>0) then
Pagina 26di 36
Pagina 27di 36
Risposta esatta: A
1.8 Si consideri un sistema con h2> processi P0 e P1 e 3 risorse A,B e C. All'istante t la
situazione di allocazione risorse e' la
seguente:
P0 possiede 1 risorsa di tipo A, h2> di tipo B e 2 di tipo C. Le ricieste di P0 sono di h2>
risorse di tipo A, 3 di tipo B e 4 di tipo C.
P1 possiede 1 risorsa di tipo A, 1 di tipo B e h2> di tipo C. Le ricieste di P1 sono di h2>
risorse di tipo A, 3 di tipo B e 3 di tipo C.
Il sistema dispone di 3 risorse di tipo A, 4 di tipo B e 5 di tipo C. All'istante t il sistema
e' in uno stato sicuro?
A) si
B) si, con la sequenza P0, P1
C) no
D) si, con la sequenza P1, P0
Risposta esatta: C
Appello 10 settembre 1996
Dare una sola risposta per ogni domanda. E' facoltativo inserire un BREVE commento per ciascun
quiz. Il commento non
altera il punteggio, ma puo' essere utile in sede di discussione orale (a volte c'e' una logica
anche negli errori...).
1.1 Si consideri un sistema Unix in cui il processo A e il processo B attendono ciascuno un
input. Dopo aver ricevuto l'input,
entrambi i processi svolgono attivita' di calcolo della durata di circa un secondo ed effettuano
una operazione di output. Se gli
input per A e per B arrivano quasi contemporaneamente (cioe' a una distanza di non piu' di un
millisecondo), e' possibile
garantire che l'output di A avvenga prima dell'output di B?
A. Si, se la priorita' di A e' maggiore della priorita' di B
B. Si, se l'input per A precede l'input per B
C. No, se non si conosce esattamente la durata delle elaborazioni di A e di B
D. No, perche' l'algoritmo di scheduling di Unix e', dal punto di vista applicativo, non
deterministico
Risposta Esatta: D
1.2 Quale fra le seguenti politiche di scheduling e' la piu' adeguata per garantire un
ragionevole tempo di risposta a tutti i
processi, indipendentemente dalle loro caratteristiche?
A. FIFO
B. Round Robin
C. a priorita' preemptive
D. a priorita' non preemptive
Risposta Esatta: B
1.3 Si consideri un sistema con memoria virtuale a segmenti paginati. Se, in un indirizzo, S e'
il numero di bit che indica il
numero di segmento, P e' il numero di bit che indica il numero di pagina, R il numero di bit che
indica l'indirizzo relativo
all'interno della pagina, quale fra le seguenti affermazioni e' vera?
A. la dimensione della memoria fisica del sistema e' 2**(S+P+R)
B. la dimensione complessiva della memoria virtuale del sistema e' 2**(S+P+R)
C. la dimensione della memoria virtuale per ciascun processo e' 2**(S+P+R)
D. deve essere S>P
Risposta Esatta: C
1.4 Si consideri un sistema a processi (o a thread, in questo contesto le due cose sono
equivalenti). Il processo in esecuzione
esegue una read(my_buffer), con cui richiede di leggere un carattere da tastiera; my_buffer e'
una variabile locale al processo
dove dovranno essere memorizzati i caratteri letti. La tastiera e' connessa attraverso una
interfaccia seriale che genera un
interrupt per ogni carattere letto. Dopo aver emesso il comando il processo passa in stato di
attesa (wait). Quando passera' in
stato di pronto (ready)?
A. quando il driver riconosce che e' stata completato l'input di una linea
B. quando il controller riconosce che e' stata completato l'input di una linea
C. ogni volta che viene ricevuto un interrupt da tastiera
Pagina 28di 36
Pagina 29di 36
Pagina 30di 36
il bit di uso mai, il bit di modifica dopo un certo tempo da quando stato settato; quando
precisamente ci avviene
dipende dallalgoritmo di paging utilizzato
C.
non vengono mai resettati fino a che la pagina non viene scaricata su disco D.
Risposta esatta: B
In un sistema con politica round-robin, la riduzione della durata del quanto di tempo migliora i
tempi medi
di risposta
1.
vero, sempre A.
vero, se il quanto di tempo non diventa minore del tempo di utilizzo di CPU fra due operazioni
di I/O per i lavori
piu' interattivi
B.
vero, se il quanto di tempo non diventa minore del tempo di utilizzo di CPU fra due operazioni
di I/O per i lavori
piu' interattivi, e se non diventa cosi' piccolo da rendere eccessiva la percentuale di tempo di
CPU consumata per le
commutazioni di contesto
C.
vero, se non diventa cosi' piccolo da rendere eccessiva la percentuale di tempo di CPU consumata
per le
commutazioni di contesto
D.
Risposta esatta: C
Qual la differenza, in un sistema tipo Unix, fra una operazione move e una operazione copy su
un file? 1.
move attribuisce un nuovo path name al file, copy crea una copia fisica. Dopo lesecuzione
delloperazione, in
entrambi i casi il file visibile sia con il path name vecchio, sia con il path name nuovo
A.
move attribuisce un nuovo path name al file, copy crea una copia fisica. Dopo lesecuzione della
move, il file B.
visibile solo con il path name nuovo. Dopo lesecuzione della copy, il file visibilew sia con
il path name vecchio,
sia con il path name nuovo
move attribuisce un nuovo path name al file, copy crea una copia fisica. Dopo lesecuzione
delloperazione, in
entrambi i casi il file visibile solo con il path name nuovo
C.
move sposta il file nellambito del disco fisso, copy ne crea una copia su unit rimovibile D.
Risposta esatta: B
Appello 22 settembre 1999
Dare una sola risposta per ogni domanda
1.1 Si consideri un programma che viene eseguito su un processore dedicato e che esegue una
sequenza di operazoni di input a
controllo da programma. Il tempo medio di esecuzione di una istruzione macchina e' di 200
nanosecondi. La massima velocita' di
trasferimento dei dati che si puo' ottenere:
A) e' dell'ordine di un dato ogni 200 nanosecondi
B) dipende dal tempo perso dalla routine di risposta a interruzione per salvare e ripristinare
il contesto
C) e' dell'ordine di un dato ogni 1 microsecondo
D) e' di un dato per ogni ciclo di accesso alla memoria
Risposta esatta: C
1.2 In un sistema con memoria virtuale a segmenti, la verifica della presenza in memoria del
segmento referenziato e' effettuata:
A) da un modulo hardware/firmware
B) da un modulo software di sistema operativo
C) dal supporto a tempo di esecuzione del linguaggio
D) da una funzione di sistema invocata esplicitamente dal programma
Risposta esatta: A
Pagina 31di 36
1.3 Qual e' l'insieme di tutte le transizioni di stato dei processi che si possono verificare
come conseguenza di una interruzione
asincrona?
A) esecuzione/pronto, attesa/pronto, pronto/esecuzione
B) esecuzione/pronto, attesa/pronto
C) esecuzione/attesa, attesa/pronto, pronto/esecuzione
D) attesa/pronto, pronto/esecuzione
Risposta esatta: A
1.4 Per risolvere il problema produttore-consumatore in cui esiste un unico produttore che ha a
disposizione un buffer infinito ed un
unico consumatore che preleva dati da questo buffer, sono necessari e sufficienti
A) un solo semaforo binario
B) quattro semafori binari
C) 1 semaforo binario e 1 generalizzato
D) un solo semaforo generalizzato
Risposta esatta: D
1.5 Si consideri un messaggio di lunghezza M bit trasmesso in un sistema distribuito a livello
trasporto (transport). A livello rete
(network) il messaggio viene scomposto in pacchetti di lunghezza P bit, con P<M. Qual e' la
relazione fra M e T, dove T e' il numero
totale di bit che e' necessario trasmettere a livello rete per realizzare l'invio del messaggio
a livello trasporto?
A) T=M
B) T>M
C) T<M
D) dipende dalla implementazione del servizio di trasporto
Risposta esatta: B
1.6 Si consideri un sistema caratterizzato dai seguenti processi con i seguenti tempi di arrivo:
processo P1 con tempo di esecuzione 5
e tempo di arrivo 0, processo P2 con tempo di esecuzione 4 e tempo di arrivo 0.8, processo P3
con tempo di esecuzione 3 e tempo di
arrivo 1.2, processo P4 con tempo di esecuzione 3 e tempo di arrivo 2. I processi non eseguono
operazioni sospensive.
Qual e' il tempo medio di turnaround (turnaround = tempo di completamento) dei suddetti processi
quando vengono gestiti da un
algoritmo di scheduling SJF preemptive (tempo di context switch = 0)?
A) 8.5
B) 4.55
C) 8.3
D) nessuna delle altre risposte e' corretta
Risposta esatta: C
1.7 Si considerino due file A e B di 20 blocchi fisici ciascuno. In A i blocchi sono allocati
contiguamente, per B invece e' stato
seguito uno schema di allocazione linkata. Supponendo che i file siano gia' stati aperti e che
nel caso di allocazione contigua i blocchi
liberi siano in coda a quelli occupati, qual e' il numero di accessi fisici a disco necessario
per inserire un blocco fisico nella posizione
11 del file? (Si supponga che ogni accesso a disco trasferisca un unico blocco fisico, e che nel
caso B si conosca inizialmente solo
l'indirizzo del primo blocco del file)
A) A = (41), B = (2)
B) A = (1) , B = (12)
C) A = (21) , B = (12)
D) nessuna delle altre risposte e' corretta
Risposta esatta: C
1.8 Si consideri un sistema con 4 processi P0, P1, P2 e P3 e 3 risorse non prelazionabili A, B e
C. All'istante t l'allocazione delle
risorse e' la seguente:
P0 possiede 1 risorsa di tipo A, 2 di tipo B e 2 di tipo C. Le richieste massime totali di P0
sono: 3 risorse di tipo A, 4 di tipo B e 4 di
tipo C.
P1 possiede 1 risorsa di tipo A, 2 di tipo B e 2 di tipo C. Le richieste massime totali di P1
sono: 3 risorse di tipo A, 2 di tipo B e 3 di
tipo C.
Pagina 32di 36
Pagina 33di 36
una V
C. si, purche' ogni processore sia in grado di disabilitare anche le interruzioni degli altri
processori
D. si, perche' le P e le V su ciascun semaforo sono utilizzate per sincronizzare processi che
vengono
eseguiti sullo stesso processore
Risposta esatta: a
1.6 In un sistema multiprogrammato con politica round-robin il quanto di tempo e' di 20 ms e il
tempo di
context switch e' di 1 ms. Esistono 5 processi utente. Un processo utente emette un prompt, si
sospende
in attesa di un input e immediatamente dopo emette un eco. Qual e' il massimo tempo di risposta
possibile per il processo, ritenendo trascurabile il tempo necessario per emettere fisicamente
l'eco?
A. 84 ms
B. 105 ms
C. 104 ms
D. 85 ms
Risposta esatta: d
1.7 Si consideri un sistema con 2 processi P0 e P1 e 3 risorse A,B e C. All'istante t la
situazione di
allocazione risorse e' la seguente:
P0 possiede 1 risorsa di tipo A, 2 di tipo B e 2 di tipo C. Le richieste di P0 sono di 2 risorse
di tipo A, 3
di tipo B e 4 di tipo C.
P1 possiede 1 risorsa di tipo A, 1 di tipo B e 2 di tipo C. Le richieste di P1 sono di 2 risorse
di tipo A, 3
di tipo B e 3 di tipo C.
Il sistema dispone di 3 risorse di tipo A, 4 di tipo B e 5 di tipo C. All'istante t il sistema
e' in uno stato
sicuro?
A. no
B. si
C. si, con la sequenza P0, P 1
D. si, con la sequenza P1, P0
Risposta esatta: a
1.8 L'uso della system call fork() consente, in ambiente Unix, la realizzazione di un albero di
processi.
Quale delle seguenti strutture e' possibile realizzare usando la system call load-and-exec di
MS-DOS?
A. albero binario
B. albero
C. stack
D. coda
Risposta esatta: c
1.9 Cosa si intende per "codice autorilocante"?
A. codice in cui gli indirizzi degli operandi di una istruzione sono calcolati come spiazzamenti
rispetto
all'indirizzo di base del codice
B. codice in cui gli indirizzi degli operandi di una istruzione sono calcolati come spiazzamenti
rispetto
all'indirizzo della istruzione stessa
C. codice in cui gli indirizzi degli operandi di una istruzione sono calcolati come spiazzamenti
rispetto
all'indirizzo di base del codice o dell'area dati, secondo il tipo di istruzione
D. codice che modifica mediante opportune istruzioni gli indirizzi degli operandi al momento del
caricamento.
Risposta esatta: b
1.10 Si consideri un processo che esegue una operazione DELAY(T), con cui notifica al sistema
che
vuole attendere che trascorra il tempo T. Allo scadere del tempo T, quale transizione di stato
effettua il
processo?
A. da attesa a esecuzione
Pagina 34di 36
B. da esecuzione a attesa
C. da attesa a pronto
D. da esecuzione a pronto
Risposta esatta: c
Appello 8 ottobre 1997
1.1 Si consideri un sistema costituito da due processi P1 e P2, e un semaforo generalizzato S
inizializzato a zero. I due processi hanno la seguente struttura:
P1: repeat {print(A); V(S)} forever
P2: repeat {P(S); print(B)} forever
Quale fra le seguenti sequenze NON pu sicuramente essere stampata
A. ABABABAB..
B. AAABBABBBA.
C. AAABBAABBBA.
D. AABBAABBAA
Risposta esatta: B
1.2 In un sistema Unix, possibile far comunicare due processi attraverso variabili condivise
usando un meccanismo tipo monitor?
A. Si, se i due processi condividono unarea dati
B. Si, se i due processi sono figli dello stesso padre
C. No, perch in Unix i processi non condividono memoria
D. No, perch Unix non supporta operazioni tipo wait()
Risposta esatta: C
1.3 Si consideri un file di tipo byte stream con allocazione fisica a lista. Il file ha una
dimensione di 10000 blocchi fisici di 512 byte. Il file gi aperto. Lesecuzione di una
sequenza di due comandi "seek (1000)" e "read (x)" (dove x e' di tipo char) pu richiedere N
accessi a disco. Quale tra le seguenti risposte sicuramente sbagliata?
A. 0
B. 1
C. 2
D. 3
Risposta esatta: D
1.4 In un sistema a processi con scheduling a priorita' preemptive la transizione di un
processo dallo stato di esecuzione ("running") a quello di pronto ("ready") si puo' verificare:
A. allo scadere del quanto di tempo
B. mai
C. quando occorre mandare in esecuzione un processo a priorita' piu' alta
D. quando il processo esegue una operazione sospensiva
Risposta esatta: C
1.5 Si consideri un programma che viene eseguito su un processore dedicato e che esegue una
sequenza di operazoni di input a controllo da programma. Il tempo medio di esecuzione di una
istruzione macchina e' di 200 nanosecondi. La massima velocita' di trasferimento dei dati che
si puo' ottenere:
A. e' dell'ordine di un dato ogni 1 microsecondo
B. e' dell'ordine di un dato ogni 200 nanosecondi
C. dipende dal tempo perso dalla routine di risposta a interruzione per salvare e ripristinare
il contesto
D. e' di un dato per ogni ciclo di accesso alla memoria
Risposta esatta: A
1.6 In quale caso la memoria e' vista, a livello di linguaggio macchina, come un insieme di
celle identificate da un indirizzo costituito da una sola componente?
A. su un sistema non segmentato con memoria virtuale a pagine
B. su un sistema segmentato
C. solo su un sistema senza memoria virtuale
D. su qualunque sistema a memoria virtuale
Risposta esatta: A
1.7 In un sistema con politica round-robin, la riduzione della durata del quanto di tempo
migliora i tempi medi di risposta
A. vero, sempre
B. vero, se il quanto di tempo non diventa minore del tempo di utilizzo di CPU fra due
operazioni di I/O per i lavori piu' interattivi
C. vero, se il quanto di tempo non diventa minore del tempo di utilizzo di CPU fra due
operazioni di I/O per i lavori piu' interattivi, e se non diventa cosi' piccolo da rendere
eccessiva la percentuale di tempo di CPU consumata per le commutazioni di contesto
Pagina 35di 36
D. vero, se non diventa cosi' piccolo da rendere eccessiva la percentuale di tempo di CPU
consumata per le commutazioni di contesto
Risposta esatta: C
1.8 Si consideri un sistema con 4 processi P0, P1, P2 e P3 e 3 risorse non prelazionabili A, B
e C. All'istante t l'allocazione delle risorse e' la seguente:
- P0 possiede 1 risorsa di tipo A, 2 di tipo B e 2 di tipo C. Le richieste massime di P0 sono:
3 risorse di tipo A, 4 di tipo B e 4 di tipo C.
- P1 possiede 1 risorsa di tipo A, 2 di tipo B e 2 di tipo C. Le richieste massime di P1 sono:
3 risorse di tipo A, 2 di tipo B e 3 di tipo C.
- P2 possiede 1 risorsa di tipo A e 1 di tipo C. Le richieste massime di P2 sono: 1 risorsa di
tipo A, 1 di tipo B e 1 di tipo C.
- P3 possiede 1 risorsa di tipo A. Le richieste massime di P3 sono: 2 risorse di tipo A e 1 di
tipo C.
- Il sistema dispone complessivamente di 5 risorse di tipo A, 4 di tipo B e 5 di tipo C.
All'istante t il processo P3 effettua una richiesta al sistema per 1 risorsa di tipo a, se il
sistema soddisfa questa richiesta entrera':
A. in uno stato sicuro
B. in deadlock
C. in uno stato non sicuro
D. in starvation
Risposta esatta: C
Appello 14 ottobre 1998
Dare una sola risposta per ogni domanda. E' facoltativo inserire un BREVE commento per ciascun
quiz. Il commento non altera il
punteggio, ma puo' essere utile in sede di discussione orale (a volte c'e' una logica anche
negli errori...).
Si consideri un sistema costituito da due processi P1 e P2, e due semafori binari S1 e S2
inizializzati a
verde e rosso rispettivamente. I due processi hanno la seguente struttura:
1.
var C:char /*variabile condivisa fra i due processi
P1: repeat {P(S1); C = "A"; V(S2); print(C);} forever
P2: repeat {P(S2); C = "B"; print(C); V(S1)} forever
Quale fra le seguenti sequenze NON pu sicuramente essere stampata?
ABAB.. A.
BBBB. B.
ABBB. C.
AAAA D.
Risposta esatta: D
In un sistema a memoria paginata si consideri la seguente stringa di riferimento a memoria: 1.
1 2 3 4 2 1 5 6 2 1 2 3 7 6 3 2 1 2 3 6
Considerando 5 frame allocate per processo quanti page fault sono generati rispettivamente con
gli algoritmi FIFO
e LRU?
10, 7 A.
9,6 B.
10, 8 C.
11,10 D.
Risposta esatta: C
Si consideri un sistema in cui sono in esecuzione 11 processi, di cui uno esegue elaborazioni
(CPU
burst) della durata di 10 secondi fra due operazioni di I/O, e gli altri (processi interattivi)
eseguono
elaborazioni (CPU burst) della durata di 1 ms, poi emettono un carattere e attendono una
risposta da
tastiera. Considerando trascurabili i tempi di commutazione, cosa ci si puo' attendere come
ordine di
grandezza del tempo medio di risposta in ms per i processi interattivi (tempo che intercorre fra
il
momento in cui l'utente termina l'input e il momento in cui riceve il prompt), nel caso di
politica FIFO
e RR con quanto di tempo di 50 ms?
1.
Pagina 36di 36
5005,51 A.
10011,26 B.
5005,26 C.
5005,30 D.
Risposta esatta: C
Quale tra le seguenti affermazioni e' falsa? 1.
un sistema multiprogrammato non e' necessariamente multiutente A.
un sistema multiprogrammato richiede uno spoolig system B.
un sistema multiprogrammato consente di sovrapporre I/O e elaborazioni C.
un sistema multiprogrammato non richiede necessariamente la presenza di memoria virtuale D.
Risposta esatta: B
Si consideri un sistema in cui due processi, P1 e P2, possono utilizzare entrambi le risorse R1
e R2 in
modo esclusivo e senza possibilit di preemption. P1 pu richiedere solo R1; P2 pu richiedere
R1 e
R2. Allistante T, P1 ha assegnata R1 e P2 ha assegnata R2; in questo istante P2 richiede R1. Il
sistema in uno stato:
1.
di deadlock A.
non sicuro B.
sicuro C.
non possibile rispondere D.
Risposrta esatta: C
In quale caso la gestione a memoria virtuale (con swap di pagine) inutile o, al limite,
pericolosa? 1.
in un sistema uniprogrammato A.
in un sistema real-time per controllo di processo B.
in un sistema che svolge attivit di calcolo scientifico C.
sempre utile D.
Risposta esatta: B
Cosa significa parlare di clock a 50 MHz? 1.
che viene eseguita una istruzione ogni 20 ns A.
che viene eseguita una microistruzione ogni 20 ns B.
che viene generato un interrupt di clock ogni 20 ns C.
che viene eseguito un accesso a memoria ogni 20 ns D.
Risposta esatta: B
Si consideri un File System con allocazione dei blocchi fisici organizzata a indice a piu'
livelli. Se N e'
il numero di puntatori a blocchi fisici contenuti in un nodo dell'albero di indici, come varia
il numero
di livelli dell'indice al variare della dimensione D del file?
1.
come il logaritmo di D in base 2 A.
come il logaritmo di N in base 2 B.
come il logaritmo di N in base D C.
come il logaritmo di D in base N D.
Risposta esatta: D
Appello 21 ottobre 1999