# Operating Systems Papers - Index

## Meta stuff

* Reading lists
  * [CS 736 @ UW-Madison: Advanced Operating Systems](/earlier-readings-and-notes/index/cs-736-uw-madison-fall-2020-reading-list.md)
  * [CS 262a @ Berkeley: Advanced Topics in Computer Systems](https://ucbrise.github.io/cs262a-fall2020/)
  * [OSTEP (Operating Systems: Three Easy Pieces)](http://pages.cs.wisc.edu/~remzi/OSTEP/) is written by the brilliant Remzi & Andrea and each chapter is followed by a lovely reading list about the topic covered in the chapter.
  * Some reading notes by individuals:
    * [Zeyuan Hu's paper reading notes](https://zhu45.org/), with a focus on database systems
    * [An open-source reading notes in CN](https://github.com/dyweb/papers-notebook), with a focus on virtualization and distributed systems

![Source: http://pages.cs.wisc.edu/\~remzi/OSTEP/](/files/-MROIqbSLWD5Q1pCzp-D)

* Some other stuff
  * [CS 262a @ Berkeley Fall 2020 class summary slides](https://ucbrise.github.io/cs262a-fall2020/notes/26-Class-Summary.pdf)
  * [Systems Benchmarking Crimes](https://www.cse.unsw.edu.au/~gernot/benchmarking-crimes.html)

## Table of Contents

### File and Storage Systems

| Title                                                                                                                                                                                                                                          | Venue                                    |
| ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------- |
| [FFS: A Fast File System for UNIX](/earlier-readings-and-notes/index/ffs-a-fast-file-system-for-unix.md)                                                                                                                                       | ACM Transactions on Computer Systems ‘84 |
| [NFS: Sun's Network File System](/earlier-readings-and-notes/index/nfs-suns-network-file-system.md)                                                                                                                                            | USENIX '86                               |
| [RAID: A Case for Redundant Arrays of Inexpensive Disks](/earlier-readings-and-notes/index/raid-a-case-for-redundant-arrays-of-inexpensive-disks.md)                                                                                           | SIGMOD ‘88                               |
| [LFS: The Design and Implementation of a Log-Structured File System](/earlier-readings-and-notes/index/lfs-the-design-and-implementation-of-a-log-structured-file-system.md)                                                                   | ACM Transactions on Computer Systems ‘92 |
| [SnapMirror: File-System-Based Asynchronous Mirroring for Disaster Recovery](/earlier-readings-and-notes/index/snapmirror-file-system-based-asynchronous-mirroring-for-disaster-recovery.md)                                                   | FAST '02                                 |
| [Venti: A New Approach to Archival Storage](/earlier-readings-and-notes/index/venti-a-new-approach-to-archival-storage.md)                                                                                                                     | FAST '02                                 |
| [ARC: A Self-Tuning, Low Overhead Replacement Cache](/earlier-readings-and-notes/index/arc-a-self-tuning-low-overhead-replacement-cache.md)                                                                                                    | FAST '03                                 |
| [RDP: Row-Diagonal Parity for Double Disk Failure Correction](/earlier-readings-and-notes/index/rdp-row-diagonal-parity-for-double-disk-failure-correction.md)                                                                                 | FAST '04                                 |
| [Data Domain: Avoiding the Disk Bottleneck in the Data Domain Deduplication File System](/earlier-readings-and-notes/index/data-domain-avoiding-the-disk-bottleneck-in-the-data-domain-deduplication-file-system.md)                           | FAST '08                                 |
| [Mnemosyne: Lightweight Persistent Memory](broken://pages/-MQduO-uYpAkF3YaRyBI)                                                                                                                                                                | ASPLOS '11                               |
| [A File is Not a File: Understanding the I/O Behavior of Apple Desktop Applications](/earlier-readings-and-notes/index/a-file-is-not-a-file-understanding-the-i-o-behavior-of-apple-desktop-applications.md)                                   | SOSP '11                                 |
| [OptFS: Optimistic Crash Consistency](/earlier-readings-and-notes/index/optfs-optimistic-crash-consistency.md)                                                                                                                                 | SOSP '13                                 |
| [All File Systems Are Not Created Equal: On the Complexity of Crafting Crash-Consistent Applications](/earlier-readings-and-notes/index/all-file-systems-are-not-created-equal-on-the-complexity-of-crafting-crash-consistent-applications.md) | OSDI '14                                 |
| [The Unwritten Contract of Solid State Drives](/earlier-readings-and-notes/index/the-unwritten-contract-of-solid-state-drives.md)                                                                                                              | EuroSys '17                              |
| [From WiscKey to Bourbon: A Learned Index for Log-Structured Merge Trees](/earlier-readings-and-notes/index/from-wisckey-to-bourbon-a-learned-index-for-log-structured-merge-trees.md)                                                         | OSDI '20                                 |
| [CheckFreq: Frequent, Fine-Grained DNN Checkpointing](/machine-learning-systems/machine-learning-systems-index/checkfreq-frequent-fine-grained-dnn-checkpointing.md)                                                                           | FAST '21                                 |

### Process Synchronization and Scalability ( 🥵 )

| Title | Venue |
| ----- | ----- |
|       |       |

### Scheduling

| Title                                                                                                                                                                                                                            | Venue          |
| -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------- |
| [Scheduler Activations: Effective Kernel Support for the User-Level Management of Parallelism](/earlier-readings-and-notes/index/scheduler-activations-effective-kernel-support-for-the-user-level-management-of-parallelism.md) | ACM SIGOPS '91 |
| [Lottery Scheduling: Flexible Proportional-Share Resource Management](/earlier-readings-and-notes/index/lottery-scheduling-flexible-proportional-share-resource-management.md)                                                   | OSDI '94       |
| [Resource Containers: A New Facility for Resource Management in Server Systems](/earlier-readings-and-notes/index/resource-containers-a-new-facility-for-resource-management-in-server-systems.md)                               | OSDI '99       |
| [The Linux Scheduler: A Decade of Wasted Cores](/earlier-readings-and-notes/index/the-linux-scheduler-a-decade-of-wasted-cores.md)                                                                                               | EuroSys '16    |
| [Monotasks: Architecting for Performance Clarity in Data Analytics Frameworks](/earlier-readings-and-notes/index/monotasks-architecting-for-performance-clarity-in-data-analytics-frameworks.md)                                 | SOSP '17       |
| [Gandiva: Introspective Cluster Scheduling for Deep Learning](/machine-learning-systems/machine-learning-systems-index/gandiva-introspective-cluster-scheduling-for-deep-learning.md)                                            | OSDI '18       |
| [Tiresias: A GPU Cluster Manager for Distributed Deep Learning](/machine-learning-systems/machine-learning-systems-index/tiresias-a-gpu-cluster-manager-for-distributed-deep-learning.md)                                        | NSDI '19       |
| [Themis: Fair and Efficient GPU Cluster Scheduling](/machine-learning-systems/machine-learning-systems-index/themis-fair-and-efficient-gpu-cluster-scheduling.md)                                                                | NSDI '20       |

### OS Structure and Virtual Machines

| Title                                                                                                                                                                                                        | Venue    |
| ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | -------- |
| [Disco: Running Commodity Operating Systems on Scalable Multiprocessors](/earlier-readings-and-notes/index/disco-running-commodity-operating-systems-on-scalable-multiprocessors.md)                         | SOSP '97 |
| [Memory Resource Management in VMWare ESX Server](/earlier-readings-and-notes/index/memory-resource-management-in-vmware-esx-server.md)                                                                      | OSDI '02 |
| [ReVirt: Enabling Intrusion Analysis through Virtual Machine Logging and Replay](/earlier-readings-and-notes/index/revirt-enabling-intrusion-analysis-through-virtual-machine-logging-and-replay.md)         | OSDI '02 |
| [Biscuit: The benefits and costs of writing a POSIX kernel in a high-level language](/earlier-readings-and-notes/index/biscuit-the-benefits-and-costs-of-writing-a-posix-kernel-in-a-high-level-language.md) | OSDI '18 |
| [LegoOS: A Disseminated, Distributed OS for Hardware Resource Disaggregation](/earlier-readings-and-notes/index/legoos-a-disseminated-distributed-os-for-hardware-resource-disaggregation.md)                | OSDI '18 |

## To Read

### To move from local note to GitBook

#### File and Storage Systems

* [ ] Mnemosyne: Lightweight Persistent Memory
* [ ] Level Hash: Write-Optimized and High-Performance Hashing Index Scheme for Persistent Memory

#### Process Synchronization and Scalability

* [ ] Monitors: An Operating System Structuring Concept
* [ ] Mesa: Experiences with Processes and Monitors in Mesa
* [ ] Scalability Analysis: An Analysis of Linux Scalability to Many Cores
* [ ] Scalable Commutativity: The Scalable Commutativity Rule: Designing Scalable Software for Multicore Processors
* [ ] (Delegation/RCL) Remote Core Locking: Migrating Critical-Section Execution to Improve the Performance of Multithreaded Applications
* [ ] Shuffle Locks: Scalable and Practical Locking with Shuffling
* [ ] Arachne: Core-Aware Thread Management

#### Scheduling

* [ ] SEDA: An Architecture for Well-Conditioned, Scalable Internet Services
* [ ] TAM: Principled Schedulability Analysis for Distributed Storage Systems using Thread Architecture Models

#### OS Structure and Virtual Machines

* [ ] THE: The Structure of "THE" Multiprogramming System
* [ ] Nucleus: The Nucleus of a Multiprogramming System
* [ ] Exokernel: An Operating System Architecture for Application-Level Resource Management
* [ ] Arrakis: The Operating System is the Control Plane
* [ ] UNIX: The UNIX Time-Sharing System

### To read

* [ ] seL4: Formal Verification of an OS Kernel


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://blog.ruipan.xyz/earlier-readings-and-notes/index.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
