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: working set

Rispondi brevemente alle seguenti domande sul concetto di working set.

  1. Dai una coincisa definizione del concetto di working set di un processo?
  2. Il working set di un processo in un certo istante è dipende o indipendente dagli altri processi che sono presenti sul sistema (secondo la definizione data)? Perché ci interessa questo aspetto?
  3. Supponi di avere due insiemi disgiunti di pagine, X e Y, di un processo P e che, con lo scorrere del tempo, P passi da un comportamento che accede spesso ad X, ma non ad Y, ad un comportamento che accede spesso ad Y ma non ad X. Quale è il comportamento del working set di P nel tempo?

Question 3

Not yet answered
Not graded
Flag question

Question text

Raid 50

Hai 2 array raid 5 e li usi in raid 0 (nested raid 50). 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 puoi 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 è preemtive con priorità (A>B>C).

  • A è inizialmente in blocco a causa di un page fault che verrà servito a tempo t=100ms per poi proseguire con un cpu burst indefinitamente lungo.
  • B è inizialmente running, è I/O bound ed esegue infinite letture bloccanti, ciascuna servita in 70ms.
  • C è inizialemente 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 6

Not yet answered
Not graded
Flag question

Question text

Il campo status contiene una string tra ASSIGNED, OTHER e LEGACY, ed è sempre presente. Il campo notify contiene una email e può apparire zero o più volte.
Mostra una pipeline di comandi che fa uso di awk ed (e)grep per fornire una classifica delle email più presenti in notify tra nei record con status ASSIGNED.

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 22. Considera la 300-esima volta che fib() sta per ritornare.

  • Mostra lo stack in quell'istante.
  • Conta quante volte fib è stata chiamata 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 9

Not yet answered
Not graded
Flag question

Question text

Windows vs. Unix (solo per chi fa 6 cfu)

Rispondi alle seguenti domande che confrontano windows e unix.

  1. Qual è il concetto in Unix che gioca lo stesso ruolo del concetto di Handle in Windows?
  2. Unix organizza i processi ad albero, cosa puoi dire per Windows?
  3. Dove vengono memorizzate tipicamente le configurazioni dei software in Unix? e in Windows?
  4. Nel mondo unix la gestione della memoria si avvale di un page buffer, cosa puoi dire di Windows?