CSCI 432 - Spring 2017

Operating Systems

Home | Calendar | Assignments | CS@Williams

Home

Instructor: Jeannie Albrecht
Email: jeannie@cs.williams.edu
Phone: x4251
Office: TCL 304
Office Hours: M and T 2:30p-4:00p, or by appt
Class Meeting Times: TTh 11:20a-12:35p in TCL 206 or
MTh 1:10p-2:25p in TCL 206
Experimental Textbook: Operating Systems: Three Easy Pieces,
by Remzi H. Arpaci-Dusseau and Andrea C. Arpaci-Dusseau
PDF available here (on campus only)

Course Description

This course explores the design and implementation of computer operating systems. Topics include historical aspects of operating systems development, systems programming, process scheduling, synchronization of concurrent processes, virtual machines, memory management and virtual memory, I/O and file systems, system security, os/architecture interaction, and distributed operating systems. The concepts in this course are not limited to any particular operating system or hardware platform. We will discuss examples that are drawn from historically significant and modern operating systems including Unix, Windows, Mach, and the various generations of Mac OS.

The objective of this course is threefold: to demystify the interactions between the software you have written in other courses and hardware, to familiarize you with the issues involved in the design and implementation of modern operating systems, and to explain the more general systems principles that are used in the design of all computer systems.

Policies

Course Syllabus
Department Honor Code and Computer Usage Policy