This course provides an introduction to the fundamental concepts in operating systems.
CS 310 (Data Structures) and CS 367 (Computer Systems & Programming) and CS 465 (Computer Architecture). Students are expected to be comfortable with programming in C.
The required textbook for this class is Operating Systems Concepts by Silbershatz, Galvin and Gagne (8th edition, Wiley, 2009 or 8th edition update, 2012). Distributed Systems: Concepts and Design by Coulouris, Dollimore and Kindberg (5th edition, Prentice Hall, 2011) is recommended.
Week 1: | Introduction; Processes & Threads |
Week 2 | Concurrent Processes |
Week 3: | Concurrent Processes (cont'd) |
Week 4: | CPU Scheduling & Deadlocks |
Week 5: | Memory Management & Virtual Memory |
Week 6: | Memory Management & Virtual Memory |
Week 7: | File Systems & I/O |
Week 8 | Spring Break |
Week 9 | Midterm |
Week 10: | Distributed Systems |
Week 11: | Communication in Distributed Systems |
Week 12 | Distributed File Systems |
Week 13: | Security & Protection |
Week 14: | Virtual Machines |
Week 15: | Review |
The grade for the course will be based on the following components: (i) Programming assignments (50%) (ii) Mid-term exam (20%) (iii) Final exam (30%).
All exams are closed book. The final exam will be comprehensive in nature, i.e., it will cover the whole course. In order to obtain an A, your final score should at least be 85%. A score below 50% will result in an F.
Mid-term exam: March 22 Final exam: May 10, 4:30-7:10 pm.
There will be at least three programming assignments, the first two of which will have to be completed individually by each student. The assignments will involve designing and implementing parts of an actual operating system called OS/161. You need to be relatively comfortable with programming in C to complete these assignments.
You are expected to abide by the University's honor code and the CS department's honor code and academic integity policy during the semester, i.e., collaboration on a programming assignment is unacceptable. Any violation of the honor code will result in a referral to the honor council with a recommendation that the student be awarded an F for the class.
NOTE: I will be using MOSS to detect plagiarism in the programming assignments.
Office hours will be on Thursday from 2-4 pm in my office (Room 4300, Nguyen Engineering Building), or by appointment.
All handouts and other course material will be available at the Blackboard page for the course
If you're planning to use the computers on campus for doing your projects, please obtain an Volgenau School labs Linux account.