In CS 326, we’ll have two types of assignments:
- Labs (small-scale, for practice)
- Projects (larger scale, for assessment)
Lab assignments are graded in class, office hours, or the lab section. This means you will receive timely feedback and can correct any issues with your code or understanding of the concepts being covered.
Each assignment will include a description of the problem, breakdown of points, permitted libraries, etc. You are free to discuss assignments with your classmates, but sharing code or pseudocode is not acceptable. Working as a group is not allowed unless otherwise stated in the assignment specification.
Submitting Assignments: use the project links below to create a git repository for your work. To submit, check your code into your git repository before the deadline.
- Due dates are posted on Canvas. Labs must be checked off in person by the due date. Projects must be submitted by 11:59pm on the due date.
- Late lab assignments are not accepted.
- Each student is allocated 3 ‘slip days’ that can be used to turn projects in late.
- To use slip days, commit changes to your project repository after the posted deadline. Once your slip days are exhausted, changes made to your repository after the deadline will NOT be graded!
- Lab 0 - Getting to Know You
- Lab 1 - Setting up a Virtual Machine
- Lab 2 - Remembering How to C
- Lab 3 - Tracing System Calls
- Lab 4 - Intercepting System Calls
- Lab 5 - Signals
- Lab 6 - Pipes
- Lab 7 - CPU Scheduling
- Lab 8 - Socket Chat
- Lab 9 - File Systems