CPSC 457 will have four programming assignments. In aggregate, the assignments count 30% toward your final grade in CPSC 457. Each assignment will be graded on a percentage scale. All assignments will be equally weighted, even though they might not be of equal difficulty.
Assignments are to be done individually.
Some possible ideas for assignments are: writing a shell command interpreter; adding a new system call to the Linux kernel; implementing size-based scheduling in the Linux kernel; evaluating file system space allocation policies; designing a simple encrypted file system; and elevator scheduling policies for disk subsystems.
Assignment solutions are to be submitted directly to your assigned TA via email, on or before the stated deadline.
Assignment 1: Shell Programming and C Programming
Assignment 1 is available here. It was due on Monday, February 1 at 11:59pm.
Assignment 2: Process Management
Assignment 2 is available here. It was due on Monday, March 1 at 11:59pm.
Assignment 3: Memory Management
Assignment 3 is available now. It was due on Monday, March 22 at 11:59pm.
Assignment 4: Storage and I/O Systems
Assignment 4 is available now. It is due on Monday, April 12 at 11:59pm.
Extension granted to Wednesday, April 14 at 11:59pm.