A questo link il registro ufficiale delle lezioni.
Numero | Descrizione | Materiale | Commenti | Data |
---|---|---|---|---|
1 | Lezione. Introduzione del corso. Richiami di C: puntatori, stringhe, puntatori a funzione, gestione della memoria (malloc , calloc , realloc , free ), funzioni con argomenti variabile, struct and union . Uso dei manuali in linea. | Lucidi introduttivi Puntatori e stringhe Puntatori a funzione e 'void*' Gestione della memoria in C Strutture e Union Funzioni con argomenti variabili. | 24/02/15 | |
2 | Esercitazione. Editor emacs e vi . Compilazione con gcc: flags di base. Programmazione C con puntatori. Debugging con gdb. | Assegnamento1 Possibile soluzione Es. 2-6 Possibile soluzione Es. 7-9 | Pieghevole comandi C Pieghevole comandi GDB Pieghevole comandi Emacs | 24/02/15 |
3 | Lezione. Discussione su assegnamenti esercitazione precedente. Richiami di C: argc and argv. libreria standard di I/O. Spazio di indirizzamento di un programma C. | Argc e Argv Libreria standard I/O Chiamata di funzione e frame | 03/03/15 | |
4 | Lezione. Preprocessore C. Preprocessing, compilazione e linking. | Preprocessore Compilazione e linking. | 03/03/15 | |
5 | Esercitazione. Utilizzo di mtrace e valgrind . Discussione sulle problematiche incontrate nell'Assegnamento1. Esercitazione sulla libreria di I/O. | Assegnamento2 Possibile soluzione esercizi | 10/03/15 | |
6 | Esercitazione. Esercitazione sulla libraria di I/O. | 10/03/15 | ||
7 | Lezione. Discussione sulle problematiche incontrate nell'Assegnamento2. Classi di memorizzazione C (extern,static). Creazione di librerie C statiche e condivise. Makefile. | Classi di memorizzazione Librerie statiche e dinamiche Makefile | Esempio di Makefile | 17/03/15 |
8 | Esercitazione. Introduzione al progetto. Esercizi su macro C. Creazione di una libreria statica. Creazione di semplici Makefile. | Assegnamento3 Possibile soluzione esercizi | Vedi il primo kit alla pagina del progetto | 17/03/15 |
9 | Lezione. Shell bash introduzione. bash approfondimento1. | Lucidi unix e bash (parte 1) Lucidi unix e bash (parte 2) | Advanced Bash Scripting Guide | 24/03/15 |
10 | Esercitazione. Utilizzo di comandi in pipeline. Primi script bash. | Assegnamento4 Possibile soluzione esercizi | Esempi di script bash | 24/03/15 |
11 | Lezione. bash approfondimento2: signals, trap, quoting, functions, expressions. | Lucidi Unix e Bash (terza ed ultima parte) | 31/03/15 | |
12 | Esercitazione. Esercizi su script bash | Assegnamento5 Possibile soluzione esercizi | Differenze tra test '[' and test '[[' Esempi di utilizzo di array bash | 31/03/15 |
13 | Lezione. File system Unix: inode, dyrectory. Chiamate di sistema (SC):open,close,read,write,lseek,umask,fsync,stat,unlink. Operazioni di libreria e SC su directory:opendir,closedir,readdir,rewinddir,getcwd,chdir. Introduzione ai processi: fork, wait/waitpid. | Lucidi System call: SC che lavorano su file regolari e directory Introduzione processi | 21/04/15 | |
14 | Esercitazione. Utilizzo delle chiamate di sistema per la lettura/scrittura di files e directories. Prima esperienza con fork e wait . | Assegnamento6 Possibile soluzione esercizi | 21/04/15 | |
15 | Lezione. Processi Unix, differenziazione del codice con exec*. Pipe con nome e senza nome. | Processi Pipe | Alcuni esempi con processi e pipe Client/Server named pipe | 28/04/15 |
16 | Esercitazione. Esercizi con processi e pipe senza nome. | Assegnamento7 Possibile soluzione esercizi | 28/04/15 | |
17 | Lezione. POSIX threads, esecuzione concorrente. | Lucidi Thread Posix | Breve panoramica sul modello a thread Lucidi sul modello a thread | 05/05/15 |
18 | Esercitazione Creazione di threads. Comunicazione tra threads, mutua esclusione. | Assegnamento8 Possibile soluzione esercizi | Vedi il secondo kit alla pagina del progetto | 05/05/15 |
19 | Lezione. Socket. Comunicazione client-server. | Lucidi su socket | 12/05/15 | |
20 | Esercitazione. Esercizi su client e server (multithreaded) implementati con socket AF_UNIX. | Assegnamento9 Possibile soluzione esercizi | 12/05/15 | |
21 | Lezione. Segnali. Gestione dei segnali in programmi multithreaded. | Lucidi Segnali | 19/05/15 | |
22 | Esercitazione. Gestione dei segnali con i thread. | Assegnamento10 Possibile soluzione esercizi | 19/05/15 | |
23 | Esercitazione. Recupero esercitazioni precedenti e discussione sul progetto. | 26/05/15 | ||
24 | Esercitazione. Discussione sul progetto. | Vedi il terzo kit alla pagina del progetto | 26/05/15 |