This repository contains solutions for CS4532 Concurrent Programming Take-Home Labs 1 and 2.
-
Lab 1: Focuses on implementing a linked list as:
- A serial program.
- A parallel program using Pthreads with a single mutex.
- A parallel program using Pthreads with read-write locks.
Performance analysis is conducted to compare these implementations.
-
Lab 2: Addresses the synchronization problem of the Senate bus using Java. It implements mutexes and semaphores to handle rider and bus interactions under specific constraints.
Both labs include source code, instructions, and necessary outputs.