FSU COP 5611 (Spring 2018)
Advanced Operating Systems

Instructor
Andy Wang (awang@cs.fsu.edu)


Announcements

[Jan 5] Welcome to COP 5611!


Course Material

Lecture 1 (1/8/2018)
Course Syllabus (Word 2003)
Course Information (PowerPoint 2003)
Course Introduction (PowerPoint 2003)
The UNIX Time-Sharing System by Ritchie and Thompson

Lecture 2 (1/10/2018)
Advanced File Systems (PowerPoint 2003)
A Fast File System for UNIX
UNIX Disk Access Patterns (optional)
A File is Not a File (optional)

Lecture 3 (1/15/2018)
Martin Luther King, Jr. Day

Lecture 4 (1/17/2018)
FFS, LFS, and RAID (PowerPoint 2003)
An Implementation of a Log-Structured File System for UNIX
A Case for Redundant Arrays of Inexpensive Disks (RAID)
Elephant: The File System that Never Forgets (optional)
File System Design for an NFS File Server Appliance (optional)
A Logic of File Systems (optional)

Lecture 5 (1/22/2018)
File System Extensibility (PowerPoint 2003)
File system Development with Stackable Layers
Conquest: Better Performance Through A Disk/Persistent-RAM Hybrid File System
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)

Lecture 6 (1/24/2018)
Caching for File Systems (PowerPoint 2003)
Possible course projects
The Effects of Memory-Rich Environments on File System Microbenchmarks
My cache or yours? Making storage more exclusive (optional)

Lecture 7 (1/29/2018)
Threads, Events, and Scheduling (Power Point XP)
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 (PowerPoint XP)
Implementing Remote Procedure Calls
Introduction to RPC API (optional)

Lecture 8 (1/31/2018)
Interprocess Communications (continued) (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 9 (2/5/2018)
Exam 1 (covers lectures 1-8; please bring your ID and bluebook)

Lecture 10 (2/7/2018)
Project proposal presentations

Lecture 11 (2/12/2018)
Operating System Organization (PowerPoint XP)
On Micro-Kernel Construction by Jochen Liedtke
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/14/2018)
Operating System Organization Continued (PowerPoint XP)
An Overview of the Spring System

Lecture 13 (2/19/2018)
Distributed Operating Systems (PowerPoint XP)
Chapter 1, Distributed Operating Systems by Tanenbuam and Steen (optional)

Lecture 14 (2/21/2018)
Distributed Operating Systems (Part II) (PowerPoint XP)
World Wide Web Cache Consistency
Paxos Made Simple by Lamport

Lecture 15 (2/26/2018)
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/28/2018)
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/2018)
Exam 2 (covers lectures 11-16; please bring your ID and bluebook)

Lecture 18 (3/7/2018)
Distributed File Systems (PowerPoint XP)
An Overview of the Andrew File System (optional)

Lecture 19 (3/12/2018)
Distributed File Systems II (PowerPoint XP)
Serverless Network File Systems

Useful Resources

Recommended Reading
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
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: January 5, 2016