Notes on "Resilient Distributed Datasets: A Fault-Tolerant Abstraction for In-Memory Cluster Computing"

Paper Summary Resilient Distributed Datasets (RDDs) are read-only, partitioned collections of records created by applying transformations (e.g. map, filter, join)...

Feature Stores: The Data Side of ML Pipelines

We need a principled way of managing state in real-time ML pipelines.

Notes on "Unix Implementation"

The Unix kernel is the only piece of Unix code that cannot be substituted by a user; therefore, it seeks...

Notes on "The Structure of the 'THE'-Multiprogramming System"

Built a multiprogramming system with the goal of smoothly processing a stream of user programs. The system attempts to satisfy...

Notes on "Survey of Virtual Machine Research"

Virtual Machines (VMs) simulate a machine that is identical to the real machine used. VMs are faster than simulating other...

Notes on "Design and Implementation of the Sun Network Filesystem"

The Sun Network File System (NFS) uses a client/server model in which communication occurs via RPC. Servers are stateless, enabling...

Notes on "Privacy and Authentication: An Introduction to Cryptography"

Concerned about eavesdropping from both foreign and domestic government agencies. 2 major problems in data security: Privacy. Preventing an eavesdropper...

Notes on "The Protection of Information in Computer Systems"

Part survey paper, part experience paper, part Multics design paper. The authors discuss mid-1970s state-of-the-art techniques for OS-level protection between...

Notes on "A Hardware Architecture for Implementing Protection Rings"

This paper discusses protection of segment-based virtual memory as found in Multics. Read, write, and execute permissions are set based...

Notes on "The Multics Virtual Memory: Concepts and Design"

While “Virtual Memory, Processes, and sharing in MULTICS” explored the details of how Multics’ segmented virtual memory works, this paper...

Notes on "Virtual Memory, Processes, and sharing in MULTICS"

Multics is designed to serve many users operating the system from remote terminals. To effectively serve its users, Multics had...

Notes on "Operating System Support for Database Management"

This article examines how OS design limits DBMS performance, and how changes in OS design may improve DBMS performance in...

Notes on "Understanding the Limitations of Causally and Totally Ordered Communication"

Demonstrates limitations of causally and totally ordered communication support (CATOCS) in the context of reliable distributed systems. Argues that CATOCS...

Notes on "Lightweight Causal and Atomic Group Multicast"

Introduces CBCAST which implements fault-tolerant causally ordered message delivery. CBCAST is extended to ABCAST for total ordering of messages. In...

Notes on "The 'Worm' Programs—Early Experience with a Distributed Computation"

An innocent and naïve paper describing with wonder and enthusiasm Xerox Palo Alto Research Center’s work with computer worms. Computer...

Notes on "Time, Clocks, and the Ordering of Events in a Distributed System"

Develops a partial ordering for events occurring in a distributed system based on logical time. Demonstrates how to strengthen the...

Notes on "Lottery Scheduling: Flexible Proportional-Share Resource Management"

Introduces lottery scheduling which uses lotteries to allocate resources. Entities competing for resources are assigned tickets based on their priority....

Notes on "Metascheduling for Continuous Media"

Proposes a scheduling framework for continuous media (e.g. audio, video streams) which can guarantee performance across multiple stages. The paper...

Notes on "The Impact of Operating System Structure on Memory System Performance"

Compares a monolithic OS and a microkernel on memory performance and demonstrates memory-based performance issues with the microkernel-based OS. Explains...

Notes on "Why Aren't Operating Systems Getting Faster As Fast as Hardware"

Runs a suite of microbenchmarks on several OS and hardware configurations. Finds that newer OSs don’t speed up proportionally to...

Notes on "The Structuring of Systems Using Upcalls"

Introduces upcalls, which allow invoked services invoke the client (e.g. through handlers bound at runtime). A key advantage of this...