5. Problemi Classici di Programmazione Concorrente e Definizioni di concorrenza
Argomenti: mutua esclusione, sincronizzazione, concorrenza, soluzioni classiche.
Riferimenti: Capitolo "Sincronizzazione di Processi" del libro di testo.
LEZIONI su Problemi CLASSICI di Programmazione Concorrente tra pthread risolti con Mutexes e Condition Variables, Definizioni
5c_ProblClassici_ProgrammazioneConcorrenteInC_PosixThread.pdf (Appunti delle lezioni)
--- Esempi utili ---
CODICE su Problemi CLASSICI di Programmazione Concorrente tra pthread risolti con Mutexes e Condition Variables
Codice per controllo d'errore, comune a tutte le soluzioni
printerror.h
macro per stampa errori, usato in tutti gli esempi seguenti
DBGpthread.c
modulo con funzioni per controllo di errore, usato in tutti gli esempi seguenti
DBGpthread.h
prototipi delle funzioni per controllo di errore, usato in tutti gli esempi seguenti
Sincronizzazione Circolare tra due pthread
SBAGLIATO_0_circolare1a1.c
SBAGLIATO_1_circolare1a1.c
SBAGLIATO_2_circolare1a1.c
circolare1a1.c
GIUSTA Sincronizzazione circolare tra 2 pthread
Makefile
Makefile per gli esempi di Sincronizzazione circolare tra 2 pthread
Sincronizzazione Circolare tra 3 pthread CON TURNO
sincroCircolareConTurno.c
MakefileSincroCircolareConTurno
Makefile per Sincronizzazione circolare tra 3 pthread con turno
Algoritmo del Fornaio per code FIFO
algoritmo_fornaio_per_coda_FIFO.c
Codice algoritmo del fornaio per code FIFO
algoritmo_fornaio_BUSY_WAITING_per_coda_FIFO.c
implementazione ORRENDA POCO EFFICIENTE a causa di Busy Waiting
Makefile
Makefile per gli esempi di algoritmo del fornaio per code FIFO
Produttori e Consumatori con un buffer solo
NProdMCons1buffer_menoefficiente.c
Codice Produttori e Consumatori con 1 solo buffer: Soluzione meno efficiente.
Makefile1buffer_menoefficiente
Makefile per Produttori e Consumatori con 1 solo buffer meno efficiente
NProdMCons1buffer.c
Codice Produttori e Consumatori con 1 solo buffer: molto EFFICENTE.
Makefile1buffer
Makefile per Produttori e Consumatori con 1 solo buffer. molto Efficiente
Lettori e Scrittori
NLettoriMScrittori.c
Codice Readers & Writers
Makefile
Makefile per Lettori Scrittori
5 Filosofi a tavola
5filosofi.c
Codice 5 filosofi
Makefile
Makefile per 5 Filosofi
Passaggio Sicuro di Testimone
PassaggioSicuroDiTestimone.c
Codice Passaggio Sicuro di Testimone
Makefile
Makefile per Passaggio Sicuro di Testimone
GIUSTA, Barbiere appisolato completo
barbiereconsaluti.c
Codice Barbiere appisolato completo
Makefileconsaluti
Makefile per Barbiere appisolato che saluta e viene salutato