Strumenti Utente

Strumenti Sito


informatica:sol:laboratorio21:esercitazionib:start

Sommario lezioni ed esercitazioni


“valgrind: the 'impossible' happened: Killed by fatal signal”


Numero Descrizione Materiale Altro Data
1 Introduzione al corso
Lezione: Compilazione con gcc: descrizione di alcuni parametri tipici (-g -c -o -I -O). Uso del C99 vs Ansi C. Richiami di C (stringhe, argc, argv, allocazione dinamica della memoria, strutture, funzioni con argomenti variabili, puntatori e stringhe).
Compilazione con gcc.
Argc Argv
Strutture e Union
Gestione della memoria in C
Puntatori e stringhe
Funzioni con argomenti variabili.
C standards in GCC 16/02/21
2 Esercitazione. Richiami di C (stringhe, puntatori e argc/argv). Uso di gdb. Assegnamento1 Possibile soluzione. Pieghevole comandi C
GDB User Manual
Pieghevole comandi GDB
Note gdb e valgrind
Pieghevole comandi Emacs
18/02/21 19/02/21
3 Lezione. Puntatori a funzioni, esempi. Funzioni rientranti: tokenizzazione di stringhe con 'strtok_r' e generazione di numeri pseudo casuali con 'rand_r'. Il preprocessore, compilazione condizionale. Puntatori a funzione e 'void*'
Funzioni rientranti.
Preprocessore.
23/02/21
4 Esercitazione. Funzioni rientranti. Tokenizzazione di stringhe e generazione di numeri pseudo casuali. Assegnamento2
Possibile soluzione.
25/02/21 26/02/21
5 Lezione : Compilazione e linking in C. Classi di memorizzazione: static, extern. Creazione di librerie statiche e dinamiche. Makefile. Compilazione e linking.
Classi di memorizzazione
Librerie statiche e dinamiche
02/03/21
6 Esercitazione. Creazione di librerie statiche (.a) e dinamiche (.so). Utilizzo di macros. Utilizzo del modificatore 'static'. Assegnamento3
Possibile soluzione.
04/03/21 05/03/21
7 Lezione : Makefile: a cosa serve e sua struttura. Struttura a directory del FS Linux/Unix, principali directory, path assoluto e relativo. Libreria standard di I/O. Makefile
Gerarchia di directory.
Libreria di IO.
Makefile tutorial 09/03/21
8 Esercitazione. I/O testuale e binario con le funzioni della libreria standard. Utilizzo di make per compilare. Assegnamento4
Possibile soluzione.
11/03/21 12/03/21
9 Lezione : Chiamate di sistema (SC) per la gestione di files e directories. SCs per I/O
16/03/21
10 Esercitazione. Esercizi su SCs per la gestione di files e directories. Assegnamento5
Possibile soluzione.
18/03/21 19/03/21
11 Lezione : Processi: fork, wait/waitpid e differenziazione del codice con exec*. Processi 30/03/21
12 Esercitazione. Esercizi con fork/waitpid/exec. Assegnamento6
Possibile soluzione.
01/04/21 09/04/21
13 Lezione. Gestione dei threads POSIX: creazione/distruzione, mutex, condition variables, gestione della terminazione. PThreads. 13/04/21
14 Esercitazione. Esercizi con processi e threads. Assegnamento7
Possibile soluzione.
15/04/21 16/04/21
15 Lezione : Comunicazione tra processi: pipe senza nome. Pipe Alcuni esempi con processi e pipe
Esempio di protocollo client/server con "named pipe" (FIFO)
20/04/21
16 Esercitazione. Esercizi con processi, pipe e threads. Assegnamento8
Possibile soluzione.
22/04/21 23/04/21
17 Lezione : Comunicazione tra processi: socket AF_UNIX. Multiplexing di più sockets con select (accenni a poll). Socket 27/04/21
18 Esercitazione. Esercizi con socket. Comunicazioni client-server ed uso della select. Assegnamento9
Possibile soluzione.
29/04/21 30/04/21
19 Lezione : Gestione dei segnali. Discussione sull'uso di “readn” e “writen”. Segnali Nota su "partial read/write" (aka "short read/write") Implementazione di readn e writen (by R. Stevens et al.) 04/05/21
20 Esercitazione. Esercizi con gestione dei segnali con signal-handler e con sigwait. Assegnamento10
Possibile soluzione.
06/05/21 07/05/21
21 Lezione . Pattern di implementazione di server concorrenti. Note su server concorrenti 11/05/21
22 Esercitazione. Esercizi con thread e segnali, e schemi di implementazione di server concorrenti. Assegnamento11 13/05/21 14/05/21
23 Lezione : Shell bash, e bash scripting. Introduzione alla Shell
Scripting in bash
18/05/21
24 Esercitazione : Comandi bash e semplici script. Assegnamento12 20/05/21 21/05/21
informatica/sol/laboratorio21/esercitazionib/start.txt · Ultima modifica: 12/04/2021 alle 12:38 (8 giorni fa) da Massimo Torquati