Information for UCLA MS On-Line CS111, Winter 2014 --- Operating System Principles

This page is organized by the weeks of the quarter in which lectures were given. The weeks are in inverse order, on the assumption you will most often be looking for the most recent week.

This class will be taught by Peter Reiher. The textbook is Principles of Computer System Design, by Jerome Saltzer and Frans Kaashoek. Assigned readings are from this book, unless otherwise indicated. Some chapters of this textbook are not in the hard copy version, but are only available on-line. For these readings, I will provide a URL.

I will be lecturing on these subjects during the class.

FINAL EXAM

The final exam for this class will be held Saturday, March 15, from 1-4 PM. The location has not yet been set, but I will announce it here once I know it.

This exam will be somewhat different than the midterm exam. There will be seven questions on it. You will be allowed to answer any four of those questions of your own choosing. The questions will be SUBSTANTIALLY more difficult than those on the midterm, and will typically require you to display a high degree of understanding of concepts covered in the class. Most of them will require you to apply such concepts to a new problem not discussed in the class.

The test will be closed book, closed notes. You will not be allowed to use electronic devices. You will have the full three hour period to complete the test.

I will post a couple of sample questions here next week.

TA and Labs

Because of low enrollment, no TA is assigned to this class. Thus, all assignments, including the labs, will be handled by the instructor.

Week 10 (March 10 - March 16)

Lecture 18:

Assigned readings:

Chapter 11, Overview and section 11.1, pages 11-4 to 11-28.

These readings are part of the online textbook and can be found here.

Slides:

Lecture 18, Part 1.

Lecture 18, Part 2.

Lecture 18, Part 3.

Lecture 18, Part 4.

Lecture 19:

Assigned readings:

Chapter 11, section 11.2, pages 11-28 to 11-34.

Chapter 11, section 11.4, pages 11-49 to 11-53.

Chapter 11, section 11.6.3, pages 11-76 to 11-80.

These readings are part of the online textbook and can be found here.

Trusted Platform Module (TPM) Summary.

Slides:

Lecture 19, Part 1.

Lecture 19, Part 2.

Lecture 19, Part 3.

Lecture 19, Part 4.

Week 9 (March 3 - March 9)

Homework Assignment

Minilab 2 is due on March 14, the end of the 10th week of classes. The lab skeleton and notes are on the Courseweb site. Here is a page describing the lab.

Also, be aware that you need to perform one of the design projects. You can find information about your options here.

Lecture 16:

Assigned readings:

Chapter 3, section 3.2, pages 132-138.

Chapter 4, section 4.5, pages 184-195.

A Survey of Distributed File Systems, M. Satyanarayanan, Annual Review of Computer Science, 1990. You only need to read sections 1, 2, 3.1, and 3.3.

Slides:

Lecture 16, Part 1.

Lecture 16, Part 2.

Lecture 16, Part 3.

Lecture 17:

Assigned readings:

Fallacies of Distributed Computing Explained, Amon Rotem-Gai-Oz.

What Cloud Computing Really Means, Eric Knorr, Galen Gruman, Infoworld.

Notes on distributed operating systems, Peter Reiher.

Slides:

Lecture 17, Part 1.

Lecture 17, Part 2.

Lecture 17, Part 3.

Week 8 (February 24 - March 2)

Homework Assignment

Lab 4 is due on February 28. The lab skeleton and notes are on the Courseweb site. Here is a page describing the lab.

Lecture 14:

Assigned readings:

Chapter 2, section 2.5.

Chapter 8, Sections 8.1.1, 8.2.1, and 8.5.4. Here is a link to the PDF online version of Chapter 8.

Slides:

Lecture 14, Part 1.

Lecture 14, Part 2.

Lecture 14, Part 3.

Lecture 15:

Assigned readings:

Chapter 7, section 7.1. Here is a link to the PDF online version of Chapter 7.

Slides:

Lecture 15, Part 1.

Lecture 15, Part 2.

Lecture 15, Part 3.

Week 7 (February 17 - February 23)

Lecture 12:

Assigned readings:

An Introduction to Device Drivers,", Chapter 1 of "Linux Device Drivers," by Jonathan Corbet, Alessandro Rubini, and Greg Kroah-Hartman, published by O'Reilly, 2005..

Understanding Modern Device Drivers, Asim Kadaf and Michael M. Swift, Proceedings of the seventeenth international conference on Architectural Support for Programming Languages and Operating Systems. 2012.

Slides:

Lecture 12, Part 1.

Lecture 12, Part 2.

Lecture 12, Part 3.

Lecture 12, Part 4.

Lecture 13:

Assigned readings:

Chapter 6, section 6.1 (pages 300-321), section 6.3.4 (pages 360-362)

Slides:

Lecture 13, Part 1.

Lecture 13, Part 2.

Lecture 13, Part 3.

Lecture 13, Part 4.

Week 6 (February 10 - February 16)

Lecture 10:

Assigned readings:

Chapter 6, Sections 6.2-6.2.1 (pages 321-323).

Dynamic Storage Allocation: A Survey and Critical Review, by Paul Wilson, Mark Johnstone, Michael Neely, and David Boles. This is a very long paper. You are only required to read the following sections of it:

