Course Overview

This is a graduate course in the theory and practice of operating system design and implementation. We will discuss a wide variety of advanced technical concepts found in the field of operating systems, including (often somewhat older) seminal papers and more recent (hot and emerging) topics. Such topics will include memory management, storage and file systems, concurrency, virtualization, distributed systems, and mobile/embedded systems. The course focuses on advanced topics in operating systems and it is assumed that students have already taken a rigorous undergraduate course in operating systems. The course also emphasizes essential skills for a new researcher, including literature research, reading, analyzing, and discussing research papers, communicating research ideas, etc. The course also includes a semester-long project in the area of systems. The prerequisites for this course are graduate standing or consent of the instructor, an undergraduate class in operating systems, and programming experience.

The goals for each student in this course are:
  • Describe and evaluate advanced concepts in operating systems design and implementation (using course readings and evaluated via midterm and final exams).
  • Compare and contrast competing architectures and implementations of operating system components (using class discussions, evaluated via midterm and final exams).
  • Describe important historical developments in operating systems in terms of architectural philosophies, influental personalities, and well-known systems (using readings and discussions, evaluated via midterm and final exams, annotated bibliography, draft paper, and final paper).
  • Design and evaluate a small piece of operating systems research with some guidance (project milestones).
  • Effectively communicate research results, both orally and in writing (class discussions, progress reports, draft and final paper, final presentation).

The course does not use a textbook; instead, students will read a selection of research papers. Each class period will involve lecture and discussion on the papers assigned for that day. Every student must be prepared to discuss the papers assigned each class period.

Course Structure

The course will take place primarily in person, but could change to online or hybrid teaching depending on the course of the pandemic and guidance provided by university leaders. In all cases, the course will follow a flipped approach, where students will read one or more papers in preparation for each lecture and the lecture is then used to discuss certain relevant aspects and details of these papers.

Course Details:

  • Instructor: Christian Poellabauer
  • - Office hours: Mon 12-1pm, Tue 1-2pm, by appointment
    Zoom#
  • - Office: CASE 383
  • - Email: cpoellab@fiu.edu

  • Class location: CASE 135
  • Lecture times: Tue/Thu 9.30-10.45am