Operating Systems Principles

Winter 2026

Important course announcements will be posted below and announced in class. You are responsible for all material that appears here and should check this page for updates frequently.

Announcements

Scroll to see more announcements. Updates will also be posted on the discussion forum.

  • Midterm Exam Thurs. 2/12 7-9PM Mon 2/2 by Nick The CS111 midterm exam is on Thursday February 12th from 7-9PM in CEMEX and Bishop Auditorium. Please see the midterm exam webpage for information about the exam, including room and seating assignments, scheduled days/times for any alternate or OAE exams, review materials and study tips. We'll also be holding a review session on Monday 2/9 from 7-8PM in 200-002 - see the midterm page for more information. You got this!

  • assign1 Grades Released Mon 2/2 by Nick Assignment 1 grades have been posted to the Gradebook page. The median score for functionality was 92/93. Nice work! Check out Ed for a debrief of the assignment.

  • assign3 Released! Wed Jan. 28 by Nick Assignment 3 has been posted on the assignments page. It is meant to reinforce the topics of multiprocessing and pipes; your task is to implement your very own shell! The assignment is due Sun Feb 9 at 11:59PM PT. You can find more details on the assignment page. Wednesday's lecture covers enough material to get started on the assignment, though we will do more practice/discusssion about multiprocess pipelines on Friday.

  • Submit Lecture Credit Selection by Friday Mon Jan. 26 by Nick By Fri 1/30 11:59PM PDT, please make your selection for how you would like the lecture credit portion of your overall course grade to be calculated. You can find more information and input your selection on the lecture credit form page: click here.

  • assign0 Grades Released Thurs Jan. 22 by Nick Assignment 0 grades and style feedback have been posted to the Gradebook page! The median score for code functionality and questions.txt responses was 78/80. Nice work! Check out Ed for a debrief of the assignment.

  • assign2 Released! Wed. Jan 21 by Nick Assignment 2 has been posted on the assignments page. It is meant to reinforce the topic of crash recovery and OS trust with exercises ranging from implementing components of a crash recovery tool to using provided tools to explore logging filesystems and crash recovery tradeoffs to exploring assumptions we make when we use operating systems. We hope you have fun with it! The assignment is due Wed 1/28 at 11:59PM PT. You can find more details on the assignment page.

  • Section Assignments PostedMon. 1/12 by Nick We have posted section assignments - you can view your assignment from the "sections" dropdown in the top toolbar. We did our best to assign everyone to one of their top choices. On this form, if you'd like, you can also join a different section with space available. Unfortunately, if a section is full, we are not able to accommodate additional students at this time, but check back later, as enrollments may shift over time. If you didn't submit section preferences, you can also join any section with space available. For CGOE students, there is an announcement on Canvas about section logistics.

    Sections start Wed., and in the first section, your TA will introduce themselves and explain everything about section and what it's all about. You can find more information about section and section policies, including makeup sections, on the course information page. We'll see you in section this week!

  • assign1 Released! Fri. Jan 9 by Nick Assignment 1 has been posted on the assignments page. It is meant to reinforce the topic of filesystems (specifically the design of the Unix V6 filesystem); your job is to implement the logic for reading from the Unix v6 filesystem. We hope you have fun with it! It is due on Friday January 23rd at 11:59pm. See the assignment page for more information. As you get started, check out our review videos on Canvas, especially on pointers and memory, as this assignment includes work with pointers and C strings.

  • Section Signups Open until Thurs. 11:59PM Mon. Jan 6 by Nick Anytime through Thursday at 11:59PM PDT, please submit your section preferences for which section you would prefer to attend this quarter. Note that preferences are not first-come first-serve; you may fill out your preferences anytime between now and Thursday at 11:59PM PDT, and you may come back to update your preferences later as well. You can access the preferences form in the "Sections" dropdown at the top of the page. For more information about sections including attendance, missing sections, and other policies, see the sections portion of our course syllabus.

  • assign0 Released! Mon. Jan 5 by Nick Assignment 0 has been posted on the assignments page. It is meant to get you up to speed with the tools, techniques and some of the C/C++ features we'll be relying on this quarter, and consists of some code reading, short answer questions, and a little code writing. We hope you have fun with it! It is due on Monday, January 12th at 11:59pm and no late submissions are accepted on this assignment (except for OAE / approved Head TA extensions). See the assignment page for more information. Also check out our course style guide for tips and guidelines on how to write code with good style!

  • Apply to CS111ACE! Mon Jan. 5 by Nick If you're looking for more practice and support as you take CS111, consider applying for CS111ACE ("CS111A")! It is a 1-unit class that is a part of ACE (Additional Courses for Engineers), a supplementary instruction program that includes weekly sections, office hours, and ACE-specific review sessions. It is done in addition to all the normal requirements for CS111, and is scheduled this quarter for Thurs. 1:30-3:20PM in Lathrop 016. Enrollment is by application, and you can find more information at this link: click here. Once enrollment decisions are made, students who are accepted will then be given a permission number to enroll on Axess. If you have questions, please email Fabio Ibanez, the ACE CA, at fabioi@stanford.edu.

  • Welcome! Sat Jan. 3 by Nick Welcome to CS111! Class starts on Monday, January 5th at 11:30AM in Hewlett 200. We are looking forward to meeting you and starting off a great quarter together! We'll have more details to come about the details of CS111 this quarter. In the meantime, please feel free to check out our FAQ. It covers questions about recorded lectures, conflicting classes, CS111ACE, and more. We hope you find it helpful! For CGOE students, we have a handout available with information about course logistics: click here.

