Lo studente acquisirà conoscenze relativi alla programmazione di sistema in C, programmazione concorrente, utilizzo di Makefile, scripting in Python, programmazione in Assembler.
The student will acquire knowledge related to system programming in C, concurrent programming, use of Makefile, Python scripting, Assembler programming.
Le conoscenze verrano verificate tramite:
The knowledge acquired will be assessed using:
Lo studente sviluperà capacità di:
The student will acquire skills in:
Compiti di programmazione in classe e a casa, progetto.
Programming homeworks at home and in class, project.
Modalità: Lezioni frontali in modalità mista (in presenza e online)
Attività di apprendimento:
Frequenza fortemente consigliata ma non obbligatoria.
Metodi di insegnamento:
Delivery: frontal lectures in mixed mode (in person and online)
Learning activities:
Attendance: strongly advised but not mandatory.
Teaching methods:
Programmazione sequenziale in C, incluso utilizzo di pointer, stringhe,librerie standard I/O.
Programmazione in C utilizzando chiamate di sistema.
Debugging con GDB e controllo accessi alla memoria con valgrind.
Utilizzo di Makefile.
Programmazione concorrenta in C utilizzando processi e thread.
Communicazione e sincronisazione tra processi e thread.
Programmazione in Assembler ARM.
Scripting in Python.
Applicazioni, esempi e link con altri corsi del secondo anno.
C programming, including using pointers, strings, standard I/O libraries.
C programming using system calls.
GDB debugging and memroy check using valgrind.
Using Makefile.
Concurrent programming in C using processes and threads.
Communication and sincronisation among processes and threads.
ARM Assembler prohgramming
Python Scripting.
Scripting in Python.
Applications, examples and link to other courses from the sceond year.
Dennis M. Ritchie, Brian W. Kernighan. Il linguaggio C Principi di programmazione e manuale di riferimento, Pearson Italia, ISBN: 9788871922003
Marc J. Rochkind. Advanced UNIX Programming 2nd Edition, Addison-Wesley Professional Computing Series, 2004.
Dennis M. Ritchie, Brian W. Kernighan. Il linguaggio C Principi di programmazione e manuale di riferimento, Pearson Italia, ISBN: 9788871922003
Marc J. Rochkind. Advanced UNIX Programming 2nd Edition, Addison-Wesley Professional Computing Series, 2004.
L'esame si svolgerà con una delle due seguenti modalità:
The exam will be held in two modalities: