|Event||Topics||Notes (PS or PDF formats)||Additional
notes from class
|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.|
|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