| Event | Topics | Notes (PS or PDF formats) | Additional notes from class |
Textbook Reading | Homeworks/Labs (out/due dates) |
| Lecture 1 | Introduction | Slides6pp Slides2pp | notes same as on the web | AOS Chapter 1 | |
| Lecture 2 | Computer Systems | Slides6pp Slides2pp | AOS Chapter 2. | Lab 1 out Feb 01, 2005- DUE in two weeks on Feb 17, sign-up at TA's office or Lab301. This Lab is individual and not group based! | |
| Lecture 3 | Computer Systems | same slides | AOS Chapter 2 | ||
| Lecture 4 | Operating System Structures | Slides6pp Slides2pp | AOS Chapter 3 | ||
| Lecture 5 | Operating System Structures | same slides | AOS Chapter 3 | HW1 available, Additional exercises recommended: 3.6, 3.7, 3.12, 3.14, 3.16, 4.2, 4.5, 4.6. Due date (for grading) before 26 February. | |
| Lecture 6 | Processes | Slides6pp Slides2pp | AOS Chapter 4 | ||
| Lecture 7 | Processes | same slides | AOS Chapter 4, discussion in class on whiteboard: An example for a C program and corresponding process was shown and implications on memory image were presented. | Lab 2 Part 1 out March 04.
Due the second week after spring break Tuesday. Lab 2 Part 2 due the third week after spring break Tuesday. |
|
| Lecture 8 | Processes, Unix System Calls | NewSlides2pp | Unix System Calls | AOS Chapter 4 and information about Unix System Calls | check the Unix calls as part of HW1! |
| Lecture 9 | Threads | Slides6pp Slides2pp | AOS Chapter 5 | Exercises recommended: 5.1, 5.2, 5.4, 5.5, 5.6, 5.9., 5.10. | |
| Lecture 10 | Java Threads | Slides4pp | online scanned copies Java threads examples from class. |
Recommended: develop a Java multithreaded example with at least two threads. For example, make the class threading examples print the producer-consumer order. | |
| Spring break | |||||
| Lecture 11 | Synchronization | Slides6pp Slides2pp | AOS Chapter 7, until 7.4 | HW2 available | |
| Lecture 12 | Synchronization, semaphores and classical problems | same slides | up to including 7.8 | For home: Check in detail the synchronization algorithms and the monitor implementation with semaphores. Can a monitor be implemented with locks only? |
|
| Lectures 13/14 | CPU scheduling | Slides6pp Slides2pp | Covered by Prof Krishna | handout from Lecture 10 AOS Chapter 6 AOS Chapter 6.1-6.5. Remaining sections are optional. 6.6-6.7 are highly recommended reading. |
Additionally: Also play with changing the priority of the threads
from above to see impact of the VM scheduler. Add Javadoc
documentation to the source code. Additional exercises: 6.3,6.4,6.7 |
| Exam Review | Review | HW2 solution available. | |||
| LAB3 available - see above | |||||
| Lecture 16 | Deadlocks | Slides6pp Slides2pp | Covered by Prof Krishna | AOS Chapter 8 | For home: construct a couple of resource allocation graphs with and without deadlocks. Write a program with semaphores that would deadlock. Write a program with monitors that would deadlock. Understand the difference between deadlock avoidance and prevention. |
| Lecture 17 | Memory Allocation | Slides6pp Slides2pp | AOS Chapter 9 | Homework 3 (memory management) out | |
| Lecture 19 | Synchronization related exercises | download programs | |||
| Lecture 20 | Virtual Memory | Slides6pp Slides2pp | AOS Chapter 10 | ||
| MAKE UP EXAM - see above | |||||
| Lecture 21 | Distributed Systems Programming | Slides6pp Slides2pp | only lecture notes | HW 4 available | |
| Lecture 22 | File Systems interface | Slides6pp Slides2pp | AOS Chapter 11 | ||
| Lecture 23 | File System implementation | Slides6pp Slides2pp | only what was covered in class | only lecture notes | Sample solution to mid-term |
| Lecture 24 | Storage | Slides6pp Slides2pp | not required | AOS Chapter 13 | |
| Lecture 25 | IO Systems | Slides6pp Slides2pp | not required | ||
| Lecture 26 | Final exam review | review document | Sample exam 2002 | Midterm 2005 solution | |
| FINAL EXAM | Closed book, 1.5 hours | ||||
| Final Exam MAKE UP | See at the top; permission from instructor required! |
Csaba Andras Moritz
Last modified: 05/20/2005