Indice
Modulo: Laboratorio di Programmazione Sistema 2014/15 corsi A e B
Motto: Talk is cheap. Show me the code Linus Torvalds (2000-08-25). Message to linux-kernel mailing list.
Informazioni pratiche
- Vedi il il programma del corso per lo scopo, i prerequisiti consigliati e il programma di massima.
- Docenti:
- (Corso A) Massimo Torquati, stanza 287/DE, dip. Informatica
- (Corso B) Susanna Pelagatti, stanza 346/DE, dip. Informatica
- Assistenti: Lillo Galletta, Alexander Kocian
- Orario del corso
- Lezione: Martedi 14:00 – 16:00 (aula H – corso A) (aula A – corso B)
- Esercitazioni in Laboratorio: Martedi 16:00–18:00 (aula H – corso A) e (aula M – corso B)
- Ricevimento elettronico: (raccomandato per problemi sul codice) contattate il docente o gli assistenti per posta elettronica inviando un tar completo della directory di lavoro ed indicazioni chiare su come riprodurre l'errore.
- Ricevimento tradizionale :
- (Corso A) Martedi 10:00–13:00 o per email/appuntamento
- (Corso B) Martedi 9:00–12:00 (fino al 30 Giugno) o per email/appuntamento (dopo)
- La frequenza del corso non e' obbligatoria ma parte della valutazione finale e' legata all'attivita' svolta durante il corso (vedi prossima sezione Lezioni ed esercitazioni).
Lezioni ed esercitazioni
Vedete la pagina delle
per i materiali relativi a ogni lezione ed esercitazione.
Avvisi urgenti
Per tutti gli avvisi urgenti vedete nella pagina degli avvisi.
E' possibile richiedere di essere avvisati automaticamente via e-mail ogni volta che un nuovo avviso viene postato. Seguire le istruzioni indicate nella pagina stessa.
Materiale didattico
Libro di testo
Marc J. Rochkind. Advanced UNIX Programming 2nd Edition, Addison-Wesley Professional Computing Series, 2004.
Vedi anche il sito web del libro con sorgenti, esercizi e altre informazioni.
Virtual Machine (VirtualBox)
E' disponibile un disco virtuale (formato .vmdk) contenente una installazione completa di XUbuntu con tutti gli strumenti di sviluppo richiesti per il corso, che può essere fatta partire utilizzando (ad esempio) il sistema di virtualizzazione VirtualBox. Qui è possibile scaricare alcune semplici note (in formato pdf) che descrivono come creare una macchina virtuale (VM) sotto VirtualBox partendo da un disco esistente. Il disco virtuale compresso (.zip) della VM è scaricabile seguendo il link (circa 3GB !).
FAQ
Per avere risposte alle domande piu' frequenti, vedere la pagina relativa alle FAQ.
Altro materiale
- (su Unix con introduzione alla programmazione di shell) G. Glass, K. Ables. UNIX for Programmers and Users, Prentice Hall, 1999.
In particolare per la introduzione ai comandi Unix si possono consultare i capitoli 2 e 3 e per la programmazione bash servono i capitoli 4 e 5. - (su C) Kelley, Pohl. C: Didattica e Programmazione (seconda edizione), Addison-Wesley, 2004.
- Kernighan & Pike Programmazione nella pratica Addison-Wesley, 1999. ISBN 8871920724.
Un ottimo libro per migliorare lo stile di programmazione: insieme di consigli su come organizzare i programmi in modo ragionevole con esempi C e Java. - Richard W. Stevens. Advanced Programming in the UNIX Environment Addison-Wesley, 1992, ISBN 0-201-56317-7.
Il libro piu' completo e chiaro sulla programmazione con SC in ambiente Unix. - GaPiL: Guida alla Programmazione in Linux
- Advanced Bash Scripting Guide, la guida piu' completa e aggiornata sulla bash.
- Un sito di 'sommari' (quick references) su tutto!
- Manuali in linea delle funzioni di libreria standard e delle SC: man nomefunzione man -k argomento
- Altre informazioni in linea (bash, make tec.) ESC-X info da emacs.
- Il sito di riferimento per le specifiche standard di tutte le funzioni SC e librerie Open Group SUS (Single Unix Specification). E' gratuito (basta registrarsi).
- Confronto fra bash e dash: trasparenze con le differenze principali
Enjoy
- Attenzione ad usare i
goto
possono succedere strane cose \
- The ten commandments for C programmers edizione annotata dei dieci comandamenti per programmatori C.
- Kernighan e Ritchie di fronte a un PDP-11, inventando il C:
Esame
L'esame prevede lo svolgimento di un progetto individuale ed una prova orale. Qua potete trovare le regole precise per sostenere l'esame di Sistemi Operativi e Laboratorio.
Si ricorda che per sostenere l'esame (sia teoria che laboratorio) e' indispensabile iscriversi entro la data prevista per l'appello.
Comments
Per tutto il resto mandate una email ai docenti.
NOTA: L'indirizzo della mailing list lso.di deve essere usato esclusivamente per la consegna dei frammenti del progetto e la consegna del progetto stesso. Non e' necessario iscriversi alla lista, basta semplicemente mandare una e-mail con il tarball del progetto (o frammento) come da istruzioni specificate nel progetto stesso. Entro 1 o al massimo 2 giorni verrà inviata una e-mail di conferma di avvenuta ricezione del progetto da parte dei docenti del corso. Nel caso l'e-mail di avvenuta ricezione non dovesse arrivare, si prega di contattare direttamente il docente.