CSCI 432 - Fall 2023

Operating Systems

Home | Calendar | Assignments | CS@Williams

Home

Instructor: Jeannie Albrecht
Email: jeannie@cs.williams.edu
Phone: x4251
Office: TCL 305
Office Hours: M and W 1-2:30, by appt
Class Meeting Times: TTh 9:55-11:10a in Schow 030A
Textbook: Operating Systems: Three Easy Pieces,
by Remzi H. Arpaci-Dusseau and Andrea C. Arpaci-Dusseau
Full PDF available here (on campus only)
TA: Ye Shu, Lab hours: Sun 8-9:30pm, Mon 8-9:30pm, Wed 7-10pm in Ward lab

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, 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