CODICE 104779 ANNO ACCADEMICO 2021/2022 CFU 2.5 cfu anno 2 INTERNET AND MULTIMEDIA ENGINEERING 10378 (LM-27) - GENOVA SETTORE SCIENTIFICO DISCIPLINARE ING-INF/03 LINGUA Inglese SEDE GENOVA PERIODO 2° Semestre MODULI Questo insegnamento è un modulo di: INTERNET PROGRAMMING AND AUTONOMOUS SYSTEMS MATERIALE DIDATTICO AULAWEB PRESENTAZIONE OBIETTIVI E CONTENUTI OBIETTIVI FORMATIVI The course is aimed at providing the bases of inter-process communication (IPC) under an Unix operating system: the main system calls for controling the processes and the socket application programming interfaces (APIs) will be covered. The goal is to give the students an adequate knowledge needed to write client-server applications which are at the base of almost all Internet appliances. OBIETTIVI FORMATIVI (DETTAGLIO) E RISULTATI DI APPRENDIMENTO The lectures are designed as a coordinated mix of theoretical and practical elements on operating systems, processes, and socket programming. The coordination of these concepts aims at providing the students with the necessary skills to understand how to develop simple network applications, for instance Cloud Computing and/or Internet of Things. Attendance, active participation to lectures, and individual study will allow students - to appreciate the advantages/opportunities deriving from the use of Inter-process communication (IPC) - to understand the main techniques for exploiting the IPC; - to write code to implement Client/Server applications; - to know the principal client/server tools provided by the Internet Suite. MODALITA' DIDATTICHE Lectures in attendance (except for specific restrictions due to the Covid-19 emergency). Lectures include also laboratory/programming trials. Further information will be available on the AulaWeb page devoted to the course. PROGRAMMA/CONTENUTO - Hints on the general structure of a Unix Operating System. - Main techniques of Inter-process communication: signals, semaphores, shared memory, sockets. - Sockets for UDP and TCP data exchange. - Examples of "C" and/or Pyton code exploiting IPC. TESTI/BIBLIOGRAFIA Handouts provided by the lecturers. Reference books: - W. Richard Stevens, "UNIX Network Programming, Volume 2, Second Edition: Interprocess Communications", Prentice Hall, 1999, ISBN 0-13-081081-9. - Marc J. Rochkind, "Advanced Unix Programming", Addison-Wesley Professional, 2004, ISBN-10 0131411543. DOCENTI E COMMISSIONI SANDRO ZAPPATORE Ricevimento: Booked via e-mail. ROBERTO BRUSCHI Ricevimento: Su appuntamento da fissare via email o piattaforma Microsoft Teams Commissione d'esame SANDRO ZAPPATORE (Presidente) CARLO REGAZZONI ROBERTO BRUSCHI (Presidente Supplente) LUCIO MARCENARO (Presidente Supplente) LEZIONI INIZIO LEZIONI https://corsi.unige.it/10378/p/studenti-orario Orari delle lezioni L'orario di questo insegnamento è consultabile all'indirizzo: Portale EasyAcademy ESAMI MODALITA' D'ESAME Oral MODALITA' DI ACCERTAMENTO The oral exam is aimed at evaluting the synthsis, reasoning, and critical capacities of students on the topics covered by the lectures. Calendario appelli Data appello Orario Luogo Tipologia Note 16/06/2022 14:00 GENOVA Orale 08/07/2022 14:00 GENOVA Orale 12/09/2022 14:00 GENOVA Orale ALTRE INFORMAZIONI None