All the C programs you write for this class should follow the well established good C coding conventions. If you turn in code that deviates from these conventions, you may not earn full credit for your solutions.
Your work MUST be handed in as git submissions to your repository for this class. Be sure to observe the name of the repository and to grant developer access to the instructors and all the class TAs. As a matter of practice, you are expected to:
Pre-labs and Labs are due on the dates listed, at 8:00am. Note that the schedule is tentative and the topics may change. Finally, note that the link to the lab does not open until the day of the lab.
Week | Date | Topic | Pre-lab | Lab |
1 | 08/29/2024 | Systems Programming in C (review) | Pre-lab 0 08/29/2024 | Lab 0 09/05/2024 |
2 | 09/05/2024 | Unix Processes | Pre-lab 1 09/05/2024 | Lab 1 09/12/2024 |
3 | 09/12/2024 | Interprocess communication: pipes | Pre-lab 2 09/12/2024 | Lab 2 09/19/2024 |
4 | 09/19/2024 | POSIX Pthreads | Pre-lab 3 09/19/2024 | Lab 3 09/26/2024 |
5 | 09/26/2024 | Interprocess communication: TCP sockets | Pre-lab 4 09/26/2024 | Lab 4 10/03/2024 |
6 | 10/03/2024 | Thread synchronization | Pre-lab 5 10/03/2024 | Lab 5 10/10/2024 |
7 | 10/10/2024 | Dining philosophers | Pre-lab 6 10/17/2024 | Lab 6 10/17/2024 |
8 | 10/17/2024 | Fall Recess | ||
9 | 10/24/2024 | Memory allocation I | Pre-lab 7 10/30/2024 | Lab 7 10/30/2024 |
10 | 10/31/2024 | Memory allocation II | No pre-lab | Lab 8 11/14/2024 |
11 | 11/07/2024 | No new lab assignment | ||
12 | 11/14/2024 | Building a Unix Shell | No pre-lab | Lab 9 12/05/2024 |
13 | 11/21/2024 | File system interface (final lab assignment) | Pre-lab 10 11/21/2024 | Lab 10 12/05/2024 |
14 | 11/28/2024 | Thanksgiving Recess | ||
15 | 12/05/2024 | No new lab assignment | ||
16 | 12/10/2024 | Last day of classes |