Modules | Area | Type | Hours | Teacher(s) | |
SISTEMI DI ELABORAZIONE | ING-INF/05 | LEZIONI | 60 |
|
Lo studente che supera con successo il corso conoscerà i concetti di base relativi alla programmazione concorrente e distribuita, alla sicurezza di rete e di sistema. In particolare gli studenti acquisiranno solide conoscenze sulla comunicazione inter-processo, sia in ambiente centralizzato che distribuito. Saranno in grado di progettare e implementare applicazioni concorrenti e distribuite.
Students, who successfully complete this course, will become aware of the basic concepts on concurrent and distributed programming, as well as on network and system security. Specifically, they will acquire a solid knowledge about inter-process communication, both in a centralized and distributed environment. They, will be able to design and implement concurrent and distributed applications.
Gli studenti saranno valutati sulla base della loro abilità nel
Metodi:
Students will be assessed on their demonstrated ability to
Methods:
Gli studenti saranno in grado di
Students will be able to
Valutazione del progetto.
Prova orale.
Evaluation of the project.
Oral exam.
Lavorare in un ambiente basato su Unix.
Working in a Unix-based environment.
Discussione e presentazione del progetto.
Discussion and presentation of the project.
Un linguaggio di programmazione basato sul C.
A C-based programming language.
Corso erogato dal vivo.
Atività di apprendimento:
Frequenza: consigliata
Metodi di insegnamento:
Delivery: face to face
Learning activities:
Attendance: Advised
Teaching methods:
Concetti di base sui sistemi operativi. Processi e thread. Algoritmi di scheduling. Programmazione concorrente. Comunicazione tra processi. Modello a memoria condivisa e a scambio di messaggi. Libreria Pthread. Programmazione distribuita. Modello client-server e peer-to-peer. Routing. Interfaccia socket. Sicurezza. Minacce e attacchi. Crittografia. Segretezza. Integrità dei messaggi. Firma digitale. Autenticazione. E-mail sicura. Firewall e altre difese. Sistemi embedded. Sistemi embedded real-time.
Basic Concepts on Operating Systems. Processes and Threads. Scheduling Algorithms. Concurrent Programming. Process Communication. Shared Memory and Message Passing Models. Pthread library. Distributed Programming. Client-Server and Peer-to-Peer models. Routing. Socket Interface. Security. Threats and attacks. Cryptography. Secrecy. Message integrity. Digital signature. End-to-end Authentication. Secure E-mail. Firewalls and other defences. Embedded Systems. Real Time Embedded Systems.
“Sistemi Operativi, IX Edizione”, A. Silberschatz, P. Galvin, Pearson Education Italia.
"Computer networks", Kurose and Ross
Altro materiale fornito dal docente (slide).
https://teams.microsoft.com/_#/school/files/Generale?threadId=19%3A553b323c772041e682c21b101a18374e%40thread.tacv2&ctx=channel&context=General&rootfolder=%252Fsites%252Fmsteams_68de70%252FShared%2520Documents%252FGeneral
A. Silberschatz, P. Galvin, “Sistemi Operativi, IX Edizione”, Pearson Education Italia.
"Computer networks", Kurose and Ross
Further material provided by the teacher (slides).
No
No
Esame orale (include la presentazione del progetto e la sua discussione)
Indicazioni aggiuntive dettate dall'emergenza COVID-19: l'esame verrà sostenuto in modalità telematica usando la piattaforma Microsoft Teams. Nella sezione "File" del canale "Generale" del team è possibile trovare un documento contenente alcuni suggerimenti e altre informazioni riguardanti le modalità di esame.
https://teams.microsoft.com/_#/school/files/Generale?threadId=19%3A553b323c772041e682c21b101a18374e%40thread.tacv2&ctx=channel&context=General&rootfolder=%252Fsites%252Fmsteams_68de70%252FShared%2520Documents%252FGeneral
Oral examination (it includes the presentation and discussion of the project).