This page is organized by the weeks of the quarter in which lectures were give . 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.
The TA for the class will be Theano Stavrinos (theanosaurus@gmail.com). Her primary responsibilities will be handling the class projects. She will be in touch with you about these projects early in the quarter.
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.
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.
The current case of the FBI seeking to compel Apple's assistance in accessing data stored on an iPhone actually relates to issues of trusted boot, operating system security, and the use of hardware to provide privacy. Here is a brief article describing some of the technical issues related to this controversy. An important point to be aware of in this case is that the detailed particulars of a security solution make a big difference in what is and is not possible, and what can and cannot be done. The details outlined in this article are not the same for all models of iPhone, past and future. Generally, when talking about security, details matter a lot.
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.
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.
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.
Chapter 7, section 7.1. Here is a link to the PDF online version of Chapter 7.
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.
Chapter 6, section 6.1 (pages 300-321), section 6.3.4 (pages 360-362)
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).
Chapter 5, Section 5.4 (pages 242-255).
Chapter 6, section 6.2.2-6.2.9 (pages 323-347).
Since we will be having the miderm exam this week, only one lecture is assigned for the week.
The midterm exam will be on Saturday, February 6, from 1-3 PM in 4413 Boelter Hall, unless you have made prior arrangements to have it proctored at another time and place. The test will cover all material presented in lectures or in assigned readings. It will not include materials only covered in the projects. The test will consist of several (~10) short answer questions. These questions will be intended to test your ability to apply concepts and ideas from the class to problems in operating systems. It is a closed book, closed notes test. You may not use electronic devices for the test.
Here are some example midterm questions similar in style to those that will appear on the test. Answers are given on the second page.
Chapter 5, Section 5.2.5 (pages 221-222), Chapter 5, Section 5.6 (pages 273-284)
Chapter 5, Section 5.2 (pages 210-230), Chapter 4, Section 4.2 (pages 167-173)
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.
Chapter 5, Section 5.5 (pages 255-272).
Chapter 6, Section 6.3 (pages 347-362).
Chapter 2, Section 2.1 (pages 43-60)
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)