Francesco TOMMASI

Francesco TOMMASI

Professore II Fascia (Associato)

Settore Scientifico Disciplinare ING-INF/05: SISTEMI DI ELABORAZIONE DELLE INFORMAZIONI.

Dipartimento di Ingegneria dell'Innovazione

Centro Ecotekne Pal. O - S.P. 6, Lecce - Monteroni - LECCE (LE)

Ufficio, Piano terra

Telefono +39 0832 29 7225 +39 0832 29 7310

Orario di ricevimento

Lunedì 16:00 - 18:00 o in qualsiasi momento, previo appuntamento tramite mail.

Visualizza QR Code Scarica la Visit Card

Curriculum Vitae

 

Francesco Tommasi è professore associato presso il Dipartimento di Ingegneria dell'Innovazione dell'Università del Salento, per il quale è titolare degli insegnamenti di "Sistemi Operativi", "Programmazione di Sistema e di Rete" e "Sicurezza dei Sistemi". I suoi interessi di ricerca attuali includono la sicurezza informatica, le tecnologie per la formazione a distanza. In passato ha svolto ricerche nel campo della Qualità di Servizio per le reti di computer, la mobilità IP, l'internetworking satellitare e le tecnologie per la Formazione a Distanza via Satellite.

È responsabile scientifico del Laboratorio per l'Internetworking e l'Interoperabilità tra i Sistemi (LIIS, http://www.liis.it).

È co-responsabile scientifico del Cybersecurity Research Lab.

È responsabile del nodo di Unisalento del Cybersecurity National Lab del CINI.

E' coautore del primo Internet Proposed Standard firmato da un'università italiana (http://www.ietf.org/rfc/rfc2961.txt).

È coautore di uno degli attacchi inclusi nel database CAPEC degli attacchi informatici più pericolosi (https://capec.mitre.org/data/definitions/701.html 

https://www.repubblica.it/tecnologia/2022/04/12/news/tre_ricercatori_italiani_hanno_scoperto_come_neutralizzare_lautenticazione_a_due_fattori-344196332/)

Nel 2003 ha insegnato per un semestre "Advanced IP Networking" alla Université de Technologie de Troyes (Francia).

È stato il creatore del Campus Satellitare del Salento (http://www.campusdelsalento.it).

È autore di oltre 60 pubblicazioni scientifiche su riviste e atti di congressi.

È stato ed è responsabile scientifico di vari progetti di ricerca nel settore dell'Internetworking satellitare, della teledidattica satellitare, e delle Reti tra cui:

- Progetto "Completamento e potenziamento del Centro di Formazione a Distanza Satellitaria  dell'Università di Lecce" finanziato dal MIUR nell'ambito del Programma Operativo Nazionale 2000-2006   Ricerca Scientifica, Sviluppo Tecnologico, Alta Formazione;

- Progetto "LAND-LAB" (responsabile per la parte informatica) finanziato dal MIUR nell'ambito del Programma Operativo Nazionale 2000-2006   Ricerca Scientifica, Sviluppo Tecnologico, Alta Formazione;

- Progetto "Banca Dati Tossicologica del suolo e prodotti derivati" http://bdt.unile.it)

- Progetto “Open Sat Relaying” finanziato da Regione Puglia, Programma Operativo 2007-2013, Asse I Linea 1.1, Aiuti agli investimenti in ricerca della PMI 

- Progetto di Trasferimento Tecnologico Legge 598/94, art. 11: Realizzazione di un prototipo di router satellitare e terrestre- Progetto Campus One (responsabile per i servizi ICT)  finanziato Dal MIUR (vedi http://www.campusone.unile.it)

- Progetto MODUS finanziato Dalla Agenzia Spaziale Europea (vedi http://telecom.esa.int/telecom/www/object/index.cfm?fobjectid=682)

- Progetto ESMEE "Earth and Space Multimedia systems Enhancements and Extensions" finanziato Dalla Agenzia Spaziale Europea (vedi http://telecom.esa.int/telecom/www/object/index.cfm?fobjectid=10448)

 

 


 

 

Didattica

A.A. 2023/2024

PROGRAMMAZIONE DI SISTEMA E DI RETE

Corso di laurea INGEGNERIA INFORMATICA

Tipo corso di studio Laurea Magistrale

Lingua ITALIANO

Crediti 9.0

Ripartizione oraria Ore totali di attività frontale: 81.0

Anno accademico di erogazione 2023/2024

Per immatricolati nel 2023/2024

Anno di corso 1

Struttura DIPARTIMENTO DI INGEGNERIA DELL'INNOVAZIONE

Percorso PERCORSO COMUNE

Sede Lecce

SICUREZZA DEI SISTEMI

Corso di laurea INGEGNERIA INFORMATICA

Tipo corso di studio Laurea Magistrale

Lingua ITALIANO

Crediti 6.0

Ripartizione oraria Ore totali di attività frontale: 54.0

Anno accademico di erogazione 2023/2024

Per immatricolati nel 2023/2024

Anno di corso 1

Struttura DIPARTIMENTO DI INGEGNERIA DELL'INNOVAZIONE

Percorso PERCORSO COMUNE

Sede Lecce

SISTEMI OPERATIVI

Corso di laurea INGEGNERIA DELL' INFORMAZIONE: ELETTRONICA, INFORMATICA E TELECOMUNICAZIONI

Tipo corso di studio Laurea

Lingua ITALIANO

Crediti 9.0

Ripartizione oraria Ore totali di attività frontale: 81.0

Anno accademico di erogazione 2023/2024

Per immatricolati nel 2023/2024

Anno di corso 1

Struttura DIPARTIMENTO DI INGEGNERIA DELL'INNOVAZIONE

Percorso Percorso comune

Sede Lecce

SISTEMI OPERATIVI

Corso di laurea INGEGNERIA INFORMATICA

Tipo corso di studio Laurea

Lingua ITALIANO

Crediti 9.0

Ripartizione oraria Ore totali di attività frontale: 81.0

Anno accademico di erogazione 2023/2024

Per immatricolati nel 2023/2024

Anno di corso 1

Struttura DIPARTIMENTO DI INGEGNERIA DELL'INNOVAZIONE

Percorso Percorso comune

Sede Lecce

A.A. 2022/2023

COMPUTER SCIENCE FOR CULTURAL HERITAGE

Degree course DIGITAL HUMANITIES

Course type Laurea Magistrale

Language INGLESE

Credits 9.0

Teaching hours Ore totali di attività frontale: 63.0

Year taught 2022/2023

For matriculated on 2022/2023

Course year 1

Structure DIPARTIMENTO DI BENI CULTURALI

Subject matter COMUNE/GENERICO

PROGRAMMAZIONE DI SISTEMA E DI RETE

Corso di laurea INGEGNERIA INFORMATICA

Tipo corso di studio Laurea Magistrale

Lingua ITALIANO

Crediti 9.0

Ripartizione oraria Ore totali di attività frontale: 81.0

Anno accademico di erogazione 2022/2023

Per immatricolati nel 2022/2023

Anno di corso 1

Struttura DIPARTIMENTO DI INGEGNERIA DELL'INNOVAZIONE

Percorso PERCORSO COMUNE

Sede Lecce

SICUREZZA DEI SISTEMI

Corso di laurea INGEGNERIA INFORMATICA

Tipo corso di studio Laurea Magistrale

Lingua ITALIANO

Crediti 6.0

Ripartizione oraria Ore totali di attività frontale: 54.0

Anno accademico di erogazione 2022/2023

Per immatricolati nel 2022/2023

Anno di corso 1

Struttura DIPARTIMENTO DI INGEGNERIA DELL'INNOVAZIONE

Percorso PERCORSO COMUNE

Sede Lecce

A.A. 2021/2022

COMPUTER SCIENCE FOR CULTURAL HERITAGE

Degree course DIGITAL HUMANITIES

Course type Laurea Magistrale

Language INGLESE

Credits 6.0

Teaching hours Ore totali di attività frontale: 42.0

Year taught 2021/2022

For matriculated on 2021/2022

Course year 1

Structure DIPARTIMENTO DI BENI CULTURALI

Subject matter COMUNE/GENERICO

SISTEMI OPERATIVI

Corso di laurea INGEGNERIA DELL'INFORMAZIONE

Tipo corso di studio Laurea

Lingua ITALIANO

Crediti 6.0

Ripartizione oraria Ore totali di attività frontale: 54.0

Anno accademico di erogazione 2021/2022

Per immatricolati nel 2020/2021

Anno di corso 2

Struttura DIPARTIMENTO DI INGEGNERIA DELL'INNOVAZIONE

Percorso PERCORSO COMUNE

Sede Lecce

SYSTEM AND NETWORK PROGRAMMING

Degree course COMPUTER ENGINEERING

Course type Laurea Magistrale

Language INGLESE

Credits 9.0

Teaching hours Ore totali di attività frontale: 81.0

Year taught 2021/2022

For matriculated on 2021/2022

Course year 1

Structure DIPARTIMENTO DI INGEGNERIA DELL'INNOVAZIONE

Subject matter PERCORSO COMUNE

Location Lecce

SYSTEM SECURITY C.I.

Corso di laurea COMPUTER ENGINEERING

Tipo corso di studio Laurea Magistrale

Crediti 5.0

Ripartizione oraria Ore totali di attività frontale: 45.0

Anno accademico di erogazione 2021/2022

Per immatricolati nel 2021/2022

Anno di corso 1

Struttura DIPARTIMENTO DI INGEGNERIA DELL'INNOVAZIONE

Percorso PERCORSO COMUNE

A.A. 2020/2021

COMPUTER SCIENCE FOR CULTURAL HERITAGE

Degree course DIGITAL HUMANITIES

Course type Laurea Magistrale

Language INGLESE

Credits 6.0

Teaching hours Ore totali di attività frontale: 42.0

Year taught 2020/2021

For matriculated on 2020/2021

Course year 1

Structure DIPARTIMENTO DI BENI CULTURALI

Subject matter COMUNE/GENERICO

SISTEMI OPERATIVI

Corso di laurea INGEGNERIA DELL'INFORMAZIONE

Tipo corso di studio Laurea

Lingua ITALIANO

Crediti 6.0

Ripartizione oraria Ore totali di attività frontale: 54.0

Anno accademico di erogazione 2020/2021

Per immatricolati nel 2019/2020

Anno di corso 2

Struttura DIPARTIMENTO DI INGEGNERIA DELL'INNOVAZIONE

Percorso PERCORSO COMUNE

Sede Lecce

SYSTEM AND NETWORK PROGRAMMING

Degree course COMPUTER ENGINEERING

Course type Laurea Magistrale

Language INGLESE

Credits 12.0

Teaching hours Ore totali di attività frontale: 108.0

Year taught 2020/2021

For matriculated on 2020/2021

Course year 1

Structure DIPARTIMENTO DI INGEGNERIA DELL'INNOVAZIONE

Subject matter PERCORSO COMUNE

Location Lecce

A.A. 2019/2020

COMPUTER SCIENCE FOR CULTURAL HERITAGE

Degree course EUROPEAN HERITAGE, DIGITAL MEDIA AND THE INFORMATION SOCIETY

Course type Laurea Magistrale

Language INGLESE

Credits 6.0

Teaching hours Ore totali di attività frontale: 42.0

Year taught 2019/2020

For matriculated on 2019/2020

Course year 1

Structure DIPARTIMENTO DI BENI CULTURALI

Subject matter INTERNAZIONALE

SISTEMI OPERATIVI

Corso di laurea INGEGNERIA DELL'INFORMAZIONE

Tipo corso di studio Laurea

Lingua ITALIANO

Crediti 7.0

Ripartizione oraria Ore totali di attività frontale: 63.0

Anno accademico di erogazione 2019/2020

Per immatricolati nel 2018/2019

Anno di corso 2

Struttura DIPARTIMENTO DI INGEGNERIA DELL'INNOVAZIONE

Percorso PERCORSO COMUNE

Sede Lecce

SYSTEM AND NETWORK PROGRAMMING

Degree course COMPUTER ENGINEERING

Course type Laurea Magistrale

Language INGLESE

Credits 12.0

Teaching hours Ore totali di attività frontale: 108.0

Year taught 2019/2020

For matriculated on 2019/2020

Course year 1

Structure DIPARTIMENTO DI INGEGNERIA DELL'INNOVAZIONE

Subject matter PERCORSO COMUNE

Location Lecce

A.A. 2018/2019

COMPUTER SCIENCE FOR CULTURAL HERITAGE

Degree course EUROPEAN HERITAGE, DIGITAL MEDIA AND THE INFORMATION SOCIETY

Course type Laurea Magistrale

Language INGLESE

Credits 6.0

Teaching hours Ore totali di attività frontale: 42.0

Year taught 2018/2019

For matriculated on 2018/2019

Course year 1

Structure DIPARTIMENTO DI BENI CULTURALI

Subject matter INTERNAZIONALE

SISTEMI OPERATIVI

Corso di laurea INGEGNERIA DELL'INFORMAZIONE

Tipo corso di studio Laurea

Lingua ITALIANO

Crediti 7.0

Ripartizione oraria Ore totali di attività frontale: 63.0

Anno accademico di erogazione 2018/2019

Per immatricolati nel 2017/2018

Anno di corso 2

Struttura DIPARTIMENTO DI INGEGNERIA DELL'INNOVAZIONE

Percorso PERCORSO COMUNE

Sede Lecce

SYSTEM AND NETWORK PROGRAMMING

Degree course COMPUTER ENGINEERING

Course type Laurea Magistrale

Language INGLESE

Credits 9.0

Teaching hours Ore totali di attività frontale: 81.0

Year taught 2018/2019

For matriculated on 2018/2019

Course year 1

Structure DIPARTIMENTO DI INGEGNERIA DELL'INNOVAZIONE

Subject matter PERCORSO COMUNE

Location Lecce

Torna all'elenco
FONDAMENTI DI CYBERSECURITY

Corso di laurea INGEGNERIA INFORMATICA

Settore Scientifico Disciplinare ING-INF/05

Tipo corso di studio Laurea

Crediti 6.0

Ripartizione oraria Ore totali di attività frontale: 54.0

Per immatricolati nel 2023/2024

Anno accademico di erogazione 2025/2026

Anno di corso 3

Semestre Secondo Semestre (dal 04/03/2026 al 14/06/2026)

Lingua ITALIANO

Percorso Percorso comune (999)

Sede Lecce

FONDAMENTI DI CYBERSECURITY (ING-INF/05)
PROGRAMMAZIONE DI SISTEMA E DI RETE

Corso di laurea INGEGNERIA INFORMATICA

Settore Scientifico Disciplinare ING-INF/05

Tipo corso di studio Laurea Magistrale

Crediti 9.0

Ripartizione oraria Ore totali di attività frontale: 81.0

Per immatricolati nel 2023/2024

Anno accademico di erogazione 2023/2024

Anno di corso 1

Semestre Primo Semestre (dal 18/09/2023 al 22/12/2023)

Lingua ITALIANO

Percorso PERCORSO COMUNE (999)

Sede Lecce

All the concepts presented in the “Sistemi Operativi” course in the first level degree “Ingegneria dell'Informazione”. Namely, a good knowledge of: UNIX® basic concepts, the UNIX® bash shell,  bash scripting, main UNIX® commands

UNIX System Overview
UNIX Standardization and Implementations
File I/O
Files and Directories
System Data Files and Information
Process Environment
Process Control
Process Relationships
Signals
Threads
Thread Control
Daemon Processes
Advanced I/O
Interprocess Communication
Network IPC: Sockets
Terminal I/O
 

 

Overview
The course aims at starting the students off on programming system applications (e.g. a server) on a UNIX® System.

Learning Outcomes; after the course the student should
* Know the most important functionalities and facilities offered by a UNIX® system, the System Calls (and, more generally, the APIs) offered to access them.
* Be able to write efficient CLI (Command Line Interface) system and network applications in the C language.
* Know how to write interoperable applications by complying with the UNIX® standards (SUSv3, SUSv4).
* Know which are the main differences between the MacOS and the Linux varieties and how to cope with them.

 

The course is strongly oriented towards an hands-on methodology. Students must follow lectures in front of a computer which must be used to reproduce and test what is explained by the teacher-

Writing a C program aimed at solving a given problem within a given time. Students are free to consult (paper and digital) texts and to use Internet search engines.

UNIX System Overview
UNIX Standardization and Implementations
File I/O
Files and Directories
System Data Files and Information
Process Environment
Process Control
Process Relationships
Signals
Threads
Thread Control
Daemon Processes
Advanced I/O
Interprocess Communication
Network IPC: Sockets
Terminal I/O
 

F. Tommasi "Alla Scoperta di UNIX - Esplorare GNU/Linux e macOS con la linea di comando", Marzo 2021, ISBN: 9791220082204

Stevens, Rago, Advanced Programming in the UNIX Environment, 3rd Edition, Addison-Wesley, 2013 ISBN 978-0321637734

Stevens, Fenner, Rudoff, Unix Network Programming, Volume 1: The Sockets Networking API (3rd Edition), Addison-Wesley, 2003 ISBN 978-0131411555

Kerrisk, The Linux Programming Interface, NO STARCH PRESS, 2010 ISBN 978-1593272203

Handouts delivered by the teacher through http://moodliis.unisalento.it/

PROGRAMMAZIONE DI SISTEMA E DI RETE (ING-INF/05)
SICUREZZA DEI SISTEMI

Corso di laurea INGEGNERIA INFORMATICA

Settore Scientifico Disciplinare ING-INF/05

Tipo corso di studio Laurea Magistrale

Crediti 6.0

Ripartizione oraria Ore totali di attività frontale: 54.0

Per immatricolati nel 2023/2024

Anno accademico di erogazione 2023/2024

Anno di corso 1

Semestre Secondo Semestre (dal 04/03/2024 al 14/06/2024)

Lingua ITALIANO

Percorso PERCORSO COMUNE (999)

Sede Lecce

Knowledge of the content of the course "System and Network Programming" by the same teacher

Introduction to Computer Security
Vulnerabilities of Set-UID programs
Attacks based on Environment Variables
Buffer Overflow attacks
Introduction to Cryptography
One-Way Hash Functions
Secret-Key Encryption
Public Key Cryptography
Public Key Infrastructure
Web security
Transport Layer Security
Bitcoin and Blockchain

 

The course aims at providing the students with the basics of Computer Security. The course is based on UNIX®, because of the popularity of such operating system among professionals.

The course is strongly oriented towards a hands-on mehodology.

Writing a program aimed at solving a given problem in a given time.

Introduction to Computer Security
Vulnerabilities of Set-UID programs
Attacks based on Environment Variables
Buffer Overflow attacks
Introduction to Cryptography
One-Way Hash Functions
Secret-Key Encryption
Public Key Cryptography
Public Key Infrastructure
Web security
Transport Layer Security
Bitcoin and Blockchain

 

Textbook:

Wenliang Du. Internet Security: A Hands-on Approach, May 2022, ISBN 978-1733003964

Wenliang Du. Computer Security: A Hands-on Approach, May 2022, ISBN 978-1733003957

Additional, useful references:

F. Tommasi "Alla Scoperta di UNIX - Esplorare GNU/Linux e macOS con la linea di comando", Marzo 2021, ISBN: 9791220082204

 

SICUREZZA DEI SISTEMI (ING-INF/05)
SISTEMI OPERATIVI

Corso di laurea INGEGNERIA DELL' INFORMAZIONE: ELETTRONICA, INFORMATICA E TELECOMUNICAZIONI

Settore Scientifico Disciplinare ING-INF/05

Tipo corso di studio Laurea

Crediti 9.0

Ripartizione oraria Ore totali di attività frontale: 81.0

Per immatricolati nel 2023/2024

Anno accademico di erogazione 2023/2024

Anno di corso 1

Semestre Secondo Semestre (dal 04/03/2024 al 14/06/2024)

Lingua ITALIANO

Percorso Percorso comune (999)

Sede Lecce

Familiarità con l'utilizzo di un qualunque computer, nozioni di file, directory. Familiarità con i principali programmi di rete.

 

Introdurre ai concetti fondamentali alla base di un sistema operativo sia mediante la presentazione di nozioni teoriche che attraverso un approccio pratico al sistema operativo UNIX®. Gli studenti vengono introdotti all'esplorazione e alla conoscenza del sistema operativo attraverso l'uso dei più importanti comandi offerti dalla CLI (Command Line Interface – Interfaccia a linea di comando). L'esplorazione del sistema viene approfondita e resa più completa attraverso l'apprendimento delle tecniche di scripting, ovvero attraverso la scrittura di programmi di complessità crescente che consentono di esplorare gli aspetti più significativi del funzionamento del sistema.

 

Al termine del corso lo studente dovrebbe essere in grado di

* Comprendere le principali caratteristiche e funzionalità del sistema operativo UNIX®.

* Padroneggiare la linea di comando UNIX® attraverso lo shell bash

* Conoscere le utility più importanti messe a disposizione del sistema.

* Scrivere degli script in linguaggio bash che realizzino un'ampia gamma di funzionalità.

Il corso prevede che lo studente segua avendo la possibilità di provare immediatamente sul proprio computer quanto illustrato dal docente.

L'esame consiste di una prova svolta al computer (della durata variabile, a seconda della complessità, dai 90 ai 150 minuti) durante la quale si richiede di utilizzare in pratica mediante la realizzazione di uno script bash funzionante, i concetti e gli strumenti acquisiti durante il corso. Durante l'esame gli studenti sono liberi di consultare qualsiasi testo, cartaceo o digitale, e di fare ricerche su Internet.

 

Il File System UNIX (la sua organizzazione interna e la disposizione dei file tipica di ciascuna variante)
Il sistema dei privilegi in UNIX (significato dei privilegi per files e directory) SUID bit, SGID bit, Sticky bit
I tipi di file
Le named pipe
I processi (creazione, identificazione, distruzione, relazioni, monitoraggio, gestione)
Lo spazio di memoria di un processo
Memoria virtuale (uso dello spazio virtuale da parte di un processo e strumenti di monitoraggio)
Affinità, interoperabilità e compatibilità tra Linux, MacOS X e FreeBSD
MacOS X come client per l'accesso a un server Linux
L'editor TextWrangler
L'applicazione Terminale
Il montaggio di volumi di rete ospitati da un server Linux sulla scrivania di MacOS X
Librerie statiche e dinamiche (significato, costruzione, istallazione, utilizzo, collocazione nello spazio di memoria del processo)
Il comando grep e le espressioni regolari
I principali comandi per la crittografia a segreto condiviso e a chiave pubblica, la firma digitale
I comandi per la diagnostica e l'utilizzo delle reti
La rappresentazione dei caratteri: Unicode e UTF-8
Introduzione ai Segnali
Le distribuzioni Linux

Comandi utente presentati nel corso:

apropos, arp, base64, basename, bc, cal, cat, chmod, cmp, cp, curl, cut, date, dd, dig, dirname, du, dumpe2fs, edit, env, file, find, grep, head, hexdump, iconv, id, ifconfig, ip, jot, less, ln, locale, ls, lsof, lynx, man, md5, mkdir, mkfifo, mv, nice, open, openssl, otool, ping, printf, ps, pstree, rev, rm, rmdir, rs, say, scp, screencapture, script, sed, seq, sort, split, ssh, stat, strings, stty, sysctl, tac, tail, tar, tee, test, textutil, top, touch, tr, traceroute, tty, uniq, vm_stat, vmmap, stat, wc, which, who, whois, xargs, xxd

Bash (con riferimento ai capitoli della pagina di manuale di bash)

Invocazione, Shell grammar, Quoting, Parameters, Expansions, Redirections, Job control, Funzioni, Aritmetica, Scripting, Cicli ed espressioni condizionali, Aritmetica, Environment,  Exit status, Prompting, History, Build-in commands, Gestione dei segnali.

Comandi built-in di Bash presentati nel corso:
#, #!, alias, bg, break, case, cd, echo, enable, eval, exec, exit, export, fg, for, getopts, history, if, jobs, kill, let, pwd, read, return, select, set, source (.), test, time, times, trap, type, umask, while.

F. Tommasi "Alla Scoperta di UNIX - Esplorare GNU/Linux e macOS con la linea di comando", 2a edizione. Attenzione: pubblicazione imminente.

 

Il docente mette inoltre a disposizione numerose dispense, note e link, scaricabili liberamente dagli iscritti dal sito https://moodliis.unisalento.it (richiede autenticazione con credenziali comunicate all'inizio del corso).

Testi integrativi:
[1] Learning the Unix Operating System, 5th ed. O'Reilly 2001, ISBN 978-0596002619. Di taglio decisamente introduttivo.
[2] Learning the bash Shell, 3rd ed., O'Reilly 2005 ISBN 978-0596009656. Una trattazione molto accurata dello shell bash. 
[3] Linux in a Nutshell, 6th Edition, 3rd ed., O'Reilly 2009 ISBN 978-0596154486. Un comodo e sintetico manuale di riferimento per Linux (in grandissima parte valido anche per MacOS).
[4] Linux Command Line and Shell Scripting Bible, 3rd ed., John Wiley & Sons 2015 ISBN 978-1118983843. Il testo che, tra quelli qui elencati, copre la maggior quantità di argomenti trattati nel corso.
[5] Advanced Bash-Scripting Guide, http://tldp.org/LDP/abs/html. Una guida gratuita estremamente approfondita allo shell bash.
[6] A.Silberschatz - Operating System Concepts - Wiley - 9th edition (2013) - ISBN 978-1118063330. Una classica presentazione di taglio strettamente teorico dei concetti che il corso si sforza di introdurre attraverso l'interazione pratica con un sistema reale.

SISTEMI OPERATIVI (ING-INF/05)
SISTEMI OPERATIVI

Corso di laurea INGEGNERIA INFORMATICA

Settore Scientifico Disciplinare ING-INF/05

Tipo corso di studio Laurea

Crediti 9.0

Ripartizione oraria Ore totali di attività frontale: 81.0

Per immatricolati nel 2023/2024

Anno accademico di erogazione 2023/2024

Anno di corso 1

Semestre Secondo Semestre (dal 04/03/2024 al 14/06/2024)

Lingua ITALIANO

Percorso Percorso comune (999)

Sede Lecce

Familiarità con l'utilizzo di un qualunque computer, nozioni di file, directory. Familiarità con i principali programmi di rete.

 

Introdurre ai concetti fondamentali alla base di un sistema operativo sia mediante la presentazione di nozioni teoriche che attraverso un approccio pratico al sistema operativo UNIX®. Gli studenti vengono introdotti all'esplorazione e alla conoscenza del sistema operativo attraverso l'uso dei più importanti comandi offerti dalla CLI (Command Line Interface – Interfaccia a linea di comando). L'esplorazione del sistema viene approfondita e resa più completa attraverso l'apprendimento delle tecniche di scripting, ovvero attraverso la scrittura di programmi di complessità crescente che consentono di esplorare gli aspetti più significativi del funzionamento del sistema.

 

Al termine del corso lo studente dovrebbe essere in grado di

* Comprendere le principali caratteristiche e funzionalità del sistema operativo UNIX®.

* Padroneggiare la linea di comando UNIX® attraverso lo shell bash

* Conoscere le utility più importanti messe a disposizione del sistema.

* Scrivere degli script in linguaggio bash che realizzino un'ampia gamma di funzionalità.

Il corso prevede che lo studente segua avendo la possibilità di provare immediatamente sul proprio computer quanto illustrato dal docente.

L'esame consiste di una prova svolta al computer (della durata variabile, a seconda della complessità, dai 90 ai 150 minuti) durante la quale si richiede di utilizzare in pratica mediante la realizzazione di uno script bash funzionante, i concetti e gli strumenti acquisiti durante il corso. Durante l'esame gli studenti sono liberi di consultare qualsiasi testo, cartaceo o digitale, e di fare ricerche su Internet.

 

Il File System UNIX (la sua organizzazione interna e la disposizione dei file tipica di ciascuna variante)
Il sistema dei privilegi in UNIX (significato dei privilegi per files e directory) SUID bit, SGID bit, Sticky bit
I tipi di file
Le named pipe
I processi (creazione, identificazione, distruzione, relazioni, monitoraggio, gestione)
Lo spazio di memoria di un processo
Memoria virtuale (uso dello spazio virtuale da parte di un processo e strumenti di monitoraggio)
Affinità, interoperabilità e compatibilità tra Linux, MacOS X e FreeBSD
MacOS X come client per l'accesso a un server Linux
L'editor TextWrangler
L'applicazione Terminale
Il montaggio di volumi di rete ospitati da un server Linux sulla scrivania di MacOS X
Librerie statiche e dinamiche (significato, costruzione, istallazione, utilizzo, collocazione nello spazio di memoria del processo)
Il comando grep e le espressioni regolari
I principali comandi per la crittografia a segreto condiviso e a chiave pubblica, la firma digitale
I comandi per la diagnostica e l'utilizzo delle reti
La rappresentazione dei caratteri: Unicode e UTF-8
Introduzione ai Segnali
Le distribuzioni Linux

Comandi utente presentati nel corso:

apropos, arp, base64, basename, bc, cal, cat, chmod, cmp, cp, curl, cut, date, dd, dig, dirname, du, dumpe2fs, edit, env, file, find, grep, head, hexdump, iconv, id, ifconfig, ip, jot, less, ln, locale, ls, lsof, lynx, man, md5, mkdir, mkfifo, mv, nice, open, openssl, otool, ping, printf, ps, pstree, rev, rm, rmdir, rs, say, scp, screencapture, script, sed, seq, sort, split, ssh, stat, strings, stty, sysctl, tac, tail, tar, tee, test, textutil, top, touch, tr, traceroute, tty, uniq, vm_stat, vmmap, stat, wc, which, who, whois, xargs, xxd

Bash (con riferimento ai capitoli della pagina di manuale di bash)

Invocazione, Shell grammar, Quoting, Parameters, Expansions, Redirections, Job control, Funzioni, Aritmetica, Scripting, Cicli ed espressioni condizionali, Aritmetica, Environment,  Exit status, Prompting, History, Build-in commands, Gestione dei segnali.

Comandi built-in di Bash presentati nel corso:
#, #!, alias, bg, break, case, cd, echo, enable, eval, exec, exit, export, fg, for, getopts, history, if, jobs, kill, let, pwd, read, return, select, set, source (.), test, time, times, trap, type, umask, while.

F. Tommasi "Alla Scoperta di UNIX - Esplorare GNU/Linux e macOS con la linea di comando", 2a edizione. Attenzione: pubblicazione imminente.

 

Il docente mette inoltre a disposizione numerose dispense, note e link, scaricabili liberamente dagli iscritti dal sito https://moodliis.unisalento.it (richiede autenticazione con credenziali comunicate all'inizio del corso).

Testi integrativi:
[1] Learning the Unix Operating System, 5th ed. O'Reilly 2001, ISBN 978-0596002619. Di taglio decisamente introduttivo.
[2] Learning the bash Shell, 3rd ed., O'Reilly 2005 ISBN 978-0596009656. Una trattazione molto accurata dello shell bash. 
[3] Linux in a Nutshell, 6th Edition, 3rd ed., O'Reilly 2009 ISBN 978-0596154486. Un comodo e sintetico manuale di riferimento per Linux (in grandissima parte valido anche per MacOS).
[4] Linux Command Line and Shell Scripting Bible, 3rd ed., John Wiley & Sons 2015 ISBN 978-1118983843. Il testo che, tra quelli qui elencati, copre la maggior quantità di argomenti trattati nel corso.
[5] Advanced Bash-Scripting Guide, http://tldp.org/LDP/abs/html. Una guida gratuita estremamente approfondita allo shell bash.
[6] A.Silberschatz - Operating System Concepts - Wiley - 9th edition (2013) - ISBN 978-1118063330. Una classica presentazione di taglio strettamente teorico dei concetti che il corso si sforza di introdurre attraverso l'interazione pratica con un sistema reale.

SISTEMI OPERATIVI (ING-INF/05)
COMPUTER SCIENCE FOR CULTURAL HERITAGE

Degree course DIGITAL HUMANITIES

Subject area ING-INF/05

Course type Laurea Magistrale

Credits 9.0

Teaching hours Ore totali di attività frontale: 63.0

For matriculated on 2022/2023

Year taught 2022/2023

Course year 1

Semestre Primo Semestre (dal 19/09/2022 al 13/01/2023)

Language INGLESE

Subject matter COMUNE/GENERICO (999)

Familiarity with computers (at least at ECDL level)

- What is an operating system

 

- The UNIX operating system

 

- The shell and the Command Line Interface

 

- Useful UNIX commands and utilities

 

- Scripting languages and their use

 

- Text encoding – Unicode, UTF8 and related tools

 

- File formats: description and manipulation (text, image, audio, video)

 

- Network basics and main network tools

 

- Computer security – digital objects integrity and authenticity

 

The course aims at providing the students coming from the humanities with the basics of Computer Science. The course is based on UNIX®, because of the popularity of such operating system among professionals.

The course is strongly oriented towards a hands-on mehodology.

Writing a bash script aimed at solving a given problem in a given time.

- What is an operating system

 

- The UNIX operating system

 

- The shell and the Command Line Interface

 

- Useful UNIX commands and utilities

 

- Scripting languages and their use

 

- Text encoding – Unicode, UTF8 and related tools

 

- File formats: description and manipulation (text, image, audio, video)

 

- Network basics and main network tools

 

- Computer security – digital objects integrity and authenticity

Textbook:

All needed reference material is composed, organized and constantly updated by the teacher. The material is made available to students through the course moodle site.

 

Additional, useful references:

 

- Franco Tommasi, Alla scoperta di UNIX, 2021, ISBN 979-1220082204

- Peek, Todino, Strang, Learning the Unix Operating System, 5th ed. O'Reilly 2001, ISBN 978-0596002619:

- Newham, Learning the bash Shell, 3rd ed., O'Reilly 2005 ISBN 978-0596009656

- Cooper, Advanced Bash-Scripting Guide, http://tldp.org/LDP/abs/html/

- Silberschatz, Galvin, Gagne - Operating System Concepts - Wiley - 9th ed. (2013) - ISBN 978-1118063330

COMPUTER SCIENCE FOR CULTURAL HERITAGE (ING-INF/05)
PROGRAMMAZIONE DI SISTEMA E DI RETE

Corso di laurea INGEGNERIA INFORMATICA

Settore Scientifico Disciplinare ING-INF/05

Tipo corso di studio Laurea Magistrale

Crediti 9.0

Ripartizione oraria Ore totali di attività frontale: 81.0

Per immatricolati nel 2022/2023

Anno accademico di erogazione 2022/2023

Anno di corso 1

Semestre Primo Semestre (dal 19/09/2022 al 16/12/2022)

Lingua ITALIANO

Percorso PERCORSO COMUNE (999)

Sede Lecce

All the concepts presented in the “Sistemi Operativi” course in the first level degree “Ingegneria dell'Informazione”. Namely, a good knowledge of: UNIX® basic concepts, the UNIX® bash shell,  bash scripting, main UNIX® commands

UNIX System Overview
UNIX Standardization and Implementations
File I/O
Files and Directories
System Data Files and Information
Process Environment
Process Control
Process Relationships
Signals
Threads
Thread Control
Daemon Processes
Advanced I/O
Interprocess Communication
Network IPC: Sockets
Terminal I/O
 

 

Overview
The course aims at starting the students off on programming system applications (e.g. a server) on a UNIX® System.

Learning Outcomes; after the course the student should
* Know the most important functionalities and facilities offered by a UNIX® system, the System Calls (and, more generally, the APIs) offered to access them.
* Be able to write efficient CLI (Command Line Interface) system and network applications in the C language.
* Know how to write interoperable applications by complying with the UNIX® standards (SUSv3, SUSv4).
* Know which are the main differences between the MacOS and the Linux varieties and how to cope with them.

 

The course is strongly oriented towards an hands-on methodology. Students must follow lectures in front of a computer which must be used to reproduce and test what is explained by the teacher-

Writing a C program aimed at solving a given problem within a given time. Students are free to consult (paper and digital) texts and to use Internet search engines.

UNIX System Overview
UNIX Standardization and Implementations
File I/O
Files and Directories
System Data Files and Information
Process Environment
Process Control
Process Relationships
Signals
Threads
Thread Control
Daemon Processes
Advanced I/O
Interprocess Communication
Network IPC: Sockets
Terminal I/O
 

F. Tommasi "Alla Scoperta di UNIX - Esplorare GNU/Linux e macOS con la linea di comando", Marzo 2021, ISBN: 9791220082204

Stevens, Rago, Advanced Programming in the UNIX Environment, 3rd Edition, Addison-Wesley, 2013 ISBN 978-0321637734

Stevens, Fenner, Rudoff, Unix Network Programming, Volume 1: The Sockets Networking API (3rd Edition), Addison-Wesley, 2003 ISBN 978-0131411555

Kerrisk, The Linux Programming Interface, NO STARCH PRESS, 2010 ISBN 978-1593272203

Handouts delivered by the teacher through http://moodliis.unisalento.it/

PROGRAMMAZIONE DI SISTEMA E DI RETE (ING-INF/05)
SICUREZZA DEI SISTEMI

Corso di laurea INGEGNERIA INFORMATICA

Settore Scientifico Disciplinare ING-INF/05

Tipo corso di studio Laurea Magistrale

Crediti 6.0

Ripartizione oraria Ore totali di attività frontale: 54.0

Per immatricolati nel 2022/2023

Anno accademico di erogazione 2022/2023

Anno di corso 1

Semestre Secondo Semestre (dal 01/03/2023 al 09/06/2023)

Lingua ITALIANO

Percorso PERCORSO COMUNE (999)

Sede Lecce

Knowledge of the content of the course "System and Network Programming" by the same teacher

Introduction to Computer Security
Vulnerabilities of Set-UID programs
Attacks based on Environment Variables
Buffer Overflow attacks
Introduction to Cryptography
One-Way Hash Functions
Secret-Key Encryption
Public Key Cryptography
Public Key Infrastructure
Web security
Transport Layer Security
Bitcoin and Blockchain

 

The course aims at providing the students with the basics of Computer Security. The course is based on UNIX®, because of the popularity of such operating system among professionals.

The course is strongly oriented towards a hands-on mehodology.

Writing a program aimed at solving a given problem in a given time.

Introduction to Computer Security
Vulnerabilities of Set-UID programs
Attacks based on Environment Variables
Buffer Overflow attacks
Introduction to Cryptography
One-Way Hash Functions
Secret-Key Encryption
Public Key Cryptography
Public Key Infrastructure
Web security
Transport Layer Security
Bitcoin and Blockchain

 

Textbook:

Wenliang Du. Internet Security: A Hands-on Approach, May 2022, ISBN 978-1733003964

Wenliang Du. Computer Security: A Hands-on Approach, May 2022, ISBN 978-1733003957

Additional, useful references:

F. Tommasi "Alla Scoperta di UNIX - Esplorare GNU/Linux e macOS con la linea di comando", Marzo 2021, ISBN: 9791220082204

 

SICUREZZA DEI SISTEMI (ING-INF/05)
COMPUTER SCIENCE FOR CULTURAL HERITAGE

Degree course DIGITAL HUMANITIES

Subject area ING-INF/05

Course type Laurea Magistrale

Credits 6.0

Teaching hours Ore totali di attività frontale: 42.0

For matriculated on 2021/2022

Year taught 2021/2022

Course year 1

Semestre Primo Semestre (dal 20/09/2021 al 14/01/2022)

Language INGLESE

Subject matter COMUNE/GENERICO (999)

Familiarity with computers (at least at ECDL level)

- What is an operating system

 

- The UNIX operating system

 

- The shell and the Command Line Interface

 

- Useful UNIX commands and utilities

 

- Scripting languages and their use

 

- Text encoding – Unicode, UTF8 and related tools

 

- File formats: description and manipulation (text, image, audio, video)

 

- Network basics and main network tools

 

- Computer security – digital objects integrity and authenticity

 

The course aims at providing the students coming from the humanities with the basics of Computer Science. The course is based on UNIX®, because of the popularity of such operating system among professionals.

The course is strongly oriented towards a hands-on mehodology.

Writing a bash script aimed at solving a given problem in a given time.

- What is an operating system

 

- The UNIX operating system

 

- The shell and the Command Line Interface

 

- Useful UNIX commands and utilities

 

- Scripting languages and their use

 

- Text encoding – Unicode, UTF8 and related tools

 

- File formats: description and manipulation (text, image, audio, video)

 

- Network basics and main network tools

 

- Computer security – digital objects integrity and authenticity

Textbook:

All needed reference material is composed, organized and constantly updated by the teacher. The material is made available to students through the course moodle site.

 

Additional, useful references:

 

- Franco Tommasi, Alla scoperta di UNIX, 2021, ISBN 979-1220082204

- Peek, Todino, Strang, Learning the Unix Operating System, 5th ed. O'Reilly 2001, ISBN 978-0596002619:

- Newham, Learning the bash Shell, 3rd ed., O'Reilly 2005 ISBN 978-0596009656

- Cooper, Advanced Bash-Scripting Guide, http://tldp.org/LDP/abs/html/

- Silberschatz, Galvin, Gagne - Operating System Concepts - Wiley - 9th ed. (2013) - ISBN 978-1118063330

COMPUTER SCIENCE FOR CULTURAL HERITAGE (ING-INF/05)
SISTEMI OPERATIVI

Corso di laurea INGEGNERIA DELL'INFORMAZIONE

Settore Scientifico Disciplinare ING-INF/05

Tipo corso di studio Laurea

Crediti 6.0

Ripartizione oraria Ore totali di attività frontale: 54.0

Per immatricolati nel 2020/2021

Anno accademico di erogazione 2021/2022

Anno di corso 2

Semestre Secondo Semestre (dal 01/03/2022 al 10/06/2022)

Lingua ITALIANO

Percorso PERCORSO COMUNE (999)

Sede Lecce

Familiarità con l'utilizzo di un qualunque computer, nozioni di file, directory. Familiarità con i principali programmi di rete.

 

Introdurre ai concetti fondamentali alla base di un sistema operativo sia mediante la presentazione di nozioni teoriche che attraverso un approccio pratico al sistema operativo UNIX®. Gli studenti vengono introdotti all'esplorazione e alla conoscenza del sistema operativo attraverso l'uso dei più importanti comandi offerti dalla CLI (Command Line Interface – Interfaccia a linea di comando). L'esplorazione del sistema viene approfondita e resa più completa attraverso l'apprendimento delle tecniche di scripting, ovvero attraverso la scrittura di programmi di complessità crescente che consentono di esplorare gli aspetti più significativi del funzionamento del sistema.

 

Al termine del corso lo studente dovrebbe essere in grado di

* Comprendere le principali caratteristiche e funzionalità del sistema operativo UNIX®.

* Padroneggiare la linea di comando UNIX® attraverso lo shell bash

* Conoscere le utility più importanti messe a disposizione del sistema.

* Scrivere degli script in linguaggio bash che realizzino un'ampia gamma di funzionalità.

Il corso prevede che lo studente segua avendo la possibilità di provare immediatamente sul proprio computer quanto illustrato dal docente.

L'esame consiste di una prova svolta al computer (della durata variabile, a seconda della complessità, dai 90 ai 150 minuti) durante la quale si richiede di utilizzare in pratica mediante la realizzazione di uno script bash funzionante, i concetti e gli strumenti acquisiti durante il corso. Durante l'esame gli studenti sono liberi di consultare qualsiasi testo, cartaceo o digitale, e di fare ricerche su Internet.

 

Il File System UNIX (la sua organizzazione interna e la disposizione dei file tipica di ciascuna variante)
Il sistema dei privilegi in UNIX (significato dei privilegi per files e directory) SUID bit, SGID bit, Sticky bit
I tipi di file
Le named pipe
I processi (creazione, identificazione, distruzione, relazioni, monitoraggio, gestione)
Lo spazio di memoria di un processo
Memoria virtuale (uso dello spazio virtuale da parte di un processo e strumenti di monitoraggio)
Affinità, interoperabilità e compatibilità tra Linux, MacOS X e FreeBSD
MacOS X come client per l'accesso a un server Linux
L'editor TextWrangler
L'applicazione Terminale
Il montaggio di volumi di rete ospitati da un server Linux sulla scrivania di MacOS X
Librerie statiche e dinamiche (significato, costruzione, istallazione, utilizzo, collocazione nello spazio di memoria del processo)
Il comando grep e le espressioni regolari
I comandi per la diagnostica e l'utilizzo delle reti
La rappresentazione dei caratteri: Unicode e UTF-8
Introduzione ai Segnali
Le distribuzioni Linux

Comandi utente presentati nel corso:

apropos, arp, base64, basename, bc, cal, cat, chmod, cmp, cp, curl, cut, date, dd, dig, dirname, du, dumpe2fs, edit, env, file, find, grep, head, hexdump, iconv, id, ifconfig, ip, jot, less, ln, locale, ls, lsof, lynx, man, md5, mkdir, mkfifo, mv, nice, open, openssl, otool, ping, printf, ps, pstree, rev, rm, rmdir, rs, say, scp, screencapture, script, sed, seq, sort, split, ssh, stat, strings, stty, sysctl, tac, tail, tar, tee, test, textutil, top, touch, tr, traceroute, tty, uniq, vm_stat, vmmap, stat, wc, which, who, whois, xargs, xxd

Bash (con riferimento ai capitoli della pagina di manuale di bash)

Invocazione, Shell grammar, Quoting, Parameters, Expansions, Redirections, Job control, Funzioni, Aritmetica, Scripting, Cicli ed espressioni condizionali, Aritmetica, Environment,  Exit status, Prompting, History, Build-in commands, Gestione dei segnali.

Comandi built-in di Bash presentati nel corso:
#, #!, alias, bg, break, case, cd, echo, enable, eval, exec, exit, export, fg, for, getopts, history, if, jobs, kill, let, pwd, read, return, select, set, source (.), test, time, times, trap, type, umask, while.

Il libro di testo consigliato per il corso è:

F. Tommasi "Alla Scoperta di UNIX - Esplorare GNU/Linux e macOS con la linea di comando", Marzo 2021, ISBN: 9791220082204

Il docente mette inoltre a disposizione numerose dispense, note e link, scaricabili liberamente dagli iscritti dal sito https://moodliis.unisalento.it (richiede autenticazione con credenziali comunicate all'inizio del corso).

Testi introduttivi e di approfondimento:
[1] Learning the Unix Operating System, 5th ed. O'Reilly 2001, ISBN 978-0596002619. Di taglio decisamente introduttivo.
[2] Learning the bash Shell, 3rd ed., O'Reilly 2005 ISBN 978-0596009656. Una trattazione molto accurata dello shell bash. 
[3] Linux in a Nutshell, 6th Edition, 3rd ed., O'Reilly 2009 ISBN 978-0596154486. Un comodo e sintetico manuale di riferimento per Linux (in grandissima parte valido anche per MacOS).
[4] Linux Command Line and Shell Scripting Bible, 3rd ed., John Wiley & Sons 2015 ISBN 978-1118983843. Il testo che, tra quelli qui elencati, copre la maggior quantità di argomenti trattati nel corso.
[5] Advanced Bash-Scripting Guide, http://tldp.org/LDP/abs/html. Una guida gratuita estremamente approfondita allo shell bash.
[6] A.Silberschatz - Operating System Concepts - Wiley - 9th edition (2013) - ISBN 978-1118063330. Una classica presentazione di taglio strettamente teorico dei concetti che il corso si sforza di introdurre attraverso l'interazione pratica con un sistema reale.

SISTEMI OPERATIVI (ING-INF/05)
SYSTEM AND NETWORK PROGRAMMING

Degree course COMPUTER ENGINEERING

Subject area ING-INF/05

Course type Laurea Magistrale

Credits 9.0

Teaching hours Ore totali di attività frontale: 81.0

For matriculated on 2021/2022

Year taught 2021/2022

Course year 1

Semestre Primo Semestre (dal 20/09/2021 al 17/12/2021)

Language INGLESE

Subject matter PERCORSO COMUNE (999)

Location Lecce

All the concepts presented in the “Sistemi Operativi” course in the first level degree “Ingegneria dell'Informazione”. Namely, a good knowledge of: UNIX® basic concepts, the UNIX® bash shell,  bash scripting, main UNIX® commands

UNIX System Overview
UNIX Standardization and Implementations
File I/O
Files and Directories
System Data Files and Information
Process Environment
Process Control
Process Relationships
Signals
Threads
Thread Control
Daemon Processes
Advanced I/O
Interprocess Communication
Network IPC: Sockets
Terminal I/O
 

 

Overview
The course aims at starting the students off on programming system applications (e.g. a server) on a UNIX® System.

Learning Outcomes; after the course the student should
* Know the most important functionalities and facilities offered by a UNIX® system, the System Calls (and, more generally, the APIs) offered to access them.
* Be able to write efficient CLI (Command Line Interface) system and network applications in the C language.
* Know how to write interoperable applications by complying with the UNIX® standards (SUSv3, SUSv4).
* Know which are the main differences between the MacOS and the Linux varieties and how to cope with them.

 

The course is strongly oriented towards an hands-on methodology. Students must follow lectures in front of a computer which must be used to reproduce and test what is explained by the teacher-

Writing a C program aimed at solving a given problem within a given time. Students are free to consult (paper and digital) texts and to use Internet search engines.

UNIX System Overview
UNIX Standardization and Implementations
File I/O
Files and Directories
System Data Files and Information
Process Environment
Process Control
Process Relationships
Signals
Threads
Thread Control
Daemon Processes
Advanced I/O
Interprocess Communication
Network IPC: Sockets
Terminal I/O
 

F. Tommasi "Alla Scoperta di UNIX - Esplorare GNU/Linux e macOS con la linea di comando", Marzo 2021, ISBN: 9791220082204

Stevens, Rago, Advanced Programming in the UNIX Environment, 3rd Edition, Addison-Wesley, 2013 ISBN 978-0321637734

Stevens, Fenner, Rudoff, Unix Network Programming, Volume 1: The Sockets Networking API (3rd Edition), Addison-Wesley, 2003 ISBN 978-0131411555

Kerrisk, The Linux Programming Interface, NO STARCH PRESS, 2010 ISBN 978-1593272203

Handouts delivered by the teacher through http://moodliis.unisalento.it/

SYSTEM AND NETWORK PROGRAMMING (ING-INF/05)
SYSTEM SECURITY C.I.

Corso di laurea COMPUTER ENGINEERING

Settore Scientifico Disciplinare ING-INF/05

Tipo corso di studio Laurea Magistrale

Crediti 5.0

Ripartizione oraria Ore totali di attività frontale: 45.0

Per immatricolati nel 2021/2022

Anno accademico di erogazione 2021/2022

Anno di corso 1

Semestre Secondo Semestre (dal 01/03/2022 al 10/06/2022)

Lingua

Percorso PERCORSO COMUNE (999)

Knowledge of the content of the course "System and Network Programming" of the same teacher

Introduction to Computer Security
Vulnerabilities of Set-UID programs
Attacks based on Environment Variables
Buffer Overflow attacks
Introduction to Cryptography
One-Way Hash Functions
Secret-Key Encryption
Public Key Cryptography
Public Key Infrastructure
Web security
Transport Layer Security
Bitcoin and Blockchain

 

The course aims at providing the students with the basics of Computer Security. The course is based on UNIX®, because of the popularity of such operating system among professionals.

The course is strongly oriented towards a hands-on mehodology.

Writing a program aimed at solving a given problem in a given time.

Introduction to Computer Security
Vulnerabilities of Set-UID programs
Attacks based on Environment Variables
Buffer Overflow attacks
Introduction to Cryptography
One-Way Hash Functions
Secret-Key Encryption
Public Key Cryptography
Public Key Infrastructure
Web security
Transport Layer Security
Bitcoin and Blockchain

 

Textbook:

Wenliang Du. Computer & Internet Security: A Hands-on Approach, Second Edition, May 2019, ISBN 978-1733003933

Additional, useful references:

F. Tommasi "Alla Scoperta di UNIX - Esplorare GNU/Linux e macOS con la linea di comando", Marzo 2021, ISBN: 9791220082204

 

SYSTEM SECURITY C.I. (ING-INF/05)
COMPUTER SCIENCE FOR CULTURAL HERITAGE

Degree course DIGITAL HUMANITIES

Subject area ING-INF/05

Course type Laurea Magistrale

Credits 6.0

Teaching hours Ore totali di attività frontale: 42.0

For matriculated on 2020/2021

Year taught 2020/2021

Course year 1

Semestre Primo Semestre (dal 21/09/2020 al 15/01/2021)

Language INGLESE

Subject matter COMUNE/GENERICO (999)

Familiarity with computers (at least at ECDL level)

- What is an operating system

 

- The UNIX operating system

 

- The shell and the Command Line Interface

 

- Useful UNIX commands and utilities

 

- Scripting languages and their use

 

- Text encoding – Unicode, UTF8 and related tools

 

- File formats: description and manipulation (text, image, audio, video)

 

- Network basics and main network tools

 

- Computer security – digital objects integrity and authenticity

 

The course aims at providing the students coming from the humanities with the basics of Computer Science. The course is based on UNIX®, because of the popularity of such operating system among professionals.

The course is strongly oriented towards a hands-on mehodology.

Writing a bash script aimed at solving a given problem in a given time.

- What is an operating system

 

- The UNIX operating system

 

- The shell and the Command Line Interface

 

- Useful UNIX commands and utilities

 

- Scripting languages and their use

 

- Text encoding – Unicode, UTF8 and related tools

 

- File formats: description and manipulation (text, image, audio, video)

 

- Network basics and main network tools

 

- Computer security – digital objects integrity and authenticity

Textbook:

All needed reference material is composed, organized and constantly updated by the teacher. The material is made available to students through the course moodle site.

 

Additional, useful references:

 

- Peek, Todino, Strang, Learning the Unix Operating System, 5th ed. O'Reilly 2001, ISBN 978-0596002619:

- Newham, Learning the bash Shell, 3rd ed., O'Reilly 2005 ISBN 978-0596009656

- Cooper, Advanced Bash-Scripting Guide, http://tldp.org/LDP/abs/html/

- Silberschatz, Galvin, Gagne - Operating System Concepts - Wiley - 9th ed. (2013) - ISBN 978-1118063330

COMPUTER SCIENCE FOR CULTURAL HERITAGE (ING-INF/05)
SISTEMI OPERATIVI

Corso di laurea INGEGNERIA DELL'INFORMAZIONE

Settore Scientifico Disciplinare ING-INF/05

Tipo corso di studio Laurea

Crediti 6.0

Ripartizione oraria Ore totali di attività frontale: 54.0

Per immatricolati nel 2019/2020

Anno accademico di erogazione 2020/2021

Anno di corso 2

Semestre Secondo Semestre (dal 01/03/2021 al 11/06/2021)

Lingua ITALIANO

Percorso PERCORSO COMUNE (999)

Sede Lecce

Familiarità con l'utilizzo di un qualunque computer, nozioni di file, directory. Familiarità con i principali programmi di rete.

 

Introdurre ai concetti fondamentali alla base di un sistema operativo sia mediante la presentazione di nozioni teoriche che attraverso un approccio pratico al sistema operativo UNIX®. Gli studenti vengono introdotti all'esplorazione e alla conoscenza del sistema operativo attraverso l'uso dei più importanti comandi offerti dalla CLI (Command Line Interface – Interfaccia a linea di comando). L'esplorazione del sistema viene approfondita e resa più completa attraverso l'apprendimento delle tecniche di scripting, ovvero attraverso la scrittura di programmi di complessità crescente che consentono di esplorare gli aspetti più significativi del funzionamento del sistema.

 

Al termine del corso lo studente dovrebbe essere in grado di

* Comprendere le principali caratteristiche e funzionalità del sistema operativo UNIX®.

* Padroneggiare la linea di comando UNIX® attraverso lo shell bash

* Conoscere le utility più importanti messe a disposizione del sistema.

* Scrivere degli script in linguaggio bash che realizzino un'ampia gamma di funzionalità.

Il corso prevede che lo studente segua avendo la possibilità di provare immediatamente sul proprio computer quanto illustrato dal docente.

L'esame consiste di una prova svolta al computer (della durata variabile, a seconda della complessità, dai 90 ai 150 minuti) durante la quale si richiede di utilizzare in pratica mediante la realizzazione di uno script bash funzionante, i concetti e gli strumenti acquisiti durante il corso. Durante l'esame gli studenti sono liberi di consultare qualsiasi testo, cartaceo o digitale, e di fare ricerche su Internet.

 

Il File System UNIX (la sua organizzazione interna e la disposizione dei file tipica di ciascuna variante)
Il sistema dei privilegi in UNIX (significato dei privilegi per files e directory) SUID bit, SGID bit, Sticky bit
I tipi di file
Le named pipe
I processi (creazione, identificazione, distruzione, relazioni, monitoraggio, gestione)
Lo spazio di memoria di un processo
Memoria virtuale (uso dello spazio virtuale da parte di un processo e strumenti di monitoraggio)
Affinità, interoperabilità e compatibilità tra Linux, MacOS X e FreeBSD
MacOS X come client per l'accesso a un server Linux
L'editor TextWrangler
L'applicazione Terminale
Il montaggio di volumi di rete ospitati da un server Linux sulla scrivania di MacOS X
Librerie statiche e dinamiche (significato, costruzione, istallazione, utilizzo, collocazione nello spazio di memoria del processo)
Il comando grep e le espressioni regolari
I principali comandi per la crittografia a segreto condiviso e a chiave pubblica, la firma digitale
I comandi per la diagnostica e l'utilizzo delle reti
La rappresentazione dei caratteri: Unicode e UTF-8
Introduzione ai Segnali
Le distribuzioni Linux

Comandi utente presentati nel corso:

apropos, arp, base64, basename, bc, cal, cat, chmod, cmp, cp, curl, cut, date, dd, dig, dirname, du, dumpe2fs, edit, env, file, find, grep, head, hexdump, iconv, id, ifconfig, ip, jot, less, ln, locale, ls, lsof, lynx, man, md5, mkdir, mkfifo, mv, nice, open, openssl, otool, ping, printf, ps, pstree, rev, rm, rmdir, rs, say, scp, screencapture, script, sed, seq, sort, split, ssh, stat, strings, stty, sysctl, tac, tail, tar, tee, test, textutil, top, touch, tr, traceroute, tty, uniq, vm_stat, vmmap, stat, wc, which, who, whois, xargs, xxd

Bash (con riferimento ai capitoli della pagina di manuale di bash)

Invocazione, Shell grammar, Quoting, Parameters, Expansions, Redirections, Job control, Funzioni, Aritmetica, Scripting, Cicli ed espressioni condizionali, Aritmetica, Environment,  Exit status, Prompting, History, Build-in commands, Gestione dei segnali.

Comandi built-in di Bash presentati nel corso:
#, #!, alias, bg, break, case, cd, echo, enable, eval, exec, exit, export, fg, for, getopts, history, if, jobs, kill, let, pwd, read, return, select, set, source (.), test, time, times, trap, type, umask, while.

Il libro di testo consigliato per il corso è:

F. Tommasi "Alla Scoperta di UNIX - Esplorare GNU/Linux e macOS con la linea di comando", Marzo 2021, ISBN: 9791220082204

Il docente mette inoltre a disposizione numerose dispense, note e link, scaricabili liberamente dagli iscritti dal sito https://moodliis.unisalento.it (richiede autenticazione con credenziali comunicate all'inizio del corso).

Testi introduttivi e di approfondimento:
[1] Learning the Unix Operating System, 5th ed. O'Reilly 2001, ISBN 978-0596002619. Di taglio decisamente introduttivo.
[2] Learning the bash Shell, 3rd ed., O'Reilly 2005 ISBN 978-0596009656. Una trattazione molto accurata dello shell bash. 
[3] Linux in a Nutshell, 6th Edition, 3rd ed., O'Reilly 2009 ISBN 978-0596154486. Un comodo e sintetico manuale di riferimento per Linux (in grandissima parte valido anche per MacOS).
[4] Linux Command Line and Shell Scripting Bible, 3rd ed., John Wiley & Sons 2015 ISBN 978-1118983843. Il testo che, tra quelli qui elencati, copre la maggior quantità di argomenti trattati nel corso.
[5] Advanced Bash-Scripting Guide, http://tldp.org/LDP/abs/html. Una guida gratuita estremamente approfondita allo shell bash.
[6] A.Silberschatz - Operating System Concepts - Wiley - 9th edition (2013) - ISBN 978-1118063330. Una classica presentazione di taglio strettamente teorico dei concetti che il corso si sforza di introdurre attraverso l'interazione pratica con un sistema reale.

SISTEMI OPERATIVI (ING-INF/05)
SYSTEM AND NETWORK PROGRAMMING

Degree course COMPUTER ENGINEERING

Subject area ING-INF/05

Course type Laurea Magistrale

Credits 12.0

Teaching hours Ore totali di attività frontale: 108.0

For matriculated on 2020/2021

Year taught 2020/2021

Course year 1

Semestre Primo Semestre (dal 22/09/2020 al 18/12/2020)

Language INGLESE

Subject matter PERCORSO COMUNE (999)

Location Lecce

All the concepts presented in the “Sistemi Operativi” course in the first level degree “Ingegneria dell'Informazione”. Namely, a good knowledge of: UNIX® basic concepts, the UNIX® bash shell,  bash scripting, main UNIX® commands

UNIX System Overview
UNIX Standardization and Implementations
File I/O
Files and Directories
System Data Files and Information
Process Environment
Process Control
Process Relationships
Signals
Threads
Thread Control
Daemon Processes
Advanced I/O
Interprocess Communication
Network IPC: Sockets
Terminal I/O
Cybersecurity
(Disassembling an executable
Following the execution of a process at machine code level
Buffer overflows
Shellcode)

 

Overview
The course aims at starting the students off on programming system applications (e.g. a server) on a UNIX® System.

Learning Outcomes; after the course the student should
* Know the most important functionalities and facilities offered by a UNIX® system, the System Calls (and, more generally, the APIs) offered to access them.
* Be able to write efficient CLI (Command Line Interface) system and network applications in the C language.
* Know how to write interoperable applications by complying with the UNIX® standards (SUSv3, SUSv4).
* Know which are the main differences between the MacOS and the Linux varieties and how to cope with them.

 

The course is strongly oriented towards an hands-on methodology. Students must follow lectures in front of a computer which must be used to reproduce and test what is explained by the teacher-

Writing a C program aimed at solving a given problem within a given time. Students are free to consult (paper and digital) texts and to use Internet search engines.

UNIX System Overview
UNIX Standardization and Implementations
File I/O
Files and Directories
System Data Files and Information
Process Environment
Process Control
Process Relationships
Signals
Threads
Thread Control
Daemon Processes
Advanced I/O
Interprocess Communication
Network IPC: Sockets
Terminal I/O
Cybersecurity
(Disassembling an executable
Following the execution of a process at machine code level
Buffer overflows
Shellcode)

Stevens, Rago, Advanced Programming in the UNIX Environment, 3rd Edition, Addison-Wesley, 2013 ISBN 978-0321637734

Stevens, Fenner, Rudoff, Unix Network Programming, Volume 1: The Sockets Networking API (3rd Edition), Addison-Wesley, 2003 ISBN 978-0131411555

Kerrisk, The Linux Programming Interface, NO STARCH PRESS, 2010 ISBN 978-1593272203

Handouts delivered by the teacher through http://moodliis.unisalento.it/

SYSTEM AND NETWORK PROGRAMMING (ING-INF/05)
COMPUTER SCIENCE FOR CULTURAL HERITAGE

Degree course EUROPEAN HERITAGE, DIGITAL MEDIA AND THE INFORMATION SOCIETY

Subject area ING-INF/05

Course type Laurea Magistrale

Credits 6.0

Teaching hours Ore totali di attività frontale: 42.0

For matriculated on 2019/2020

Year taught 2019/2020

Course year 1

Semestre Primo Semestre (dal 23/09/2019 al 17/01/2020)

Language INGLESE

Subject matter INTERNAZIONALE (A56)

Familiarity with computers (at least at ECDL level)

- What is an operating system

 

- The UNIX operating system

 

- The shell and the Command Line Interface

 

- Useful UNIX commands and utilities

 

- Scripting languages and their use

 

- Text encoding – Unicode, UTF8 and related tools

 

- File formats: description and manipulation (text, image, audio, video)

 

- Network basics and main network tools

 

- Computer security – digital objects integrity and authenticity

 

The course aims at providing the students coming from the humanities with the basics of Computer Science. The course is based on UNIX®, because of the popularity of such operating system among professionals.

The course is strongly oriented towards a hands-on mehodology.

Writing a bash script aimed at solving a given problem in a given time.

- What is an operating system

 

- The UNIX operating system

 

- The shell and the Command Line Interface

 

- Useful UNIX commands and utilities

 

- Scripting languages and their use

 

- Text encoding – Unicode, UTF8 and related tools

 

- File formats: description and manipulation (text, image, audio, video)

 

- Network basics and main network tools

 

- Computer security – digital objects integrity and authenticity

Textbook:

All needed reference material is composed, organized and constantly updated by the teacher. The material is made available to students through the course moodle site.

 

Additional, useful references:

 

- Peek, Todino, Strang, Learning the Unix Operating System, 5th ed. O'Reilly 2001, ISBN 978-0596002619:

- Newham, Learning the bash Shell, 3rd ed., O'Reilly 2005 ISBN 978-0596009656

- Cooper, Advanced Bash-Scripting Guide, http://tldp.org/LDP/abs/html/

- Silberschatz, Galvin, Gagne - Operating System Concepts - Wiley - 9th ed. (2013) - ISBN 978-1118063330

COMPUTER SCIENCE FOR CULTURAL HERITAGE (ING-INF/05)
SISTEMI OPERATIVI

Corso di laurea INGEGNERIA DELL'INFORMAZIONE

Settore Scientifico Disciplinare ING-INF/05

Tipo corso di studio Laurea

Crediti 7.0

Ripartizione oraria Ore totali di attività frontale: 63.0

Per immatricolati nel 2018/2019

Anno accademico di erogazione 2019/2020

Anno di corso 2

Semestre Secondo Semestre (dal 02/03/2020 al 05/06/2020)

Lingua ITALIANO

Percorso PERCORSO COMUNE (999)

Sede Lecce

Familiarità con l'utilizzo di un qualunque computer, nozioni di file, directory. Familiarità con i principali programmi di rete.

 

Introdurre ai concetti fondamentali alla base di un sistema operativo sia mediante la presentazione di nozioni teoriche che attraverso un approccio pratico al sistema operativo UNIX®. Gli studenti vengono introdotti all'esplorazione e alla conoscenza del sistema operativo attraverso l'uso dei più importanti comandi offerti dalla CLI (Command Line Interface – Interfaccia a linea di comando). L'esplorazione del sistema viene approfondita e resa più completa attraverso l'apprendimento delle tecniche di scripting, ovvero attraverso la scrittura di programmi di complessità crescente che consentono di esplorare gli aspetti più significativi del funzionamento del sistema.

 

Al termine del corso lo studente dovrebbe essere in grado di

* Comprendere le principali caratteristiche e funzionalità del sistema operativo UNIX®.

* Padroneggiare la linea di comando UNIX® attraverso lo shell bash

* Conoscere le utility più importanti messe a disposizione del sistema.

* Scrivere degli script in linguaggio bash che realizzino un'ampia gamma di funzionalità.

Il corso prevede che lo studente segua avendo la possibilità di provare immediatamente sul proprio computer quanto illustrato dal docente.

L'esame consiste di una prova svolta al computer (della durata variabile, a seconda della complessità, dai 90 ai 150 minuti) durante la quale si richiede di utilizzare in pratica mediante la realizzazione di uno script bash funzionante, i concetti e gli strumenti acquisiti durante il corso. Durante l'esame gli studenti sono liberi di consultare qualsiasi testo, cartaceo o digitale, e di fare ricerche su Internet.

 

Il File System UNIX (la sua organizzazione interna e la disposizione dei file tipica di ciascuna variante)
Il sistema dei privilegi in UNIX (significato dei privilegi per files e directory) SUID bit, SGID bit, Sticky bit
I tipi di file
Le named pipe
I processi (creazione, identificazione, distruzione, relazioni, monitoraggio, gestione)
Lo spazio di memoria di un processo
Memoria virtuale (uso dello spazio virtuale da parte di un processo e strumenti di monitoraggio)
Affinità, interoperabilità e compatibilità tra Linux, MacOS X e FreeBSD
MacOS X come client per l'accesso a un server Linux
L'editor TextWrangler
L'applicazione Terminale
Il montaggio di volumi di rete ospitati da un server Linux sulla scrivania di MacOS X
Librerie statiche e dinamiche (significato, costruzione, istallazione, utilizzo, collocazione nello spazio di memoria del processo)
Il comando grep e le espressioni regolari
I principali comandi per la crittografia a segreto condiviso e a chiave pubblica, la firma digitale
I comandi per la diagnostica e l'utilizzo delle reti
La rappresentazione dei caratteri: Unicode e UTF-8
Introduzione ai Segnali
Le distribuzioni Linux

Comandi utente presentati nel corso:

apropos, arp, base64, basename, bc, cal, cat, chmod, cmp, cp, curl, cut, date, dd, dig, dirname, du, dumpe2fs, edit, env, file, find, grep, head, hexdump, iconv, id, ifconfig, ip, jot, less, ln, locale, ls, lsof, lynx, man, md5, mkdir, mkfifo, mv, nice, open, openssl, otool, ping, printf, ps, pstree, rev, rm, rmdir, rs, say, scp, screencapture, script, sed, seq, sort, split, ssh, stat, strings, stty, sysctl, tac, tail, tar, tee, test, textutil, top, touch, tr, traceroute, tty, uniq, vm_stat, vmmap, stat, wc, which, who, whois, xargs, xxd

Bash (con riferimento ai capitoli della pagina di manuale di bash)

Invocazione, Shell grammar, Quoting, Parameters, Expansions, Redirections, Job control, Funzioni, Aritmetica, Scripting, Cicli ed espressioni condizionali, Aritmetica, Environment,  Exit status, Prompting, History, Build-in commands, Gestione dei segnali.

Comandi built-in di Bash presentati nel corso:
#, #!, alias, bg, break, case, cd, echo, enable, eval, exec, exit, export, fg, for, getopts, history, if, jobs, kill, let, pwd, read, return, select, set, source (.), test, time, times, trap, type, umask, while.

Il docente mette a disposizione numerose dispense, note e link, scaricabili liberamente dagli iscritti dal sito https://moodliis.unisalento.it (richiede autenticazione con credenziali comunicate all'inizio del corso).

Testi integrativi:
[1] Learning the Unix Operating System, 5th ed. O'Reilly 2001, ISBN 978-0596002619. Di taglio decisamente introduttivo.
[2] Learning the bash Shell, 3rd ed., O'Reilly 2005 ISBN 978-0596009656. Una trattazione molto accurata dello shell bash. 
[3] Linux in a Nutshell, 6th Edition, 3rd ed., O'Reilly 2009 ISBN 978-0596154486. Un comodo e sintetico manuale di riferimento per Linux (in grandissima parte valido anche per MacOS).
[4] Linux Command Line and Shell Scripting Bible, 3rd ed., John Wiley & Sons 2015 ISBN 978-1118983843. Il testo che, tra quelli qui elencati, copre la maggior quantità di argomenti trattati nel corso.
[5] Advanced Bash-Scripting Guide, http://tldp.org/LDP/abs/html. Una guida gratuita estremamente approfondita allo shell bash.
[6] A.Silberschatz - Operating System Concepts - Wiley - 9th edition (2013) - ISBN 978-1118063330. Una classica presentazione di taglio strettamente teorico dei concetti che il corso si sforza di introdurre attraverso l'interazione pratica con un sistema reale.

SISTEMI OPERATIVI (ING-INF/05)
SYSTEM AND NETWORK PROGRAMMING

Degree course COMPUTER ENGINEERING

Subject area ING-INF/05

Course type Laurea Magistrale

Credits 12.0

Teaching hours Ore totali di attività frontale: 108.0

For matriculated on 2019/2020

Year taught 2019/2020

Course year 1

Semestre Primo Semestre (dal 23/09/2019 al 20/12/2019)

Language INGLESE

Subject matter PERCORSO COMUNE (999)

Location Lecce

All the concepts presented in the “Sistemi Operativi” course in the first level degree “Ingegneria dell'Informazione”. Namely, a good knowledge of: UNIX® basic concepts, the UNIX® bash shell,  bash scripting, main UNIX® commands

UNIX System Overview
UNIX Standardization and Implementations
File I/O
Files and Directories
System Data Files and Information
Process Environment
Process Control
Process Relationships
Signals
Threads
Thread Control
Daemon Processes
Advanced I/O
Interprocess Communication
Network IPC: Sockets
Terminal I/O
Cybersecurity
(Disassembling an executable
Following the execution of a process at machine code level
Buffer overflows
Shellcode)

 

Overview
The course aims at starting the students off on programming system applications (e.g. a server) on a UNIX® System.

Learning Outcomes; after the course the student should
* Know the most important functionalities and facilities offered by a UNIX® system, the System Calls (and, more generally, the APIs) offered to access them.
* Be able to write efficient CLI (Command Line Interface) system and network applications in the C language.
* Know how to write interoperable applications by complying with the UNIX® standards (SUSv3, SUSv4).
* Know which are the main differences between the MacOS and the Linux varieties and how to cope with them.

 

The course is strongly oriented towards an hands-on methodology. Students must follow lectures in front of a computer which must be used to reproduce and test what is explained by the teacher-

Writing a C program aimed at solving a given problem within a given time. Students are free to consult (paper and digital) texts and to use Internet search engines.

UNIX System Overview
UNIX Standardization and Implementations
File I/O
Files and Directories
System Data Files and Information
Process Environment
Process Control
Process Relationships
Signals
Threads
Thread Control
Daemon Processes
Advanced I/O
Interprocess Communication
Network IPC: Sockets
Terminal I/O
Cybersecurity
(Disassembling an executable
Following the execution of a process at machine code level
Buffer overflows
Shellcode)

Stevens, Rago, Advanced Programming in the UNIX Environment, 3rd Edition, Addison-Wesley, 2013 ISBN 978-0321637734

Stevens, Fenner, Rudoff, Unix Network Programming, Volume 1: The Sockets Networking API (3rd Edition), Addison-Wesley, 2003 ISBN 978-0131411555

Kerrisk, The Linux Programming Interface, NO STARCH PRESS, 2010 ISBN 978-1593272203

Handouts delivered by the teacher through http://moodliis.unisalento.it/

SYSTEM AND NETWORK PROGRAMMING (ING-INF/05)
COMPUTER SCIENCE FOR CULTURAL HERITAGE

Degree course EUROPEAN HERITAGE, DIGITAL MEDIA AND THE INFORMATION SOCIETY

Subject area ING-INF/05

Course type Laurea Magistrale

Credits 6.0

Teaching hours Ore totali di attività frontale: 42.0

For matriculated on 2018/2019

Year taught 2018/2019

Course year 1

Semestre Primo Semestre (dal 24/09/2018 al 25/01/2019)

Language INGLESE

Subject matter INTERNAZIONALE (A56)

A.Y. 2018/2019 – Teacher: prof. Francesco Tommasi

Semester: first

Credits: 6

 

1) Course presentation and aim

 

The course aims at providing the students coming from the humanities with the basics of Computer Science. The course is based on the UNIX operating system, because of its popularity among professionals.

The following topics will be taught:

- What is an operating system

- The UNIX operating system

- The shell and the Command Line Interface

- Useful UNIX commands and utilities

- Scripting languages and their use

- Text encoding – Unicode, UTF8 and related tools

- File formats: description and manipulation (text, image, audio, video)

- Network basics and main network tools

- Computer security – digital objects integrity and authenticity

 

 

Reference material:

 

All needed reference material is composed, organized and constantly updated by the teacher. It will be posted in the course moodle site.

 

As a secondary reference, the following texts may be consulted:

 

- Peek, Todino, Strang, Learning the Unix Operating System, 5th ed. O'Reilly 2001, ISBN 978-0596002619:

- Newham, Learning the bash Shell, 3rd ed., O'Reilly 2005 ISBN 978-0596009656

- Cooper, Advanced Bash-Scripting Guide, http://tldp.org/LDP/abs/html/

- Silberschatz, Galvin, Gagne - Operating System Concepts - Wiley - 9th ed. (2013) - ISBN 978-1118063330

 

2) Acquired skills

 

The student will be able to exploit the power of the command line interface to deal with basic computer problems. Such skills will prove useful in other courses (ex. database, web technologies) when he will be requested to install, run and manage relevant software for those fields.

 

3) Prerequisites

 

Familiarity with computers (at least at ECDL level)

 

4) Didactic method

 

While lectures are delivered, the students sit in front of a computer and are requested to reproduce every step as shown by the teacher.

 

5) Students evaluation

Students will be presented with a practical task and asked to solve it by the computer within a given time.

 

6) Meet the teacher

the teacher is always available. Just write to francesco.tommasi@unisalento.it for an appointment.

COMPUTER SCIENCE FOR CULTURAL HERITAGE (ING-INF/05)
SISTEMI OPERATIVI

Corso di laurea INGEGNERIA DELL'INFORMAZIONE

Settore Scientifico Disciplinare ING-INF/05

Tipo corso di studio Laurea

Crediti 7.0

Ripartizione oraria Ore totali di attività frontale: 63.0

Per immatricolati nel 2017/2018

Anno accademico di erogazione 2018/2019

Anno di corso 2

Semestre Secondo Semestre (dal 04/03/2019 al 04/06/2019)

Lingua ITALIANO

Percorso PERCORSO COMUNE (999)

Sede Lecce

Sistemi Operativi (A.A. 2018-2019)

Cdl Triennale in Ingegneria dell'Informazione

CFU: 7

Inizio lezioni: II semestre, (about) march 1st, 2019

Obiettivo del corso: Introdurre ai concetti fondamentali alla base di un sistema operativo sia mediante la presentazione di nozioni teoriche che attraverso un approccio pratico al sistema operativo UNIX.

Bibliografia di riferimento:

Learning the Unix Operating System, 5th ed. O'Reilly 2001, ISBN 978-0596002619 o equivalente:

Learning the bash Shell, 3rd ed., O'Reilly 2005 ISBN 978-0596009656

Advanced Bash-Scripting Guide, http://tldp.org/LDP/abs/html/

A.Silberschatz - Operating System Concepts - Wiley - 9th edition (2013) - ISBN 978-1118063330

Modalità didattiche: durante tutto lo svolgimento del corso gli studenti hanno la possibilità di seguire le lezioni stando seduti a coppie di fronte ad un computer e sono invitati a sperimentare personalmente sullo stesso quanto viene illustrato.

Modalità di accertamento: l'esame consiste di una prova svolta al computer (della durata variabile, a seconda della complessità, dai 90 ai 150 minuti) durante la quale si richiede di utilizzare in pratica i concetti e gli strumenti acquisiti durante il corso. Durante l'esame gli studenti sono liberi di consultare qualsiasi testo, cartaceo o digitale, e di fare ricerche su Internet ma devono astenersi, pena la sospensione immediata della loro prova, dall'interagire con altri via chat, email, forum ecc.

Orario di ricevimento: lunedì dalle 15 alle 17 presso lo studio del docente, Palazzo di Ingegneria, Campus universitario alla via Monteroni. Inoltre il docente è disponibile a ricevere in qualsiasi momento previo accordo via mail a francesco.tommasi@unisalento.it.

Calendario esami: vedere il sito studenti.unisalento.it

Gli argomenti del corso sono ampiamente (e gratuitamente) documentati su Internet. Il docente distribuisce agli studenti delle proprie dispense.

Essi comunque possono essere reperiti sui seguenti testi:

Learning the Unix Operating System, 5th ed. O'Reilly 2001, ISBN 978-0596002619 o equivalente:

Learning the bash Shell, 3rd ed., O'Reilly 2005 ISBN 978-0596009656

Advanced Bash-Scripting Guide, http://tldp.org/LDP/abs/html/

A.Silberschatz - Operating System Concepts - Wiley - 9th edition (2013) - ISBN 978-1118063330

SISTEMI OPERATIVI (ING-INF/05)
SYSTEM AND NETWORK PROGRAMMING

Degree course COMPUTER ENGINEERING

Subject area ING-INF/05

Course type Laurea Magistrale

Credits 9.0

Teaching hours Ore totali di attività frontale: 81.0

For matriculated on 2018/2019

Year taught 2018/2019

Course year 1

Semestre Primo Semestre (dal 24/09/2018 al 21/12/2018)

Language INGLESE

Subject matter PERCORSO COMUNE (999)

Location Lecce

System and Network Programming (A.Y. 2018-2019)

Computer Engineering 2nd level Master Degree

Credits: 9

Course start: First semester (TBD, last days of september 2018)

Course aims: The course aims at introducing the students to system programming for a real operating system. The selected system is UNIX (in its MacOS and Linux variety). The course presents (with examples) most System APIs (the "System Calls").

 

References:

Stevens, Rago - Advanced Programming in the UNIX Environment, 3rd Edition 2013, ISBN 978-0321637734

Stevens, Fenner, Rudoff -  Unix Network Programming, Volume 1: The Sockets Networking API (3rd Edition), ISBN 978-0131411555

Kerrisk - The Linux Programming Interface - ISBN 978-1593272203

Didactic method: While lectures are delivered, the students sit in front of a computer and are requested to reproduce every step as shown by the teacher.

 

Students evaluation: The students must be able to write an actual C program to solve a proposed problem, with the classroom computer. Time allowed is two-three hours. They are free to google and to consult any kind of documentation they wish to bring with themselves.

Meet the teacher: the teacher is always available. Just write to francesco.tommasi@unisalento.it for an appointment.

Exam dates: see https://easytest.unisalento.it/Calendario/FAC_Ingegneria/index.html 

SYSTEM AND NETWORK PROGRAMMING (ING-INF/05)
COMPUTER SCIENCE FOR CULTURAL HERITAGE

Degree course EUROPEAN HERITAGE,DIGITAL MEDIA AND THE INFORMATION SOCIETY

Subject area ING-INF/05

Course type Laurea Magistrale

Credits 6.0

Teaching hours Ore totali di attività frontale: 0.0

For matriculated on 2017/2018

Year taught 2017/2018

Course year 1

Semestre Primo Semestre (dal 25/09/2017 al 19/01/2018)

Language INGLESE

Subject matter INTERNAZIONALE (A56)

COMPUTER SCIENCE FOR CULTURAL HERITAGE (ING-INF/05)
SISTEMI OPERATIVI

Corso di laurea INGEGNERIA DELL'INFORMAZIONE

Settore Scientifico Disciplinare ING-INF/05

Tipo corso di studio Laurea

Crediti 7.0

Ripartizione oraria Ore totali di attività frontale: 63.0

Per immatricolati nel 2016/2017

Anno accademico di erogazione 2017/2018

Anno di corso 2

Semestre Secondo Semestre (dal 01/03/2018 al 01/06/2018)

Lingua ITALIANO

Percorso PERCORSO COMUNE (999)

Sede Lecce

SISTEMI OPERATIVI (ING-INF/05)
SYSTEM AND NETWORK PROGRAMMING

Degree course COMPUTER ENGINEERING

Subject area ING-INF/05

Course type Laurea Magistrale

Credits 9.0

Teaching hours Ore totali di attività frontale: 0.0

For matriculated on 2017/2018

Year taught 2017/2018

Course year 1

Semestre Primo Semestre (dal 25/09/2017 al 22/12/2017)

Language INGLESE

Subject matter PERCORSO COMUNE (999)

Location Lecce

SYSTEM AND NETWORK PROGRAMMING (ING-INF/05)
COMPUTER SCIENCE FOR CULTURAL HERITAGE

Degree course EUROPEAN HERITAGE,DIGITAL MEDIA AND THE INFORMATION SOCIETY

Subject area ING-INF/05

Course type Laurea Magistrale

Credits 6.0

Teaching hours Ore totali di attività frontale: 42.0

For matriculated on 2016/2017

Year taught 2016/2017

Course year 1

Semestre Primo Semestre (dal 26/09/2016 al 20/01/2017)

Language INGLESE

Subject matter INTERNAZIONALE (A56)

COMPUTER SCIENCE FOR CULTURAL HERITAGE (ING-INF/05)
SISTEMI OPERATIVI

Corso di laurea INGEGNERIA DELL'INFORMAZIONE

Settore Scientifico Disciplinare ING-INF/05

Tipo corso di studio Laurea

Crediti 7.0

Ripartizione oraria Ore totali di attività frontale: 63.0

Per immatricolati nel 2015/2016

Anno accademico di erogazione 2016/2017

Anno di corso 2

Semestre Secondo Semestre (dal 01/03/2017 al 02/06/2017)

Lingua ITALIANO

Percorso PERCORSO COMUNE (999)

Sede Lecce

SISTEMI OPERATIVI (ING-INF/05)
SYSTEM AND NETWORK PROGRAMMING

Degree course COMPUTER ENGINEERING

Subject area ING-INF/05

Course type Laurea Magistrale

Credits 9.0

Teaching hours Ore totali di attività frontale: 81.0

For matriculated on 2016/2017

Year taught 2016/2017

Course year 1

Semestre Primo Semestre (dal 26/09/2016 al 22/12/2016)

Language INGLESE

Subject matter PERCORSO COMUNE (999)

Location Lecce

SYSTEM AND NETWORK PROGRAMMING (ING-INF/05)
COMMON SEMINAR (e-learning) (Laboratory)

Degree course EUROPEAN HERITAGE,DIGITAL MEDIA AND THE INFORMATION SOCIETY

Subject area NN

Course type Laurea Magistrale

Credits 6.0

Owner professor Grazia SEMERARO

Teaching hours Ore totali di attività frontale: 42.0

  Ore erogate dal docente Francesco TOMMASI: 21.0

For matriculated on 2015/2016

Year taught 2015/2016

Course year 1

Semestre Primo Semestre (dal 28/09/2015 al 23/01/2016)

Language INGLESE

Subject matter INTERNAZIONALE (A56)

COMMON SEMINAR (e-learning) (Laboratory) (NN)
COMPUTER SCIENCE FOR CULTURAL HERITAGE

Degree course EUROPEAN HERITAGE,DIGITAL MEDIA AND THE INFORMATION SOCIETY

Subject area ING-INF/05

Course type Laurea Magistrale

Credits 6.0

Teaching hours Ore totali di attività frontale: 42.0

For matriculated on 2015/2016

Year taught 2015/2016

Course year 1

Semestre Primo Semestre (dal 28/09/2015 al 23/01/2016)

Language INGLESE

Subject matter INTERNAZIONALE (A56)

COMPUTER SCIENCE FOR CULTURAL HERITAGE (ING-INF/05)
SISTEMI OPERATIVI

Corso di laurea INGEGNERIA DELL'INFORMAZIONE

Settore Scientifico Disciplinare ING-INF/05

Tipo corso di studio Laurea

Crediti 7.0

Ripartizione oraria Ore totali di attività frontale: 0.0

Per immatricolati nel 2014/2015

Anno accademico di erogazione 2015/2016

Anno di corso 2

Semestre Secondo Semestre (dal 29/02/2016 al 03/06/2016)

Lingua

Percorso PERCORSO COMUNE (999)

Sede Lecce - Università degli Studi

SISTEMI OPERATIVI (ING-INF/05)
SYSTEM AND NETWORK PROGRAMMING

Degree course COMPUTER ENGINEERING

Subject area ING-INF/05

Course type Laurea Magistrale

Credits 9.0

Teaching hours Ore totali di attività frontale: 81.0

For matriculated on 2015/2016

Year taught 2015/2016

Course year 1

Semestre Secondo Semestre (dal 29/02/2016 al 03/06/2016)

Language INGLESE

Subject matter PERCORSO COMUNE (999)

Location Lecce

SYSTEM AND NETWORK PROGRAMMING (ING-INF/05)
SISTEMI OPERATIVI

Corso di laurea INGEGNERIA DELL'INFORMAZIONE

Settore Scientifico Disciplinare ING-INF/05

Tipo corso di studio Laurea

Crediti 7.0

Ripartizione oraria Ore totali di attività frontale: 0.0

Per immatricolati nel 2013/2014

Anno accademico di erogazione 2014/2015

Anno di corso 2

Semestre Secondo Semestre (dal 02/03/2015 al 06/06/2015)

Lingua

Percorso PERCORSO COMUNE (999)

Sede Lecce - Università degli Studi

SISTEMI OPERATIVI (ING-INF/05)
SYSTEM AND NETWORK PROGRAMMING

Corso di laurea COMPUTER ENGINEERING

Settore Scientifico Disciplinare ING-INF/05

Tipo corso di studio Laurea Magistrale

Crediti 9.0

Ripartizione oraria Ore totali di attività frontale: 0.0

Per immatricolati nel 2014/2015

Anno accademico di erogazione 2014/2015

Anno di corso 1

Semestre Secondo Semestre (dal 02/03/2015 al 06/06/2015)

Lingua

Percorso PERCORSO COMUNE (999)

Sede Lecce - Università degli Studi

SYSTEM AND NETWORK PROGRAMMING (ING-INF/05)
SYSTEM AND NETWORK PROGRAMMING

Corso di laurea COMPUTER ENGINEERING

Settore Scientifico Disciplinare ING-INF/05

Tipo corso di studio Laurea Magistrale

Crediti 9.0

Ripartizione oraria Ore totali di attività frontale: 0.0

Per immatricolati nel 2013/2014

Anno accademico di erogazione 2013/2014

Anno di corso 1

Semestre Secondo Semestre (dal 03/03/2014 al 31/05/2014)

Lingua

Percorso PERCORSO COMUNE (999)

Sede Lecce - Università degli Studi

SYSTEM AND NETWORK PROGRAMMING (ING-INF/05)

Pubblicazioni

C. Catalano, F. Tommasi, "Persistent MobileApp-in-the-Middle (MAitM) attack", Journal of Computer Virology and Hacking Techniques (2023), https://doi.org/10.1007/s11416-023-00484-z

- F. Tommasi, C. Catalano, A. Caniglia and I. Taurino, "COTIIP: a new covert channel based on incomplete IP packets," 2022 7th International Conference on Smart and Sustainable Technologies (SpliTech), 2022, pp. 1-7, doi: 10.23919/SpliTech55088.2022.9854307.

- C. Catalano, A. Chezzi, M. Angelelli, F. Tommasi "Deceiving AI-based malware detection through polymorphic attacks" Computers in Industry, Volume 143, 2022, 103751, ISSN 0166-3615, https://doi.org/10.1016/j.compind.2022.103751.

- C. Catalano, L. Paiano, F. Calabrese, M. Cataldo, L. Mancarella, F. Tommasi "Anomaly detection in smart agriculture systems", Computers in Industry, Volume 143, (2022), 103750, ISSN 0166-3615, https://doi.org/10.1016/j.compind.2022.103750.

- F. Tommasi, C. Catalano, U.Corvaglia, I. Taurino “MinerAlert: an hybrid approach for web mining detection”, Journal of Computer Virology and Hacking Techniques, (2022), https://doi.org/10.1007/s11416-022-00420-7

- F. Tommasi, C. Melle “Study on Large-scale Terrestrial Relaying of Satellite Broadcasted Real-time Multimedia Streams”. DOI:10.9734/bpi/ctmcs/v8/11455D. pp.29-44 (August 2021). In Current Topics on Mathematics and Computer Science vol. 8

- F. Tommasi, C. Catalano, I. Taurino "Browser-in-the-Middle (BitM) attack". International Journal of Information Security, April 2021, https://doi.org/10.1007/s10207-021-00548-5

- C. Catalano, P.Afrune, M.Angelelli, G.Maglio, F.Striani, F. Tommasi "Security Testing Reuse enhancing active cyber defence in Public Administration", Proceedings of the Italian Conference on Cybersecurity (ITASEC 2021), All Digital Event, April 7-9, 2021

- F. Tommasi "Alla Scoperta di UNIX - Esplorare GNU/Linux e macOS con la linea di comando", Marzo 2021, ISBN: 9791220082204

- F. Tommasi, V.De Luca, C.Melle "QoS monitoring in real-time streaming overlays based on lock-free data structures", Multimedia Tools and Applications, March 2021, https://doi.org/10.1007/s11042-020-10198-9

- F. Tommasi, C. Catalano, M. Fornaro, I. Taurino "Mobile Session Fixation Attack in Micropayment Systems", IEEE Access, ISSN: 2169-3536, April 2019

- F. Tommasi, A. De Donno F. Irno Consalvo "Exploring a social-aware WebRTC-based P2P architecture for live video streaming ", Proceedings of The 9th International Conference on Education Technology and Computers ICETC 2017  December 20-22, 2017  | Barcelona, Spain, ISBN: 978-1-4503-5435-6 

-  F. Tommasi, C. Melle, A. De Donno "Towards a decentralized overlay for real-time live streaming: CHARMS meets the Web", Proceedings of SAI Computing Conference 2016 July 13-15, 2016 | London, UK, ISBN: 978-1-4673-8460-5

- F. Tommasi, C. Melle, A. De Donno, Ivan Taurino "Charms for e-learning: a case study", Proceedings of INTED2016 Conference 7th-9th March 2016, Valencia, Spain, ISBN: 978-84-608-5617-7

- F. Tommasi, V.De Luca, C.Melle "Efficient multi-source RTP stream relaying in overlay networks",  Proceedings of "The 2nd World Symposium On Web Applications and Networking 2015" - 21-23 March 2015 | Sousse, Tunisia

- F. Tommasi, V.De Luca, C.Melle "Packet losses and objective video quality metrics in H.264 video streaming",  Journal of Visual Communication and Image Representation - Vol. 27, February 2015, pp. 7–27

- F. Tommasi, V.De Luca, C.Melle "Are P2P streaming systems ready for interactive e-learning?",  IEEE ICETC2014 International Conference on Education Technologies and Computers, 22-24 September 2014 - Łódź (Polonia)

- F. Tommasi, V.De Luca, C.Melle "OpenSatRelaying: a Hybrid Approach to Real-Time Audio- Video Distribution over the Internet",  Journal of Communications Vol. 9, No. 3, March 2014

- F. Tommasi, V.De Luca, C.Melle "A Library for RTP Relaying and QoS Monitoring in Application Layer Multicast",  IEEE ICUFN 2013, The Fifth International Conference on Ubiquitous and Future Networks, July 2-5, 2013 - Da Nang, Vietnam

- F. Tommasi "Quanto Jobs c’è in Apple",  articolo in "SCIRES-IT", pp.1-12, Vol.1, Issue 2, ISSN 2239-4303, 2011

- F. Tommasi "La Trasmissione di Audio-Video in diretta su Larga Scala: una breve rassegna",  articolo in "SCIRES-IT", pp.113-124 ISSN 2239-4303, 2011

- F. Tommasi, E.Scialpi, A.De Rubertis "Multicast Security and Reliable Transport of Rekey messages via satellite",   Book chapter in "Satellite Communications", ISBN 978-9533073385, 2011

- F. Tommasi, C.Melle "Large-Scale terrestrial relaying of satellite broadcasted real-time multimedia streams",  International Journal of Computer Networks & Communications (IJCNC) - Special Issue on : "Networks and Communications", May 2011, Volume 3, Number 3

- F. Tommasi, S. Molendini, , E. Scialpi, C.Melle "CHARMS: Cooperative Hybrid Architecture for Relaying Multicast Satellite Streams to sites without a satellite receiver",  IEEE WCNIS2010-WCS, IEEE International Conference on Wireless Communications, Networking and Information Security, June 25-27, 2010 - Beijing, China

- F. Tommasi, S. Molendini, E. Scialpi, "Reliable Key Distribution for Secure Multicast by SRDP-Sign",  AFIN 2009, First International Conference on Advances in Future Internet, June 18-23, 2009 - Athens/Vouliagmeni, Greece

- F. Tommasi, S. Molendini, , E. Scialpi, C.Melle, "A new approach for Hybrid Satellite-Terrestrial Networks: cooperative architecture to relay multicast satellite streams",  ICLAN'2008, International Conference on the Latest Advances in Networks, December 10-12, 2008, Toulouse, France

- F. Tommasi, S. Molendini, , D. Camassa, "An experiment with Globus over a satellite link",  2008 International Symposium on Performance Evaluation of Computer and Telecommunication Systems, June 16-18, 2008, Edinburgh, UK

- F. Tommasi, S. Molendini, E. Scialpi, "SRDP-Sign: a reliable multicast protocol for signaling", NOMS 2008 IEEE/IFIP Network Operations & Management Symposium, 7-11 April 2008, Salvador - Bahia - Brazil.

- F. Tommasi, A. Campa, A. De Ferraris, E. Scialpi, "The Campus Satellitare del Salento: A Large-scale Satellite Distance e-Learning Trial", EDEN Annual Conference 2007, 13-16 June 2007, Naples, Italy.

- F. Tommasi, S. Molendini, A. Tricco, E. Scialpi, "Semi-Proactive RSVP extension for wireless mobile networks", ISWPC 2007, International Symposium on Wireless Pervasive Computing, 5-7 February 2007, San Juan, Puerto Rico.

- F. Tommasi, S. Molendini, A. Tricco, E. Scialpi, "Fast re-establishment of QoS with NSIS protocols in mobile networks", ICOIN 2007, The International Conference on Information Networking, 23-25 Jannuary 2007, Estoril, Portugal.

- F. Tommasi, S. Molendini, A. Tricco, Experience-driven selective scan for 802.11 networks, 2006 International Conference on Software, Telecommunications and Computer Networks, September 29-October 1, 2006, Split-Dubrovnik, Croatia.

- F. Tommasi, A. Campa, S. Molendini, The Campus Satellitare del Salento: a scalable and transparent e-learning application, 2006 International Conference on Software, Telecommunications and Computer Networks, Septembre 29-October 1, 2006, Split-Dubrovnik, Croatia.

- F. Tommasi, A. Campa, S. Molendini, CSS: An  approach to developing and delivering e-learning services, IADAT-e2006, International Conference on Education,12 - 14 July 2006, Barcelona, Spain.

- F. Tommasi, S. Molendini, A. Tricco, The Satellite Reliable Distribution Protocol (SRDP), Journal of Communications Software and Systems (JCOMSS), Vol. 2, N. 2, pp.152, 2006.

- F. Tommasi, S. Molendini, A. Tricco: "Network Management via Satellite", "Management of Integrated End-to-end Communications and Services", NOMS 2006, 3-7 Aprile 2006, Vancouver Canada

- G. Aloisio, M. Cafaro, S. Molendini, M. Tana, F. Tommasi, A. Tricco, "GridSAT: Grid enabled Satellite Architecture for Reliable Transmissions ": in Proceedings of the International Workshop on Satellite and Space Communications 2005 (IWSSC 2005), September 8-9 2005, University of Siena, Italy

- F.Tommasi, P.Lopalco - La struttura del Data Base storico geografico sTOria, Atti del convegno Storia e Misura.  Indicatori Sociali ed Economici nel  Mezzogiorno D'italia (Secoli XVIII-XX) Napoli, febbraio 2005 

- F. Tommasi, S. Molendini, A. Tricco, Marco De Luca: "Fast Optimized Smooth Handoff (FOSH)": in Proceedings of the IEEE Globecomm 2004, 29 November - 3 December, Dallas, USA.

- F. Tommasi, S. Molendini, F. De Riccardis, "Collected Experience from Satellite E-Learning: The Esmee Project": in Proceedings of the International Conference on Telecommunications and Computer Networks - IADAT-tcn2004, December 1-3, 2004, San Sebastian, Spain

- F. Tommasi, S. Molendini, A. Tricco, "Feasibility Study for a Smooth Hand-Over between Satellite and WLAN Networks": in Proceedings of the International Conference on Telecommunications and Computer Networks - IADAT-tcn2004, December 1-3, 2004, San Sebastian, Spain

- F. Tommasi, S. Molendini, A. Tricco, Marco De Luca: "Extensions of Mobile IP for Real-Time Applications", Faculty of Electrical Engeneering, Mechanical Engineering and Naval Architecture, University of Split, Croazia in: Proceedings of International Conference on Software, Telecommunications and Computer Networks IEEE SOFTCOM2004, 10-13 October 2004, Split, Croatia.

- F. Tommasi, S. Molendini, A. Tricco, I. De Luca: "The Jamon (Java Mobile Node) Project - Goals, development and performance", Wireless Personal Multimedia Communications, WPMC2004, 12-11 September 2004, Abano Terme, Italy.

- F. Tommasi, S. Molendini, A.Tricco, Design of the Satellite Reliable Distribution Protocol (SRDP) Globecom 2003 - San Francisco (USA) - Dicembre 2003

- F. Tommasi, S. Molendini, S.Zacchino, Measurements of the Performance of the RSVP Protocol, Art-QoS 2003 - Warsaw, Marzo 2003

- F. Tommasi, S. Molendini, A.Tricco, Improvement of performance in MPLS domains by using Caching and Aggregation of CR-LSP,  IEEE Net-Con'2002 - Paris, Ottobre 2002

- F. Tommasi, S. Molendini, A.Vilei The Satellite Multicast Distribution Protocol (SMDP),  IEEE SoftCOM 2002 - Spalato, Ottobre 2002

- F. Tommasi, S. Molendini, A.Tricco, Mapping of IntServ/RSVP reservations into MPLS domains,  IEEE SoftCOM 2002 - Spalato, Ottobre 2002

- F. Tommasi, S. Molendini, Design of a Satellite Access Manager Router (Sam-R) for the Skyplexnet Architecture,  IEEE SoftCOM 2001 - Spalato, Ottobre 2001

- A. Campa, A. Mongelli, F. Tommasi, F. De Riccardis, 'Telematic University': an Experiment of Quality Distance-Learning , IEEE SoftCOM 2001 - Spalato, Ottobre 2001

- F. Tommasi, S. Molendini, A. Vilei, A. Sponziello, Architecture of QOSMIC - A QoS Manager for Internet Connections, PROMS2001 (Protocols on multimedia systems) Enschede, Olanda, Ottobre 2001

- L. Berger,  D. Gan,  G. Swallow, P. Pan, F. Tommasi, S. Molendini, RSVP Refresh Overhead Reduction Extensions  Request for Comments n.2961 in http://ietf.org/rfc/rfc2961.txt, Aprile 2001

- F. Tommasi, S. Molendini, Issues About Advance Reservation For Real-Time Traffic. Atti del convegno PROMS2000 (Protocols on multimedia systems) Cracovia, Ottobre 2000

- M. DeBlasi, F. Tommasi, A.Campa, A New Dimension in Multimedia Distribution Over Satellite And Terrestrial Telecommunication Systems. Atti del convegno IEEE SoftCOM 2000 - Dubrovnik, Ottobre 2000

- F. Tommasi, S. Molendini, Integrated Services And Differentiated Services: A Functional Comparison. Atti del convegno IEEE SoftCOM 2000 - Dubrovnik, Ottobre 2000

- F. Tommasi, S. Molendini, Different Solutions To The RSVP Protocol Scalability Problem. Atti del convegno IEEE SoftCOM 2000 - Dubrovnik, Ottobre 2000

- F.Tommasi, Avvisi ai Naviganti, Introduzione ad Internet, 38 pp., Conte Editore, Maggio 1995

- F.Tommasi, Come allestire un server Web, ZeroUno ed.Mondadori, Maggio 1995

- F.Tommasi, Cresce bene la Rete AppleTalk, ZeroUno ed.Mondadori, Febbraio 1995

- P.Avanti, A.Gentile, F.Tommasi, Tele-Jam Sessions, EC Newsletters, 6,1, 45-54, Aprile 1994

- A.Gentile, F.Tommasi, Multimedialità e discipline umanistiche, relazione invitata, Atti del Convegno Sistemi multimediali, Interattività, Formazione, Bari 1993 

- M.De Blasi, F.Tommasi, Interattività nella formazione a distanza, relazione invitata, Atti del Convegno Sistemi multimediali, Interattività, Formazione, Bari 1993 

- M.De Blasi, F.Tommasi, Impieghi del satellite nella Didattica, Relazione invitata Convegno di Didamatica 1993, Genova 

- L.Campanale, M.De Blasi, F.Greco, I.Pagliara, F.Tommasi, Low-level and High-level Parallelism Trade-offs in Prolog Architectures, EC Newsletters, 4,3, 53-63, Dicembre 1992

- Manuale di Cumterra, Cigraph, Venezia, 1991 (il manuale d'utente del programma documenta, descrivendone la produzione, l'attività di direzione del progetto di sviluppo svolta dallo scrivente) 

- F.Tommasi, Flusso Ottico ed informazione 3D per la navigazione, Atti del 1° Congresso della Associazione Italiana per l'Intelligenza Artificiale, Trento, Novembre 1989

- F.Girosi, S.Uras, F.Tommasi, V.Torre, Optical Flow from Real Images, Atti della 22nd Asilomar Conference on Signals, Systems and Computers, Asilomar, California, USA, Novembre 1988. 

- L.Chiariglione, S.Fontolan,M.Guglielmo, F.Tommasi, A variable resolution video codec for low bit-rate applications, IEEE Journal on selected areas in Communications, Agosto 1987.

- L.Corgnier, F.Tommasi, A method for reconstructing a one octave signal from the position of its zeroes, FIBER '86, Cambridge, Massachusetts, USA, Settembre 1986.

- L.Chiariglione, M.Guglielmo, F.Tommasi, An integrated approach to Video Standard conversion and preprocessing for a Videoconference Codec, Atti del Simposio di Scienza e di Ingegneria Ottica ed Elettro-Ottica Applicate di Cannes (Francia) , Dicembre 1985.

 

 

Temi di ricerca

Franco Tommasi ha interessi di ricerca nel campo della Qualità di Servizio per le reti di computer (nel quale vanta la pubblicazione di un Internet Proposed Standard, l'RFC 2961, http://www.ietf.org/rfc/rfc2961.txt), della mobilità IP, dell'internetworking satellitare e delle tecnologie per la Formazione a Distanza via Satellite. In quest'ultimo campo il suo lavoro di ricerca ha condotto alla creazione del Campus Satellitare del Salento (http://www.campusdelsalento.it). Le sue attuali ricerche sono focalizzate sul tema della Cybersecurity.