CS 111

CS 111: Operating Systems Principles

Course Description

This class introduces the basic facilities provided by modern operating systems. The course divides into three major sections. The first part of the course discusses concurrency: how to manage multiple tasks that execute at the same time and share resources. Topics in this section include processes and threads, context switching, synchronization, scheduling, and deadlock. The second part of the course addresses the problem of memory management; it will cover topics such as linking, dynamic memory allocation, dynamic address translation, virtual memory, and demand paging. The third major part of the course concerns file systems, including topics such as storage devices, disk management and scheduling, directories, protection, and crash recovery. After these three major topics, the class will conclude with a few smaller topics such as flash memory and virtual machines.

General Information

Lectures
MWF 11:30-12:20, Skilling Auditorium  (PollEverywhere)
Sections
TBD
Office Hours
Midterm Exam
Thursday, May 9, 7:30-9:00pm (420-040)
Final Exam
Wednesday, June 12, 8:30-11:30am (Location TBD)

Upcoming Lectures

Upcoming Assignments

Course Staff

John Ousterhout
Instructor
ouster@cs
Emma Escandon
Emma Escandon
Course Assistant
emmaee@stanford
Yash Govil
Yash Govil
Course Assistant
ygovil@stanford
Priya Khandelwal
Priya Khandelwal
Course Assistant
priyak9@stanford
Sumer Kohli
Sumer Kohli
Course Assistant
sumerk@stanford
Michela Marchini
Michela Marchini
Course Assistant
marchini@stanford
Shruti Verma
Shruti Verma
Course Assistant
shrutive@stanford.edu

Add ".stanford.edu" or ".edu" to all e-mail addresses above. For most issues, the best way to contact staff is to post a question on Ed Discussions rather than emailing a particular person.

Useful Links

Assignment feedback survey
Your personal gradebook
Tips for debugging with gdb
Useful C++ classes
Honor Code policy for this class

Old Exams:

2023 Final: exam,  solution
2023 Midterm: exam,  solution
2022 Final: exam,  solution
2022 Midterm: exam,  solution
2021 Midterm #2: exam,  solution
2021 Midterm #1: exam,  solution