EECS750 Advanced Operating Systems

Main | Schedule

(Tentative) Schedule

NOTE: Schedule is subject to change.

Week Date Lecture Reading Assignments Project & etc.
1 8/23
8/25
8/27
Introduction
  • The UNIX Time-Sharing System, SOSP, 1973. (Optional)
  • N/A
    2 8/30
    9/1
    9/3
    CPU Scheduling

  • Borrowed-Virtual-Time (BVT) scheduling: supporting latency-sensitive threads in a general-purpose scheduler, SOPP, 1999
  • (Optional) Inside the Linux 2.6 Completely Fair Scheduler, IBM developerWorks, 2009
  • 3 9/6
    9/9
    9/11
    NO CLASS
    Multicore Scheduling

  • Efficient and scalable multiprocessor fair scheduling using distributed weighted round-robin, PPoPP, 2009
  • The Linux scheduler: a decade of wasted cores, EuroSys, 2016
  • 4 9/13
    9/15
    9/17
    Virtualization
  • Xen and the Art of Virtualization, SOSP, 2003
  • LibrettOS: A Dynamically Adaptable Multiserver-Library OS, VEE, 2020
  • 5 9/20
    9/22
    9/24
    Virtual Memory
  • Making Huge Pages Actually Useful, ASPLOS, 2018
  • A Case for Richer Cross-layer Abstractions: Bridging the Semantic Gap with Expressive Memory. ISCA, 2018
  • 6 9/27
    9/29
    10/1
    Memory Management

  • Deterministic Memory Abstraction and Supporting Multicore System Architecture. ECRTS, 2018
  • 7 10/4
    10/6
    10/8
    Memory Management
    Protection & Security
  • E-WarP: A System-wide Framework for Memory Bandwidth Profiling and Management, RTSS, 2020

  • Meltdown: Reading Kernel Memory from User Space, USENIX Security, 2018
  • 8 10/11
    10/13
    10/15
    NO CLASS
    Protection & Security


  • Spectre Attacks: Exploiting Speculative Execution, IEEE Security and Privacy (S&P), 2018
  • Flipping Bits in Memory Without Accessing Them: An Experimental Study of DRAM Disturbance Errors. ISCA, 2014
  • 9 10/18
    10/20
    10/22

    Heterogeneous Systems
  • Exploiting the DRAM rowhammer bug to gain kernel privileges, 2015
  • Dissecting the CUDA scheduling hierarchy: A Performance and Predictability Perspective, RTAS, 2020
  • 10 10/25
    10/27
    10/29
    Heterogeneous Systems
    Kernel Programming
    Midterm
  • Pipelined Data-Parallel CPU/GPU Scheduling for Multi-DNN Real-Time Inference. RTSS, 2019
  • Linux Devices Drivers, 3rd Edition

  • 11 11/1
    11/3
    11/5
    Student Presentations
  • Review
  • Time Protection: the Missing OS Abstraction, EeroSys, 2019 (Max, 11/3)
  • Donky: Domain Keys - Efficient In-Process Isolation for RISC-V and x86, USENIX Security, 2020 (Drew, 11/5)
  • 12 11/8
    11/10
    11/12
    Student Presentations
  • Lottery Scheduling: Flexible Proportional-Share Resource Management, OSDI, 1994. ( Ted, 11/8)
  • Kleio: A Hybrid Memory Page Scheduler with Machine Intelligence, HPDC, 2019 (Bhuneshwari, 11/10)
  • Popcorn: Bridging the Programmability Gap in Heterogeneous-ISA Platforms. EuroSys, 2015 ( Matthew, 11/12 )
  • 13 11/15
    11/17
    11/19
    Student Presentations
    Term Project

  • An Open Source FPGA-Optimized Out-of-Order RISC-V Soft Processor, ICFPT, 2019, (Earving, 11/15)
  • NeuOS: A Latency-Predictable Multi-Dimensional Optimization Framework for DNN-driven Autonomous Systems, ATC, 2020. (Suhaib, 11/17)
  • Individual meetings
  • 14 11/22
    11/24
    11/26
    Term Project
    NO CLASS (Thanksgiving)
    NO CLASS (Thanksgiving)
  • Individual meetings
  • 15 11/29
    12/1
    12/3
    Term Project
  • Individual meetings
  • 16 12/6
    12/8
    Term Project (Final week)
  • NO CLASS
  • Term project presentation
  • Suggested Papers

    CPU Scheduling

    Virtualization

    Memory Management

    Protection & Security

    Heterogeneous Computing

    Storage systems

    Energy

    Others