CS 4410 covers systems programming and introductory operating system design and implementation. We will cover the basics of operating systems, namely structure, concurrency, scheduling, synchronization, memory management, filesystems, security and networking.
Prerequisites: CS 4410 is open to any undergraduate who has mastered the material in CS3410/ECE3140. You may want to review the background document to make sure you remember everything. Students enrolled in 4410 can also choose to take CS 4411 and complete the practicum project.


Lectures take place on Tuesdays and Thursdays 2:55-4:10 in 155 Olin Hall.
Attendance at each lecture is expected.


  • 99% of all matters can be handled on Piazza:
    • 4410 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.
  • For time sensitive matters, please email cs4410-staff.
  • For sensitive matters, please email cs4410-prof or -- when possible -- come to instructor office hours.
  • Please do not contact any course staff or instructors via their email addresses, facebook, texting, etc. for matters concerning this course.


  • 3 programming assignments, each counting the same:
    • Build a "shell"
    • "Easy" synchronization problems
    • "Hard" synchronization problems
  • 3 or 4 reading assignments:
    • Easy but seminal papers in systems
    • Write a 200-300 word report for each
      • What did you like/learn?
      • What did you dislike/not understand?
    • Together count as much as one programming assignment
  • Late policy:
    • Each person has a total of 4 slip days
    • Max of 2 slip days for each assignment
    • Cannot submit more than 48 hours late
  • Academic integrity:
    • All submitted work must be your own
    • Do not look at code that is not yours
    • Do not share your code with anybody
    • OK to discuss concepts together
    • White/black board rule (work, erase, wait, code)
    • Violations will be prosecuted


  • Each exam is two hours. Exam times have been set by the university and are non-negotiable:
    • Prelim 1 is October 10
    • Prelim 2 is November 19, 5:15pm-7:15pm in Uris G01. For those having a conflict, a makeup exam is available at 7:30pm in Statler 185 (Statler Auditorium) by permission only
    • Final Exam is December 15 @ 7pm (no make-up)
  • Closed book exams. No calculators, phones, etc.
  • Bring your student ID to all of your exams. We will be taking attendance by having you swipe it through a card reader upon arrival.
  • We will drop the lowest of your 3 exam scores. If you cannot attend an exam for any reason, this is the score we will drop.
  • Semester grade: 50% homework, 50% exams
  • If you require exam accommodations, please contact Coralia Torres (ct635 in 401 Gates Hall). Be sure to tell her which course you are enrolled in and attach the necessary documentation of the accommodation. We are happy to meet the needs of our students in this matter.