Course Logistics

Lectures: Mon/Wed/Fri 11:30AM-12:20PM in Hewlett 200

Sections: Wed/Thu/Fri at various times; students sign up for sections after the quarter begins.

Exams:

  • Midterm Exam
    Date/Time: Thurs, February 12, 7-9PM PDT
    Location: Bishop Auditorium and CEMEX Auditorium (seating chart posted 1 week prior to exam)
    Info: midterm webpage

  • Final Exam
    Date/Time: Friday, March 20, 8:30AM-11:30AM PDT
    Location: Hewlett 200 + 201 and STLC 111 (seating chart posted 1 week prior to exam)
    Info: final exam webpage

Feedback

  • How are we doing? Submit anonymous feedback here.
  • Submit feedback about a specific piece of coursework (assignments or exams) here

Course Staff and Contact Information

For any OAE accommodations, please submit your OAE letter via our OAE accommodations form here, and the Head TA will follow up with more information. The extension request form is to request an OAE or non-OAE extension with the Head TA. The Exam Info form is to request an alternate midterm time due to an academic or University conflict where you absolutely cannot make the regularly scheduled midterm, if you need a left-handed desk in the main exam room to take the exam, or if you are a remote/CGOE student who wants to take the exam in person.

OAE Submission Form
Extension Request Form
Exam Info Form

Note that email is not intended for course material or code questions; for those questions, please take advantage of the discussion forum or helper hours!

  • grader listed at the top of your assignment grade report: for questions about assignment style or manual review grades.
  • Assignment Grading Lead TA: Usman Tariq (usman25@stanford.edu) for questions about assignment autograder test scores or other assignment grading questions.
  • Your Section TA: (see the section signup page for their email address) for questions about section attendance grades, or for section accommodations (e.g. missing a section due to extenuating circumstances).
  • Exam Logistics Lead TA: Ari Barbella-Blaha (aribarb@stanford.edu) for questions about alternate midterms or other exam scheduling questions.
  • Head TA: Cary Xiao (caryxiao+cs111@stanford.edu) for any other matters, such as questions about Office of Accessible Education accommodations or other accommodations, enrollment questions, auditing, or other matters.
  • Instructor: for private/personal matters you would prefer to discuss directly with the instructor: troccoli+cs111@stanford.edu (or troccoli@stanford.edu for non-CS111 matters).
A profile picture for Head TA Cary Xiao

Cary Xiao
(Head TA)

A profile picture for Assignment Grading Lead Usman Tariq

Usman Tariq
(Assignment Grading Lead)

A profile picture for Exam Logistics Lead Ari Barbella-Blaha

Ari Barbella-Blaha
(Exam Logistics Lead)

A profile picture for Lecture credit Lead Diego Padilla

Diego Padilla
(Lecture Credit Lead)

A profile picture for Ed Lead Febie Lin

Febie Lin
(Ed Lead)

A profile picture for TA Alex Liu

Alex Liu

A profile picture for TA An Doan

An Doan

A profile picture for TA Claire Shao

Claire Shao

A profile picture for TA Devanshu Ladsaria

Devanshu Ladsaria

A profile picture for TA June Lee

June Lee

A profile picture for TA Patrick Jovel

Patrick Jovel

A profile picture for TA Peter Benitez

Peter Benitez

A profile picture for TA Rachel Liu

Rachel Liu

A profile picture for TA Ricky Rios

Ricky Rios

A profile picture for TA Sai Bethina

Sai Bethina

A profile picture for TA Tanmay Garg

Tanmay Garg

CS111ACE CA:

A profile picture for ACE TA Fabio Ibanez

Fabio Ibanez (fabioi@stanford.edu)