Course Syllabus
Please note that some content linked on this page may only be available to registered students.
Course Introduction
Operating Systems II explores the internals of operating systems including virtualization, concurrency, and persistence. We also study the principles of computer operating systems like concurrent processes, memory management, job scheduling, multiprocessing, file systems, performance evaluation, and networking.
What CS 444 is about
We will learn fundamental concepts of operating systems by building our own operating system. In particular, Labs are based on JOS, an educational OS project, and will build it starting from booting (lab1), to virtual memory (lab2), to process (lab3), and finally to multi-tasking (lab4). We will also covers concurrency issues in systems by learning on how to implement locks and other synchronization mechanisms and how to resolve deadlock issues. This course borrows lots of materials from MIT's 6.828, the original course that developed JOS. It also borrows materials from CS3210 of the Georgia Institute of Technology, CSE 451 of the University of Washington and OSU CS444 taught by Dr. Yeongjin JangThe prerequisites for this course are:
- Computer Architecture and Assembly Language (CS 271 at OSU) or ECE 375
- Operating Systems I (CS 344 at OSU)
- Linux System Administration (CS 312 at OSU, not required but recommended)
Meet the Instructor
Eric Muhati
Communication Policy
Please post all course-related questions in the Ed Discussions discussion boards so that the whole class may benefit from our conversations. Not all posts require a reply from the instructor or learning assistants and often it is better for students to work on an answer to a question themselves, helping cement understanding or locate resources to answer questions.
To contact the learning assistants, open Canvas Inbox, compose a new message, select this course, then next to the ‘To’ box click the address book, select “Teaching Assistants”, then choose the name(s) of learning assistants you wish to contact.
Please DM in Teams or email the instructor only for matters of a personal or private (grading) nature. The instructor or a learning assistant will reply to most course-related questions within 48 hours.
If there are questions about grading, please contact your assigned grader first but feel free to reach out to an instructor directly if there are still questions afterward.
Office Hours Schedule
See the course home page for list of office hours.
Below is a list of the instructional staff and grading assignments.
Name | Role | Grading range (last name) | |
Eric Muhati | Instructor | Eric.Muhati@oregonstate.edu | TBD |
Jonathan Macias | GTA | macijona@OregonState.edu | TBD |
Mitanshu Gada | GTA | gadam@oregonstate.edu | TBD |
The best place to ask questions and get help is on Ed discussions or Teams. If you'd like direct, personal help, our Office Hours for this course will be held on our Teams channel or on Zoom. The up to date list of office hours is provided on the Home page.
Note: Office hours will not be held on days that the University has off (holidays, inclement weather days, etc.). The Instructors and TAs reserve the right to cancel or move office hours, but will give appropriate warning, if possible.
Teams
Office Hours are held via Teams (https://teams.microsoft.com). See the Start Here - Teams page for access code.
Discussion Board
Discussion Board via Ed Discussions (https://edstem.org/us/dashboard).
General Resources
eCampus Resources (Links to an external site.) - These resources will be useful for all of your classes throughout the term... Library Information, Helpdesk Contact Info, Canvas Tech Support, etc...
What you will need for CS 444
Course Summary:
Date | Details | Due |
---|---|---|