OPERATING SYSTEMS IICOMS E6118, Dept of Computer Science, Columbia University
Home | Lectures | Projects | Students | Discussion | Resources

GENERAL INFORMATION - http://www.cs.columbia.edu/~nieh/teaching/e6118
Meeting Times and Location: Spring 2020 T 10:10am-12:00pm Pupin 414 1st class will be Tuesday 1/28
Prerequisites: COMS W4118 Operating Systems I, proficient in C programming
Description: Study of advanced operating system topics with a focus on infrastructure technologies for enabling cloud computing, including virtual machines, containers, resource management, system software reliability and verification, security, mobile computing, and distributed systems. Course will involve readings and discussion of classic and new papers on recent developments in operating system research. A course project is required. Course will develop understanding of operating systems and distributed systems as well as project management, research methodology, and technical presentation and writing skills.

Instructor: Prof. Jason Nieh, , 212-939-7160, office hours: R1:00pm-3:00pm CSB 518.
TA: Alex Van't Hof, alexvh@cs.columbia.edu, office hours: W3:00pm-5:00pm CSB 509
Required Text: Operating Systems II Course Papers
Optional Linux Reference: Linux Kernel Development (3rd Edition), Robert Love, Addison-Wesley Professional, New York, NY, 2010 (available from Amazon.com and Columbia University Bookstore).
30%: Course presentations and participation: This course is based on a collection of journal and conference papers that describe the history and state of the art in operating systems. Students are expected to read papers before class and contribute to the class discussion. For each paper, a student will be selected to present the paper. Each paper presentation should be 25-30 minutes, including discussion. There will be 2 paper presentations per class. Presentations will be graded based on apparent understanding of the material in the paper, presentation style, and entertainment value. All students will be expected to make paper presentations. To avoid being assigned a paper that you do not want to present, you should volunteer early for your paper selection.
70%: Final project: The project is an opportunity for you to take an active part in exploring the subject area, as appropriate for an advanced course. You can choose any project you want, so long as it has something to do with operating systems. The project should be chosen so that it clearly extends your knowledge and understanding of some area of operating systems. The primary criterion for evaluating your project will be what you have learned and discovered, not the amount of code written or the number of pages of the written report. Projects are to be done in teams of your own choosing with approval of the instructor.
0%: No midterm, final, or "extra credit" work

We would like the course to run smoothly and enjoyably. Feel free to let us know what you find just, good, and interesting about the course. Let us know sooner about the reverse. See us, leave us a note, or send us email.

Jason Nieh, nieh@cs.columbia.edu