Question 1

Not yet answered
Not graded
Flag question

Question text

Dati studente

Inserisci qui i tuoi dati, compila subito questa parte.

Quanti CFU?

Cognome
Nome

Matricola

email

Numero Computer

Ordinamento (509, 270, erasmus,ecc.)


Question 2

Not yet answered
Not graded
Flag question

Question text

Gestione della memoria: page buffering

Rispondi brevemente alle seguenti domande sul concetto di page buffering.

  1. Dai una coincisa definizione del concetto di page buffering?
  2. Che vantaggi dà il page buffering in rapporto alla necessità di page cleaning?
  3. Che vantaggi dà il page buffering quando la strategia di eviction ha un funzionamento non ottimale? 

Question 3

Not yet answered
Not graded
Flag question

Question text

Raid 10

Hai 4 array raid 1, ciascuno di due dischi, e li usi in raid 0 (nested raid 10). Considera i blocchi del disco logico risultante numerati progressivamente 1, 2, 3, ecc. Come sono sistemati tali blocchi nei dischi fisici? Compila lo schema seguente (gli array sono separati da doppia linea verticale). Indica la parita con "p" se necessario.

                   


Supponi ci sia un fault sul primo disco del primo array, cosa poi dire circa la condizione dell'array complessivo?

Supponi ci sia un secondo fault sul primo disco del secondo array, cosa poi dire circa la condizione dell'array complessivo?

Supponi che non ci sia stato il secondo fault e a valle del primo fault si sostituisca il disco con uno buono, cosa poi dire circa la condizione dell'array complessivo?

Question 4

Not yet answered
Not graded
Flag question

Question text

Sequenza degli eventi nel SO

In un sistema sono presenti tre processi: A, B, C. La politica di scheduling è round robin con quanto di tempo pari a 70ms.

  • A è inizialmente in blocco, a causa di un page fault che verrà servito a tempo t=40 ms per poi eseguire immediatamente una lettura da disco (senza cache) servita in 80ms.
  • B è inizialmente running, genera immediatamente un major page faults servito in 260ms.
  • C è inizialmente ready è cpu bound e non genera page faults.

Il processore esegue di volta in volta A, B, C, e inoltre, con tempi trascurabili, mode switching, dispatching, system call e interrupt handlers. Mostra schematicamente, nella seguente tabella, l'ordine con cui tali attività vengono eseguite (una sola croce per ciascuna colonna). Indica anche quali processi sono running, quali ready e quali bloccati in ciascun istante come indicato nell'esempio.

 


user mode
A   A
B  X B
C   C
mode switch   mode switch

kernel mode
sched./disp.   sched./disp.
system call   system call
interrupt handler per page fault   interrupt handler per page fault
interrupt handler per I/O   interrupt handler per I/O
interrupt handler per quanto scaduto   interrupt handler per quanto scaduto

stati processi
running

B







































running
ready
C







































ready
block A





































block
note tempi
altre note

Information

Flag question

Information text

Scripting

Il file di testo ripe.db.aut-num.filtered.txt contiene un record per ciascun Internet Service Provider. Nel file ciascun record è separato da una linea vuota, i campi sono su linee distinte e hanno formato nome-campo: contenuto, alcuni campi possono comparire più volte. I campi occupano sempre la stessa posizione ma non sono sempre tutti presenti. Ciascun ISP è identificato da un codice, specificato nel campo aut-num, nel formato ASnnnnn dove nnnnn è un numero.  Per svolgere l'esercizio non è necessario conoscere il significato di tutti i campi.

Question 5

Not yet answered
Not graded
Flag question

Question text

Usa il comando "grep" o "egrep" per selezionare le righe relative al campo aut-num per cui la parte numerica sia minore di 900 e abbia come cifra meno significativa 8 o 4.

Fai copia e incolla dal terminale della linea di comando e dell'output (almeno un po').

Question 6

Not yet answered
Not graded
Flag question

Question text

Il campo default contiene delle informazioni circa il routing dell'ISP. Tale campo può apparire zero o più volte. Mostra un comando che fa uso di (e)grep e awk e che dia una riga per ciascun record contenente almeno un campo default e contenga

<identificatore ISP preso dal campo aut-num>, <concatenazione di tutti i campi default>

Se ti fa comodo puoi assumere che i campi default siano al più tre (così eviti di iterare).

Suggerimenti: usa -v RS="" -v FS="\n" per elaborare i record su più righe con awk.

Fai copia e incolla dal terminale della linea di comando e dell'output (almeno un po').

Question 7

Not yet answered
Not graded
Flag question

Question text

Debugging

Considera il codice del seguente progetto prj3.tar.gz. Compila tutti i file con il comando

gcc -g *.c -lm -o fib

Considera una esecuzione di fib con parametro 20. Considera la 200-esima volta che fib() viene chiamata.

  • Mostra lo stack in quell'istante.
  • Conta quante volte fib è ritornata fino a quell'istante
  • Esprimi in una formula la relazione che lega il numero di frame relativi a fib() nello stack, le chiamate a fib(), e i ritorni da fib() 


Fai copia e incolla dell'intera sessione di debugging nella form.

Question 8

Not yet answered
Not graded
Flag question

Question text

Pratica Unix

Supponi di avere un processo in background, ad esempio "gedit pippo.txt &".

Dai una sequenza di comandi per

  1. stopparlo temporaneamente senza ucciderlo
  2. mostrare che il processo ancora esiste e il suo stato
  3. farlo ripartire in background
  4. ucciderlo.

Fai copia e incolla dei comandi e dell'output nella form.