Computer Science
5204
Operating Systems
Fall 2011
The main objective of this class is to create a deeper understanding of operating systems concepts and principles, and it is particularly designed for graduate students who want to pursue systems research. The covered topics encompass classical operating and distributed systems concepts, as well as explore the state-of-the-art in operating systems research. All students are required to complete a term project, and present assigned research papers.
Instructor: E-mail: Phone: Office Hours: Meeting Time: Class Web Page: Discussion Forum: |
Dr. Ali
R. Butt butta@cs.vt.edu 1-0489 Please email for appointments outside these hours TTh 5:00pm-6:15pm in 329 McBryde http://courses.cs.vt.edu/~cs5204/fall11-butt/ Available on CS forums |
Prerequisites
This is an introductory graduate level course and is aimed
at students interested in systems research. Basic knowledge of operating
systems concepts, algorithms and data structures, and relevant programming
proficiency is assumed.
Textbook
Tanenbaum, van Steen. Distributed Systems: Principles and Paradigms.
2nd Edition
Prentice Hall.
ISBN-10: 0-132-39227-5
ISBN-13: 978-0132392273
http://www.cs.vu.nl/~steen/books/ds2/
Optional reference:
Silberschatz, Galvin, Gagne. Operating System Concepts. 7th Edition.
John Wiley & Sons, Inc. ISBN 0-471-69466-5
In addition to the textbook, research papers will also be assigned for student presentations and discussion.
Format
The course work consists of exams, student presentations, programming projects, and class participation in the discussions.
Midterm: There will be one in-class midterm based on the material (lectures/papers) covered in class.
Paper and presentation evaluations: All students are required to read and evaluate the papers that are being discussed in class in advance. A paper evaluation form is available at the class website. Your evaluation should address the questions on this form. You will submit your evaluation forms (limited to one page) at the beginning of class. In addition to evaluating the paper, you will evaluate the speakers' presentations during class and submit a short written evaluation (one for each speaker) at the end of class.
In lieu of a late policy, you will have four wildcards for both the paper and speaker evaluations. That is, you may skip the evaluations that are due on four different dates without losing any credit. You need not ask for permission to do so in advance. However, you are still responsible for the material covered in class for the purposes of exams.
Paper presentation: Every student will prepare a 25 minute presentation on an assigned research paper. Your presentation should contain two parts: one in which you present the work as if it were your own, and a second part in which you present your evaluation of the work. You will meet with the instructor or TA before your presentation to discuss your slides. You must have a complete draft of your slides ready by that time.
Project: The class includes one warm-up project, and a term-long programming project of your choice related to the topics covered in class. The warm-up project is completed individually, where as students can work in teams for the term project. The term project can take multiple forms. For instance, your team may design, prototype, and evaluate a small system that solves a distributed programming problem. Or you may design a project that evaluates an existing system's suitability for a particular purpose. Or you may add an extension to a system like Linux. You are encouraged to come up with your own ideas for a project, or choose from a list provided by the instructor.
Students will submit a 2 page project proposal that should outline the project. The proposal should explain what problem you are addressing and the relevance of that problem. You should outline what infrastructure (software and/or hardware) you will be using for that project and how you expect to evaluate your results. You will need to define what deliverables your project will have. To ensure progress towards the completion of your project or paper, your team will meet with the instructor during certain milestones, which will be posted on the class website. Those meetings are mandatory for full credit on the project.
Final Presentation: All teams are required to do a final 20 minute presentation that summarizes the results of their survey paper or programming project.
Grading
Midterm presentations |
5 |
Paper evaluation |
5 |
Research paper presentation |
20 |
Term-project |
55 |
Final project presentation |
15 |
Honor Code
All work is conducted under the rules of the university Honor Code. This code and other relevant policies are described in detail on the class web pages.