CS 415

Operating Systems

Spring 2026

Course Information

This is an undergraduate-level course on the design and implementation of operating systems. In this course, we will be covering the following topics: OS structures, system call, file management, memory management, processes, process scheduling, and threading. The course aims to help students gain an understanding of the operating systems used in real-world applications.

Time: Tues/Thur 4:00pm - 5:20am PST
Location: 145 Straub Hall

Instructor

Name Office Hours Location
Suyash Gupta Thursday 10 - 11am Deschutes 334

Teaching Assistant

Name Office Hours Location
Ranjitha Rani Mon/Tue 1 - 2pm Deschutes 229
Nihal Balivada Wed/Fri 11 - 12pm Deschutes 335

Syllabus

Objectives

This is an undergraduate-level course on the design and implementation of operating systems. This course places a heavy emphasis on programming projects. The course also has an accompanying laboratory component, which is mandatory for each student. There are also readings assigned for each class and two exams. Upon successful completion of this course, a student should be able to:

TextBooks

Grading Scheme

The final grade for the course will be based approximately on the following weights:

Projects

Each students will work individually to complete three projects during the course.

The first assignment carries 5% of the grade, while the last two projects are worth 10% of the grade.

We will not teach students how to write/debug C programs during the quarter. It is a prerequisite for this course.

Exams

There will be two exams during the course. These exams will cover the mandatory readings and topics discussed in class. The first exam, midterm , will be an in-class exam. The final will be a final exam at during the University's final examination period at the end of the quarter.

Late Policy

Each person has an automatic extension of three calendar days for projects only. For instance, you can hand in one project three days late, or each of three projects one day late.

Late days are rounded up to the nearest integer. For example, a submission that is 3 hours late will count as one day late. When you hand in a late project, you must identify (1) how late this project is and (2) how many total extension days you have left. If you hand in a homework late and have used up your extension days for project, the grade will be zero.

Missed Days

Each student is allowed to miss two classes (including labs) during the quarter without facing any loss in the class participation grade.

Plagiarism

We expect each student group to work on their projects in isolation, while each student will complete the exam by themselves. You cannot copy any part of a solution that was written by another group/students, or develop your project or homework solutions together with other groups/students, or copy solutions from any unauthorized source such as the Internet. You may not look at another group/student's solution without permission from the course staff, even if you have completed your own, nor may you knowingly give your solution to another group/student or leave your solution where another group/student can see it.
Here are some examples of behavior that are inappropriate:

If your work contains any statement or code that was not written by you, you must clearly identify the derived work and cite the source. If you are paraphrasing an idea you read elsewhere, you must acknowledge the source. Using existing material without proper citation is plagiarism, a form of cheating. If there is any question about whether the material is permitted, you must get permission in advance.

It is not considered cheating to clarify vague points in the assignments, lectures, lecture notes, or to give help or receive help in using the computer systems, compilers, or other facilities.

Any violation of this policy is cheating. The minimum penalty for cheating (including plagiarism) will be a zero grade for the whole assignment; a typical penalty will be 0 on the project. Dishonesty while discussing an academic integrity issue (i.e. lying to course staff) usually results in an 'F' in the course. All violations of this collaboration policy will be referred to the appropriate University disciplinary board, with possible additional disciplinary action. For more information, see the University Policy on Academic Integrity.

If you have any question about how this policy applies in a particular situation, ask the instructors or TAs for clarification.

Schedule

Date Topic Slides
Mar 31 Overview
Apr 28 Midterm

Assignments

Name Release Date Due Data
Project 1 April 2, 2026 April 21, 2026
Project 2 April 22, 2026 May 12, 2026
Project 3 May 13, 2026 June 2, 2026