CS 170: Operating Systems
General Information
- Lectures:
Tues/Thur, 9:30--10:45AM, Building 387, Room 101
- Professor:
- Ben Zhao, ravenben at cs.ucsb.edu
Office Hours: Tues 11am-noon, Engineering I, 1151
- TA information:
- Ashwin Sampath, ashwins at cs.ucsb.edu
Office Hours: MW 3:00-4:30PM, Phelps 1413
- Wen-yen Chen, wychen at cs.ucsb.edu
Office Hours: MTu 3:20-4:50PM, Phelps 1413
- Discussion sections:
- Monday, 6:00--6:50PM, Building 932
- Friday, 1:00--1:50PM, Phelps 1420
- Topics covered:
- Introduction to operating systems
- Computer system structures
- Operating system structures
- Process management
- Threads
- CPU scheduling
- Process synchronization
- Deadlocks
- Memory management
- Virtual memory
- File systems
- Secondary storage structures
- Protection
- Security
- Advanced topics
Introduction
This course focuses on the study of Operating System design and
implementation, and serves as an introduction into the study of
computing systems. Main topics include: processes; interprocess communication and
synchronization; input-output, file systems, memory management and
networking. The class itself has two main components, a design
side that will be emphasized in lectures and an implementation side
that will be explored through several programming projects. The
programming component of the course should build upon your previous
experiences in CS130 or CS125 and give you a real taste of system
programming. You should contact the TAs for all questions
regarding the homework assignments / labs. I will hold weekly
office hours (TBD) in order to answer questions on the materials
covered in class and the exams, but simply will not have time to look
at homework or programming assignments.
I will cover all of the course material in class in a presentation
form, and will put the notes online in PDF format before the start of
each lecture. Feel free to print them out and mark your notes on
them. Doing so will save you time from copying down basic
terminology, allowing you to instead focus on understanding the
material instead of working as a recorder. We will also use
Andrew Tanenbaum's Modern Operating
Systems book as a reference (current edition is the second
edition). PLEASE finished the required reading before coming into
lecture. I will lecture assuming you have read the material, and
skipping reading assignment will just make it harder for you to keep up
in lectures. I know that textbooks these days are in general
ridiculously expensive, so I don't mind if you read the library copy or
an older edition, as long as you make sure you know the material
covered.
There is a class mailing list for CS170 here.
I will mass-subscribe everyone who is enrolled in the system as of the
first lecture. If you are added to the class after that, or if
you did not receive a welcome email from cs170-users by this weekend
(Sept. 25), please go to the website and subscribe yourself. You
can also do this if you want to have your class list email go to
another address other than your umail address.
Please monitor the mailing lists frequently, since the TAs and I will
frequently post important announcements to the list regarding changes
in schedules, homeworks, code bugs, etc.