CS 326 Operating Systems

Spring 2018

Operating systems are essential to most modern computer systems, from very small computing devices such as mobile phones and tablets to larger computers such as laptops, desktop computers, workstations, clusters, and supercomputers. An operating system has two fundamental tasks: to manage a computer’s resources (i.e., CPU cycles, memory, disk, network interface, etc.) and to provide applications with an abstract interface to these resources so that they are (relatively) easy to use.

In this course you will learn the fundamental principles of operating system design and implementation. You will learn how the principles are used in practice by writing system software and modifying components of an operating system, including the system call interface, user processes, virtual memory, and file systems.


Lecture Coordinates

MW 4:45pm – 6:25pm, LS G12
Lab Session: W 6:30pm – 8:15pm, LS G12
Q&A, Discussions: Piazza


Matthew Malensek
Office: HR 416
Hours: MF 10-11am, Th 1-2pm
Email: mmalensek@usfca.edu
Phone: (415) 422-4756

Teaching Assistants

Bindu Vasini Balasubramanian
Hours: MW 2-4pm
Email: bbalasubramanian@dons.usfca.edu

Leon Wang
Hours: T 2:25-4:25pm, Th 11:30am-12:30pm & 3:30pm - 4:30pm
Email: lwang89@dons.usfca.edu