CS 170: Operating Systems
Fall 1999
Students are responsible for checking ANNOUNCEMENTS
regularly (daily if possible).
Course Description: this is an introductory
undergraduate course in operating systems. It emphasizes the core
operating system concepts of protected kernels, processes and threads,
concurrency and synchronizations, file systems, and virtual memory.
The emphasis is on learning by doing. There will be no final. There
will be no homeworks. The course is centered around projects using the
infamous Nachos instructional operating system. For these projects,
you will add functionality to a rudimentary operating system for a
simulated MIPS-style machine. Projects will be done in two-person
groups. Demos and oral presentations will be an important and
mandatory part of each project submission. There will be a
midterm. The mid-term will be 15% of the grade; the projects will be
the other 85%.
Prerequisites: CS130A and CS154. Familiarity with
C++ (or C) and basic Unix development tools (e.g., gmake, RCS) is assumed.
Textbook: Operating System
Concepts, Fifth Edition by Avi Silberschatz and Peter Galvin.
ISBN 0-201-59113-8, Addison-Wesley, 1998 (errata for this book can be
found
here).
A copy of The C++ Programming Language by Stroustrup and the
The MIPS RISC Architecture by Kane may be
convenient/useful. As might A Quick Introduction to C++ (by Tom Anderson). Additional material will
be linked off this web page.
Links: Nachos and friends,
Projects,
Grading
Instructor: Anurag Acharya
Class hours: TR 9:30-10:45 SH 1430
Office hours: TBA
E-mail: acha@cs.ucsb.edu
Teaching Assistants:
David Watson (david@cs.ucsb.edu)
Office hours: Wednesday 4-5pm CSIL, Thursday 8-9pm CSIL
Zoran Dimitrijevic (zoran@cs.ucsb.edu)
Office hours: Wednesday 8-9pm CSIL, Friday 3-4pm CSIL
Sections and Section Leaders
Wednesday, 5-5:50pm: Phelps 1401, David Watson
Friday, 2-2:50pm: Phelps 1420, Zoran Dimitrijevic