Sections 1.1-1.3 and section 2-21 (pages 6-13) and sections 3.3 and 3.4 (pages 42-45).

Slides:

Lecture 10, Part 1.

Lecture 10, Part 2.

Lecture 10, Part 3.

Lecture 11:

Assigned readings:

Chapter 5, Section 5.4 (pages 242-255).

Chapter 6, section 6.2.2-6.2.9 (pages 323-347).

Slides:

Lecture 11, Part 1.

Lecture 11, Part 2.

Lecture 11, Part 3.

Lecture 11, Part 4.

Week 5 (February 3 - February 9)

Since the midterm will be this Saturday, there is only lecture assigned for this week.

Lecture 9:

Assigned readings:

Chapter 5, Section 5.2.5 (pages 221-222), Chapter 5, Section 5.6 (pages 273-284)

Slides:

Note: Unlike other lectures, there is no title slide or outline at the front of part 1 of lecture 9, either in the taped version or the slides posted here.

Lecture 9, Part 1.

Lecture 9, Part 2.

Lecture 9, Part 3.

Week 4 (January 27 - February 2)

Slides:

Lecture 7:

Assigned readings:

Chapter 5, Section 5.2 (pages 210-230), Chapter 4, Section 4.2 (pages 167-173)

Slides:

Lecture 7.

Lecture 8:

Assigned readings:

Chapter 9, Section 9.1-9.1.7 (pages 9-1 through 9-20). Note: This is one of the chapters that is not included in the print version of the book, but is only available on line. Here is a link to the PDF online version.

Slides:

Lecture 8.

Week 3 (January 20 - January 26)

Lecture 5

Assigned readings:

Chapter 5, Section 5.5 (pages 255-272).

Slides:

Lecture 5.

Lecture 6:

Assigned readings:

Chapter 6, Section 6.3 (pages 347-362).

Slides:

Lecture 6.

Week 2 (January 13 - January 19)

Lecture 3

Assigned readings:

Chapter 2, Section 2.1 (pages 43-60)

Slides:

Lecture 3.

Lecture 4:

Assigned readings:

Chapter 4, Section 4.1-4.1.2 (pages 147-162), Chapter 5, Section 5.1 (pages 199-210), Section 5.3-5.3.4 (pages 230-237)

Slides:

Lecture 4.

Week 1 (January 6 - January 12)

Lecture 1:

Assigned readings:

Chapter 1 (pages 1-40).

Slides:

Lecture 1.

Lecture 2:

Assigned readings:

Chapter 1 (pages 1-40). That's the same reading as for lecture 1. I assigned it for that lecture by mistake. The quiz preceding lecture 2 will be on this reading.

Slides:

Lecture 2.

Week 4 (January 27 - February 2)

Lab assignment

Lab 1b is due on January 31. The materials for lab 1b are included in the ones for lab1a.

Slides:

Lecture 7:

Assigned readings:

Chapter 5, Section 5.2 (pages 210-230), Chapter 4, Section 4.2 (pages 167-173)

Slides:

Lecture 7, Part 1.

Lecture 7, Part 2.

Lecture 7, Part 3.

Lecture 8:

Assigned readings:

Chapter 9, Section 9.1-9.1.7 (pages 9-1 through 9-20). Note: This is one of the chapters that is not included in the print version of the book, but is only available on line. Here is a link to the PDF online version.

Slides:

Lecture 8, Part 1.

Lecture 8, Part 2.

Lecture 8, Part 3.

Week 3 (January 20 - January 26)

Lecture 5:

Assigned readings:

Chapter 5, Section 5.5 (pages 255-272)

Slides:

Lecture 5, Part 1.

Lecture 5, Part 2.

Lecture 5, Part 3.

Lecture 6:

Assigned readings:

Chapter 6, Section 6.3 (pages 347-362)

Slides:

Lecture 6, Part 1.

Lecture 6, Part 2.

Lecture 6, Part 3.

Week 2 (January 13 - January 19)

Lab assignment

The Weensie OS 1 assignment is now available. It must be done by January 24. The tar file for the lab is available from our Courseweb page. The Weensie OS assignments are best run from a virtual environment. Instructions on setting up a suitable virtual environment and running the assignments in it are here.

Lecture 3:

Assigned readings:

Chapter 2, Section 2.1 (pages 43-60)

Slides:

Lecture 3, Part 1.

Lecture 3, Part 2.

Lecture 3, Part 3.

Lecture 4:

Assigned readings:

Chapter 4, Section 4.1-4.1.2 (pages 147-162), Chapter 5, Section 5.1 (pages 199-210), Section 5.3-5.3.4 (pages 230-237)

Slides:

Lecture 4, Part 1.

Lecture 4, Part 2.

Lecture 4, Part 3.

Week 1 (January 6 - January 12)

Lecture 1:

Assigned readings:

No reading assigned for lecture 1.

Slides:

Lecture 1, Part 1.

Lecture 1, Part 2.

Lecture 1, Part 3.

Lecture 2:

Assigned readings:

Chapter 1 (pages 1-40). Remember, before you start viewing Lecture 2, you will need to perform a short quiz based on this reading. It will be easy if you've read and understood the material, and probably hard if you haven't.

Slides:

Lecture 2, Part 1.

Lecture 2, Part 2.

Lecture 2, Part 3.