Princeton University
|
Computer Science 318
|
Fall 2016 |
An introduction to operating systems. Emphasis is 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.
Lectures: Mon & Wed 11:00-12:30, Computer Science Building 105
Precept: Mon 19:30-20:20, Computer Science Building 105
Professors:
Jaswinder P. Singh, Computer Science Building 423, Phone: 8-5329, Email: jps at cs
Office Hours: Mon 1:30 - 3 pm
Undergraduate Coordinator:
Colleen Kenny-McGuinley, Computer Science Building 210, Phone: 8-1746, Email: ckenny@cs.princeton.edu
Teaching Assistants:
Name | Room | Office hours | |
---|---|---|---|
Qizhe Cai | qizhec@cs.princeton.edu | Friend 010 | Friday 10:00am - 12:00am |
Ghassen Jerfel | gjerfel@princeton.edu | Friend 010 | Thursday 1:30pm - 3:30pm |
Pranjit Kalita | pkalita@cs.princeton.edu | Friend 010 | Saturday 3:00pm - 5:00pm |
Sophie Qiu | hqiu@princeton.edu | CS 003 | Friday 1:30pm - 3:30pm |
COS 217 and 226 or instructor's permission.
Andrew S. Tanenbaum and Herbert Bos, Modern Operating Systems, 4th edition, Prentice Hall., 2014
Van Gilluwe, Frank. The undocumented PC : a programmer's guide to I/O, CPUs, and fixed memory areas. On reserve in Engineering Library.
Shanley, Tom. Protected mode software architecture / MindShare, Inc. On reserve in Engineering Library.
IA-32 Intel Architecture Software Developer's Manual, Volume 3: System Programming Guide
The main venue for course announcements and questions will be Piazza: [Enroll in Piazza forum here]
As a backup, some course announcements may be distributed through the course's listserv: cos318@princeton.edu [subscribe here].
All students need to enable their UNIX accounts. The instructions can be found here.