FSU COP 5611
Advanced Operating Systems (Spring 2024)
FSU COP 5611 (Spring 2024)
Advanced Operating Systems
Instructor
Andy Wang
(awang@cs.fsu.edu)
Announcements
[Jan 1] Welcome to COP 5611!
Course Material
Lecture 1 (1/9/2024)
Class canceled due to inclement weather
Lecture 2 (1/11/2024)
Course Syllabus
(PDF)
Course Information
(PPT)
Course Introduction
(PPT)
The UNIX Time-Sharing System by Ritchie and Thompson
Advanced File Systems
(PPT)
A Fast File System for UNIX
UNIX Disk Access Patterns (optional)
A File is Not a File (optional)
Lecture 3 (1/16/2024)
FFS, LFS, and RAID
(PPT)
An Implementation of a Log-Structured File System for UNIX
A Case for Redundant Arrays of Inexpensive Disks (RAID) (optional)
File System Design for an NFS File Server Appliance (optional)
A Logic of File Systems (optional)
Lecture 4 (1/18/2024)
File System Extensibility
(PPT)
File system Development with Stackable Layers
Vnodes: An Architecture for Multiple File System Types in Sun UNIX (optional)
TableFS: Enhancing Metadata Efficiency in the Local File System (optional)
Skylight: A Window on Shingled Disk Operation (optional)
BetrFS: A Right-Optimized Write-Optimized File System (optional)
Lecture 5 (1/23/2024)
F2FS: A New File System for Flash Storage (PPTX)
Nova: A Log-structured File System for Hybrid Volatile/Non-volatile Main Memories (Slides)
Aerie: Flexible File-System Interfaces to Storage-Class Memory (Slides)
Strata: A Cross Media File System (Slides)
Lecture 6 (1/25/2024)
Memory Management and Caching for File Systems
(PPTX)
Possible course projects
The Effects of Memory-Rich Environments on File System Microbenchmarks (optional)
My cache or yours? Making storage more exclusive (optional)
Lecture 7 (1/30/2024)
Threads, Events, and Scheduling
(PPT)
Lottery Scheduling: Flexible Proportional-Share Resource Management
Why Events Are a Bad Idea (for High-Concurrency Servers) (optional)
Scheduler Activations: Effective Kernel Support for the User-Level Management of Parallelism
(optional)
Interprocess Communications
(PPT)
Implementing Remote Procedure Calls
Introduction to RPC API (optional)
Interprocess Communications 2
(PowerPoint XP)
Opal: A Single Address Space System for 64-bit Architectures
The Expected Lifetime of "Single-Address-Space" Operating Systems (optional)
Anonymous RPC: Low-Latency Protection in a 64-Bit Address Space (optional)
Lecture 8 (2/1/2024)
Networks (PPTX)
Lecture 9 (2/6/2024)
Exam 1 (covers lectures 1-8; please bring your bluebook and ID)
Lecture 10 (2/8/2024)
Project proposal presentations
Lecture 11 (2/13/2024)
Operating System Organization
(PowerPoint XP)
On Micro-Kernel Construction by Jochen Liedtke
An Overview of the Spring System
Why Aren't Operating Systems Getting Faster as Fast as Hardware? by John Ousterhout
Plan 9 from Bell Labs (optional)
Making Paths Explicit in the Scout Operating System (optional)
Amoeba (optional)
Lecture 12 (2/15/2024)
Operating System Organization Continued
(PowerPoint XP)
Slacker: Fast Distribution with Lazy Docker Contaniers (PDF)
Lecture 13 (2/20/2024)
Distributed Operating Systems
(PowerPoint XP)
Chapter 1, Distributed Operating Systems by Tanenbuam and Steen (optional)
Lecture 14 (2/22/2024)
Distributed Operating Systems (Part II)
(PowerPoint XP)
World Wide Web Cache Consistency
Paxos Made Simple by Lamport (optional)
Copysets: Reducing the Frequency of Data Loss in Cloud Storage (optional)
Lecture 15 (2/27/2024)
Distributed Operating Systems (Part III)
(PowerPoint XP)
The Dangers of Replication and a Solution (optional)
Pastry: Scalable, Decentralized Object Location and Routing for Large-Scale Peer-to-Peer Systems
(optional)
The Hash History Approach for Reconiling Mutual Inconsistency (optional)
Design and Evaluation of a Continuous Consistency Model for Replicated Services (optional)
Lecture 16 (2/29/2024)
IPC in Distributed Operating Systems
(PowerPoint XP)
Time, Clocks, and the Ordering of Events in a Distributed System by Leslie Lamport
Lightweight Causal and Atomic Group Multicast
Mirage: A Kernel Implementation of Distributed Shared Memory on a Network of Personal Computers (optional)
Lecture 17 (3/5/2024)
Distributed File Systems
(PowerPoint XP)
An Overview of the Andrew File System (optional)
Lecture 18 (3/7/2024)
Exam 2 (covers lectures 11-16; posted on Canvas
Lecture 19 (3/19/2024)
Distributed File Systems II
(PowerPoint XP)
Serverless Network File Systems
Lecture 20 (3/21/2024)
The Google File System (PowerPoint XP)
OceanStore: An Architecture for Global-Scale Persistent Storage
(PowerPoint XP)
Lecture 21 (3/26/2024)
Facebook's Photo Storage (PDF)
SPOCA (Stateless, Proportional, Optimally-consistent Addressing Algorithm) (PDF)
Lecture 22 (3/28/2024)
Fast Crash Recovery in RamCloud (PowerPoint)
CORFU: A Shared Log Design for Flash Clusters (PowerPoint)
Lecture 23 (4/2/2024)
Owl: Scale and Flexibility in Distribution of Hot Content
MemLiner: Lining up Tracing and Application for a Far-Memory-Friendly Runtime
Fifo Queues are all you need for cache eviction
Lecture 24 (4/4/2024)
Operating System Security
(PowerPoint XP)
Crisis and Aftermath
When Cryptography Meets Storage (optional)
Cashtags: Protecting the Input and Display of Sensitive Data (optional)
Lecture 25 (4/9/2024)
Operating System Security (Part II)
(PowerPoint XP)
The Evolution of the Kerberos Authentication Service
Internet Privacy Enhanced Mail
Lecture 26 (4/11/2024)
Automated Worm Fingerprinting
(PowerPoint XP)
Lecture 27 (4/16/2024)
Cashtags: Protecting the Input and Display of Senstive Data (PPTX
)
Bitcoin: A Peer-to-Peer Electronic Cash System (PPTX)
Lecture 28 (4/18/2024)
Reliability
(PowerPoint XP)
Enhancing Availability and Security Through Failure Oblivious Computing
(PowerPoint)
Rx: Treating Bugs as Allergies--A Safe Method to Survive Software Failures (optional)
Lecture 29 (4/23/2024)
Project Presentations
Lecture 30 (4/25/2024)
Project Presentations
Useful Resources
Recommended Reading
Wear Leveling in SSDs Considered Harmful
Data Storage Research Vision 2025
HotRing: A Hotspot-aware In-Memory Key-value Store
Consistency-aware Durability
PCStream: Automatic Stream Allocation Using Program Contexts
Write-Optimized Dynamic Hashing for Persistent Memory
Reaping the Performance of Fast NVM Storage with uDepot
Optimizing Systems for Byte-Addressable NVM by Reducing Bit Flipping
Bitcoin: A Peer-to-Peer Electronic Cash System
The Landscape of Parallel Computing Research: A View from Berkeley
Above the Clouds: A Berkeley View of Cloud Computing
End-to-End Arguments in System Design
The Chubby Lock Service for Loosely-Coupled Distributed Systems
BigTable: A Distributed Storage System for Structured Data
MapReduce: Simplified Data Processing on Large Clusters
Spark: Cluster Computing with Working Sets
Operating System Support for Database Management
Secure Programming for Linux and UNIX HOWTO
The Tanenbaum-Torvalds Debate
The Cathedral and the Bazaar
An Evaluation of the Ninth SOSP Submission
Some Reflections on Innovation and Invention
Books
Andrew Tanenbaum and Maarten van Steen, Distributed Systems Principles and Paradigms
Mukesh Singhal and Niranjan Shivaratri, Advanced Concepts in Operating Systems
Tanenbaum, Modern Operating Systems (background)
Silberschatz, Galvin, Gagne, Operating System Concepts (background)
Gary Nutt, Operating Systems: A Modern Perspective (background)
Gary Nutt, Kernel Projects for Linux (background)
Kernighan, Ritchie, The C Programming Language (background)
Maxwell, Linux Core Kernel Commentary (background)
Corbet, Rubini, and Kroah-Hartman, Linux Device Drivers
Lions, John, Lions' Commentary on UNIX: With Source Code
On-line Resources
Newsgroup
awang@cs.fsu.edu
Last modified on: December 3, 2021