CS 423

Operating Systems Design


Where / When: Siebel Center 1404, Mon/Wed/Fri 10:00am - 10:50am
Instructor: Adam Bates (batesa@illinois.edu)
TAs: Saad Hussain (msh5@illinois.edu)
Bo Teng (boteng1@illinois.edu)
Yisong Yue (yyue7@illinois.edu)
Office Hours: Siebel Center 4306, Mon 11:00 am - 12:00 pm (Instructor)
Siebel Center 0207, Tue 2:00 pm - 3:00 pm (Bo Teng)
Siebel Center 0207, Wed 11:00 am - 12:00 pm (Saad Hussain)
Siebel Center 0207, Thu 4:00 pm - 5:00 pm (Yisong Yue)
Schedule / Slides: link
Lecture Recordings: link
Class Discussion / Announcements: Piazza
Grades / MPs/ Homeworks: IllinoisCompass2G

Course Description

This course introduces students to the next step in operating system design (after CS 241 or equivalent). Students will understand the main operating system functions in class and analyze their implementation through a series of machine problems that require modifications to operating system code. Students will also be exposed to the concepts of virtual machines and issues of distribution such distributed files systems and map-reduce operators for distributed computation. The course will conclude with a series of advanced topics.

Please contact the instructor if you have questions regarding the material or concerns about whether your background is suitable for the course.

Recommended Textbooks

  • Operating Systems: Internals and Design Principles (8th Edition), William Stallings, 2014
  • Modern Operating Systems (4rd Edition), Andrew S. Tanenbaum, Prentice Hall, 2014
  • Operating System Concepts (9th edition), Abraham Silberschatz, Peter B. Galvin and Greg Gagne, 2012
  • Virtual Machines, James E. Smith and Ravi Nair, Elsevier / Morgan Kaufmann, 2005
  • Linux Kernel Development (3rd Edition), Robert Love, 2010


The course will involve 4 machine problems, 2 homeworks, a midterm, and a final. Graduate students have an additional pass/fail assignment. Grades will be assigned as follows:
  • Machine Problems: Four MPs will collectively account for 25% of the grade, divided into 4%, 7%, 7%, and 7%. MPs should be solved in groups of 3-4 people. No late submissions are allowed.
  • Homework: Two homeworks account for 10% of the grade. Homework 1 will test your prerequisites. Prior to the final, Homework 2 will be given to prepare you for the exam. You will need to work on homework independently. The homework is worth 5% each.
  • Midterm: An open-book midterm exam will be held in class for 25% of the grade.
  • Final: A final exam with be held last day of class, for 30% of the grade.
  • Extra Assignment: An extra group assignment of 3 people will be required of graduate students (taking the course for 4 credits) on an operating systems related topic. It is pass/fail.
  • Participation: Accounts for 10%. Includes quizzes and class discussion (either in person or online).

Course Expectations

The expectations for the course are that students will attend every class, do any readings assigned for class, and actively and constructively participate in class discussions. Class participation will be a measure of contributing to the discourse both in class, through discussion and questions, and outside of class through contributing and responding to the Piazza forum.

Out of respect for your classmates, I ask that you turn off all laptops, tablets, and phone screens for the duration of each class!

More information about course requirements will be made available leading up to the start of classes

Graduate Student Requirements

The graduate section for CS423 is a 4 credit course, and therefore additional work is expected over undergraduate students. An extra group assignment of 3 people will be required of graduate students on an operating systems related topic. It is pass/fail. Graduate students will be called upon to present some of the Advanced Topics material for the class late in the semester.

Academic Integrity Policy

The University of Illinois at Urbana-Champaign Student Code should also be considered as a part of this syllabus. Students should pay particular attention to Article 1, Part 4: Academic Integrity. Read the Code at the following URL: http://studentcode.illinois.edu/.

Academic dishonesty may result in a failing grade. Every student is expected to review and abide by the Academic Integrity Policy: http://studentcode.illinois.edu/. Ignorance is not an excuse for any academic dishonesty. It is your responsibility to read this policy to avoid any misunderstanding. Do not hesitate to ask the instructor(s) if you are ever in doubt about what constitutes plagiarism, cheating, or any other breach of academic integrity.

Students with Disabilities

To obtain disability-related academic adjustments and/or auxiliary aids, students with disabilities must contact the course instructor and the as soon as possible. To insure that disability-related concerns are properly addressed from the beginning, students with disabilities who require assistance to participate in this class should contact Disability Resources and Educational Services (DRES) and see the instructor as soon as possible. If you need accommodations for any sort of disability, please speak to me after class, or make an appointment to see me, or see me during my office hours. DRES provides students with academic accommodations, access, and support services. To contact DRES you may visit 1207 S. Oak St., Champaign, call 333-4603 (V/TDD), or e-mail a message to disability@uiuc.edu. http://www.disability.illinois.edu/.

Emergency Response Recommendations

Emergency response recommendations can be found at the following website: http://police.illinois.edu/emergency-preparedness/. I encourage you to review this website and the campus building floor plans website within the first 10 days of class. http://police.illinois.edu/emergency-preparedness/building-emergency-action-plans/

Family Educational Rights and Privacy Act (FERPA)

Any student who has suppressed their directory information pursuant to Family Educational Rights and Privacy Act (FERPA) should self-identify to the instructor to ensure protection of the privacy of their attendance in this course. See http://registrar.illinois.edu/ferpa for more information on FERPA.