Sample Syllabus


Catalog Description:


Textbook(s)


Required: TBD

Recommended: TBD


Week-By-Week

Week
Topics Covered
Reading
Assignments
1
How concurrency arises on a single computer
Reading TBD
Assignments TBD
2
The danger of uncontrolled concurrency -- race conditions


3
How to control concurrency to avoid race conditions


4
Specialized machine instructions


5
Semaphores


6
Monitor concept


7
Implementation of monitor concept in programming languages that do and do not support the concept


8
Barrier synchronization


9
How concurrency arises in distributed systems


10
How to control concurrency in distributed systems -- message passing, remote procedure call


11
Taxonomy of concurrent problems -- data-parallel, task-parallel


12
Concurrency in database systems -- atomic transaction, serializability


13
Formal reasoning about concurrency -- state models, partial correctness, liveness


14
Specialized systems for parallel programming -- e.g., Globus, PVM, MPI