Princeton University
Computer Science Department

Computer Science 318
Operating Systems

Jaswinder P. Singh

Fall 2021


Directory
General Information | Schedule | Projects | Policies

Course Summary

An introduction to operating systems, with emphasis on the fundamentals of how to design and implement an operating system. Topics include operating system structure, processes, threads, synchronizations, concurrent programming, interprocess communications, virtual memory, I/O device management, and file systems.


Administrative Information

Lectures:

Monday & Wednesday, 11:00am - 12:20pm

Precepts:

Monday, 7:30pm - 8:20pm

Tuesday, 7:30pm - 8:20pm

If you miss any lectures or precepts due to quarantining/isolation, please reach out to the TAs and JP.

Instructors:

Name Email Office hours
Prof. Jaswinder P. Singh jps@cs.princeton.edu

Graduate Teaching Assistants: TA Office hours are subject to changes, and any changes will be posted to Piazza.

Name Email Office hours
Qingchen Dang qdang@princeton.edu Mon: 9-11am / Wed: 9-11am
Ryan Torok rt3811@princeton.edu Tues: 12-2pm / Fri: 12-2pm
Julian Knodt jknodt@princeton.edu Thurs: 8:30pm - 10:30pm / Sat: 2 - 4pm

Undergraduate Teaching Assistants:

Name Email
Caio Costaccosta@princeton.edu
Edward Yangefyang@princeton.edu
Hanna Xuhcxu@princeton.edu
Jerry Huanggmhuang@princeton.edu
Rishwanth Raghurraghu@princeton.edu

A google calendar is being maintained here for convenience, but is subject to change.


Prerequisites

COS 217 & 226 or instructor's permission.


Textbook

Andrew S. Tanenbaum and Herbert Bos, Modern Operating Systems, 4th edition, Prentice Hall, 2014.


Course Reserves and Online Materials

Frank Van Gilluwe, The Undocumented PC : A Programmer's Guide to I/O, CPUs, and Fixed Memory Areas. On reserve in Engineering Library.

Tom Shanley, Protected Mode Software Architecture / MindShare, Inc. On reserve in Engineering Library.

IA-32 Intel Architecture Software Developer's Manual, Volume 3: System Programming Guide.


Announcements

The main venue for course questions and discussions will be Piazza. Enroll here.

All students need to enable their UNIX accounts. Instructions can be found here.