CSE 120: Principles of Operating Systems (Summer I, 2012)

Instructor: Kevin Webb
Office hours: Tue 11:00 AM - Noon, Wed 1:00 PM - 2:00 PM in EBU3b 2211

Teaching Assistant: Mike Conley
Office hours: Mon 5:00 PM - 6:00 PM, Thu 2:00 PM - 3:00 PM in EBU3b B240A

Lectures: Mon, Tue, Wed, Thurs 9:30 AM - 10:50 AM, SOLIS 109
Discussion: Mon 3:30-4:50, HSS 1128A
Final Exam: Friday, August 3, 8:00 AM - 10:59 AM, SOLIS 111



This is an introductory course on the principles of operating systems. Topics include processes, scheduling, synchronization, memory management, virtual memory, file systems, I/O, protection, security, networking, and distributed systems. There is a significant systems programming component to the course, where students are required to design and implement some basic kernel functions (context switching, scheduling, synchronization) and a user-level thread package.

The structure of this course is different from most other courses at UCSD. We'll be using a teaching model called Peer Instruction, which places a stronger emphasis on classroom discussion and student interaction. This course will be podcasted, and we may occasionally pass around a microphone to capture student discussion as part of the podcast audio recording. If you do not wish to be recorded, you may decline to use the microphone.

The course is composed of the following:


Required Materials

  1. iClicker remote (Register it here!)

  2. Textbook:
    Operating System Concepts Essentials, by Silberschatz, Galvin, Gagne; Wiley, 2011
    Operating System Concepts, 8th Ed., by Silberschatz, Galvin, Gagne; Wiley, 2008

    These two books are nearly identical for our purposes. I listed the essentials version as the required text for the course because it's cheaper, but either will serve just fine.


Programming Assignments


I will drop your lowest reading quiz grade.

Having an iClicker remote is crucial for class participation. To incentivize purchasing your iClicker quickly, I will drop an additional reading quiz grade for students who use their iClicker during the first or second days of class (July 2 or 3).