This is the project course for CS 4410. Students will learn about operating systems concepts through several bi-weekly assignments. Concepts covered include threading, synchronization, filesystems, caching and testing. The projects will provide a hands-on experience with implementing operating system functionality, as well as low level programming with C.

Prerequisites: In order to enroll in CS 4411, you must have either successfully completed CS 4410 or be currently enrolled in CS 4410. If you are erolled in 4411 and not co-enrolled in 4410, be prepared to provide us with the year, semester, and final grade in which you took CS 4410.
Audit: Auditing CS 4411 is not an option. There are too few benefits to spectating in a practicum.


Class meets on most Fridays from 2:30-3:20pm in Phillips Hall 101. Please see the class schedule for dates and topics.


  • 99% of all matters can be handled on Piazza:
    • 4411 Piazza
    • Private messages on Piazza should be visible to all instructors and staff. Do not create private piazza messages visible by only a subset of the course staff.
  • Please do not contact any course staff or instructors via their email addresses, facebook, texting, etc. for matters concerning this course.


  • This class consists entirely of 6 projects, 1 of which is a short introductory project.
  • All projects except for the first introductory project (P0) must be completed in teams of two.
  • Each team will have a total of 3 slip days, at most 1 of which can be used per project.
  • Note that CS 4410 and CS 4411 are completely disjoint in terms of both assignments and grades.