Home Lectures Assignments Links Announcements
Week | Lecture | Date | Topic | Reading | Homeworks etc. |
---|---|---|---|---|---|
1 | 1 | 01/21 | Introduction to multithreaded, parallel and distributed systems; Atomic action | Chap. 1.1-1.4, 1.9, 2.1 | Threads examples: 1 , 2 , 3 |
2 | 01/23 | ||||
2 | 3 | 01/28 | Program state & program history; Safety and liveness properties | Chap. 2.2-2.5 | 01/28 (Tue): Last Day to Add, Drop, or Audit |
4 | 01/30 | ||||
3 | 5 | 02/04 | The at-most-once property; The await statement |
Chap. 2.2-2.5 | Further reading: JML,
Proving Program Correctness 02/04: Homework #1 ??? |
6 | 02/06 | ||||
4 | 7 | 02/11 | Scheduling policies and fairness; the critical section problem | Chap. 2.8, 3.1-3.2 | 02/11: Homework #1 Due ??? |
8 | 02/13 | ||||
5 | -- | 02/18 | Follow Monday's schedule: No Class | Chap. 3.2-3.3 |
|
9 | 02/20 | The critical section problem, coarse-grained solution vs. fine-grained solution; Spin lock solution | |||
6 | 10 | 02/25 | Fine-grained solutiuons to the CS problem; Fair solutions (Tie-breaker algorithm, Ticket algorithm) | Academic Calendar | 02/26: Last day to file Pass/Fail |
11 | 02/27 | Barrier synchronization; Data parallel algorithm | Chap. 3.4, 3.5.1 | ||
7 | 12 | 03/04 | Review for midterm exam (Chap. 1-3) | ||
-- | 03/06 | Midterm exam (in class) |
|||
8 | -- | 03/10 | Spring Vacation | 03/11: Spring recess begins (after last class or lab) | |
9 | 13 | 03/18 | Midterm exam questions; Semaphores and examples; Udding's starvation-free algorithm; Semaphore; Java Semaphore class |
Chap. 4.1 | Semaphore in Java, POSIX |
14 | 03/20 | ||||
10 | 15 | 03/25 | Split binary semaphore; Bounded buffer example; Readers/Writers problem; Passing the baton technique |
Chap. 4.2-4.5 | Example: Reader/Writer Problem 03/27: Homework #3 (???) |
16 | 03/27 | ||||
11 | 17 | 04/01 | Concept of monitors and examples; SW and SC semantics; Semaphore vs. monitor | Chap. 5.1 | 04/01: Registration for Fall 2024 begins |
18 | 04/03 | ||||
12 | 19 | 04/08 | More monitor examples, Priority wait, Java synchronized methods |
Chap. 5.2, 7.1-7.2 | 04/07: Registration for Fall 2025 begins |
20 | 04/10 | Distributed programming; Asynchronous message passing vs. synchronous message passing | |||
13 | 21 | 04/15 | Convert a monitor into a server process; CSP programming notations | Chap. 7.3, 7.5, 7.6 | 04/17: Homework #4 Due (???) |
22 | 04/17 | ||||
14 | 23 | 04/22 | CSP programming notations; CSP examples |
Chap. 7.6, 7.7; Chap. 8.1-8.2, 8.5; Handout | 04/22: Homework #5 (???) |
24 | 04/24 | Linda and tuple space; Remote procedure call (RPC) and Java RMI | |||
15 & 16 | 25 | 04/29 | Review for final exam (comprehensive); Discussions on Homework #3 and #4 | Single Lane Bridge Demo |
|
-- | 05/06 | Final exam*: Tuesday, May 6, 8:00am - 11:00am, Library Lecture Hall 206 | 05/01: Study Day |
*Please refer to final exam
schedule at: http://www.umassd.edu/registrar/finalexams/