Info Esame [Cotroneo]


Rebdiluca

Membro TOP
Utente Premium
19 Settembre 2015
44
29
18
#1
- Esame: Sistemi Operativi, Domenico Cotroneo.

- Tempo impiegato per la preparazione: Ho seguito solo la prima parte del corso, poi mi sono concentrato su un altro esame. In totale, tra scritto e orale, circa un mese.
- Traccia e/o domande ricevute all'esame: La traccia era in sostanza identica a quella del 18-10-2012 (disponibile sul sito docenti del prof) e riguardava il calcolo distribuito di una formula con code di messaggi UNIX. Ho fatto l'orale con il prof. Natella e mi ha chiesto lo scheduling del disco in generale, poi quello in Linux e successivamente le differenze tra User Space Allocator e Kernel Space Allocator per quanto riguarda la gestione della memoria in Linux.

- Libri e appunti utilizzati: Come testo principale ho usato "Sistemi Operativi" (Ancilotti - Boari), ma per altri argomenti ho preferito usare altri testi. Ad esempio per la memoria centrale il Silberschatz - Galvin è davvero buono (peraltro le slide di quest'argomento sono tratte proprio da lì). Per l'I/O le dispense del prof. sono utili unitamente alle slide riguardanti i driver. Per Virtualizzazione e Android sono più che sufficienti le slide fornite.

- Eventuali difficoltà riscontrate e/o osservazioni personali: Per quanto riguarda la parte scritta, le prove fornite dal prof. coprono tutte le possibili tracce d'esame: semafori, monitor (tutte le varie semantiche), pthread, code di messaggi, multieseguibile, code di messaggi e pthread insieme. Fare tutte le prove e capirle da una buona metodologia per affrontare l'esame scritto. Spesso il superamento dell'esercizio di programmazione si ottiene solo facendolo bene. Infatti il prof. distingue in una lista chi è sufficiente e chi no. L'orale è la parte indubbiamente più complicata (e forse più bella) dell'esame. Consiglio di consultare il programma e per ogni argomento andare a cercare eventuali slide + riferimenti testuali. Leggere molto mi ha aiutato a interiorizzare meglio i vari punti e talvolta ad approfondirli. Le dispense in questo senso aiutano molto perché forniscono una visione più ampia rispetto alla slide riassuntiva.

Riporto qui alcune domande che ho ascoltato durante l'orale, ma chiaramente l'interrogazione può vertere su ogni argomento del programma:

1. Architettura SMP
2. Scheduling Multiprocessore
3. Gang Scheduling
4. Filesystem per SSD
5. Segmentazione
6. Deadlock
7. Confronto sui vari algoritmi di Scheduling della CPU (minor tempo di tunaround, maggiore overhead, ...)
8. Scheduling del disco e parametri per la valutazione di un buon algoritmo di scheduling (latenza, throughput, ...)
9. Differenze tra Linus Elevator, Deadline e Anticipatory
10. Gestione della memoria in Linux
11. Definizione di starvation
12. Differenza tra Processo e Thread (e relative differenze nel context switch)
13. User Level Thread e Kernel Level Thread
14. Algoritmo di sostituzione delle pagine con seconda chance
15. Requisiti Mutua Esclusione
16. Virtualizzazione
17. Device Drivers
18. Page fault
 
Mi Piace: stillduke

Seguici su Facebook