Course Description

Course CodeCourse NameCreditsHours
5905196 Concurrent Computing 3.0 3
Description 1. Basic systems concepts important to concurrent computing 2. Multi-process and multithreaded programming basics 3. Race conditions, critical sections, and synchronization 4. Pure software and hardware solutions and proof techniques for mutual exclusion 5. Synchronization primitives (i.e., semaphores, mutex locks, monitors of Hoare and Mesa types, basic message passing) 6. Deadlocks and livelocks 7. Survey of some languages (e.g., Java and Ada) and libraries (e.g., Pthreads)