Didattica
Moduli e corsi
Alcune attività didattiche in cui sono o sono stato recentemente
coinvolto:
- mag/lug 2006: Reti di Calcolatori
(corso di laurea in Ing. Informatica ed Automatica,
Univ. Tor Vergata, A.A. 2005/06)
- mar/apr 2006: Reverse Enginering per microcontrolleri PIC (corso SMD)
- feb/apr 2006: Tutor del corso Linux
Avanzato
(corso di laurea in Ing. Spec. Informatica,
Univ. Tor Vergata, A.A. 2005/06)
- gen/apr 2006: Terzo Corso
Libero "Linux Kernel Hacking"
-
- mag/lug 2005: Reti di Calcolatori
(corso di laurea in Ing. Informatica ed Automatica,
Univ. Tor Vergata, A.A. 2004/05)
- mag/lug 2004: Reti di Calcolatori
(corso di laurea in Ing. Informatica ed Automatica,
Univ. Tor Vergata, A.A. 2003/04)
- mar/giu 2003: Programmazione in assembler e reverse engineering
(corso di dottorato in Ing. Informatica, Univ. Tor Vergata,
A.A. 2002/03)
- mag/lug 2003: Reti di Calcolatori
(corso di laurea in Ing. Informatica ed Automatica,
Univ. Tor Vergata, A.A. 2002/03)
- feb/lug 2003: Secondo Corso
Libero "Linux Kernel Hacking"
- dic 2002/feb 2003: Assembler e Reverse Engineering (corso SMD)
- nov/dic 2002: Fondamenti di Informatica (corso di laurea per Tecnico Ortopedico, Univ. Cattolica del
Sacro Cuore, sede di Roma)
- nov 2002: Driver
per dispositivi PCI in Linux 2.4 e 2.5 (seminario
per il LinuxDay 2002 di Roma)
- mag/lug 2002: Reti di Calcolatori
(corso di laurea in Ing. Informatica, Univ. Tor Vergata, A.A. 2001/02)
- gen/mag 2002: Primo Corso
Libero "Linux Kernel Hacking"
- mag/lug 2001: Reti di Calcolatori 1 (corso di laurea in Ing. Informatica,
Univ. Tor Vergata, A.A. 2000/01)
Tesi e tesine
Gli studenti interessati a svolgere tesi e tirocini sotto la mia
supervisione possono contattarmi per posta
elettronica o personalmente.
Attualmente ho una coda di attesa
costituita da diverse decine di studenti. Se uno studente chiede di lavorare
sotto la mia supervisione, verrà inserito in coda alla lista. Purtroppo
non sono in grado di fare previsioni attendibili sui tempi di attesa degli
studenti in coda.
Per svolgere gli argomenti che propongo è sempre richiesto saper
programmare in C ed in C++. Questo significa non solo conoscere gli elementi
del linguaggio di programmazione, ma anche possedere (o essere disposti ad
acquisire dedicandovi tempo e fatica) una buona capacità di analisi dei
problemi, formulazione di algoritmi, pianificazione ed organizzazione dei
programmi, scrittura e collaudo del codice.
È spesso richiesta anche la conoscenza del sistema operativo
GNU/Linux.
Per avere una idea del tipo di tesi e tesine che mi aspetto dagli studenti,
ecco un elenco di argomenti (per lo più assegnati in passato):
- Progetto e sviluppo di un simulatore di wide-area internetwork
per applicazioni Voice over IP
- Progetto e sviluppo di un simulatore software per procedure di
handover satellitare
- Riconoscimento di comandi vocali su computer palmare Linux/iPAQ
- Sviluppo di interfaccie grafiche per computer palmare Linux/iPAQ
(ambienti Qt, Microwindows, FLTK)
- Modifica del kernel Linux per realizzare
sistemi multiprocessori asimmetrici (shielded processor)
- Sviluppo in ambiente GNU/Linux di un applicazione di controllo per un
robot antropomorfo (braccio industriale a 6 giunti)
- Sviluppo in ambiente GNU/Linux tramite flex e bison di un interprete per
un linguaggio BASIC-like dedicato al controllo di un robot antropomorfo
(braccio industriale a 6 giunti)
- Sviluppo in ambiente GNU/Linux di un protocollo su TCP/IP e scrittura del
relativo server per la gestione di interfaccie grafiche dedicate al controllo
di un robot antropomorfo (braccio industriale a 6 giunti)
-
Sviluppo di una interfaccia grafica su console remote in ambiente MS Windows CE
per il controllo di un robot antropomorfo (braccio industriale a 6 giunti)
- Sviluppo di una interfaccia grafica in ambiente GNU/Linux/Qt per il
controllo di un robot antropomorfo (braccio industriale a 6 giunti)
- Sviluppo in ambiente GNU/Linux di un disassemblatore/debugger integrato
per il formato eseguibile ELF con funzionalità simili a quelle offerte
da URSoft W32Dasm per il formato eseguibile PECOFF (MS Win32)