Computer Laboratory

NetOS

Operating Systems reading group

The papers discussed in our operating systems reading group come from a diverse set of backgrounds, eras, venues and areas, but all roughly focus on the role of the operating system as a mediator between hardware and user code. We often contrast old and new papers, or single-machine and distributed-systems papers.

1. Barrelfish
Baumann et al. The multikernel: a new OS architecture for scalable multicore systems Proceedings of SOSP 2009. paper
2. fos
Wentzlaff et al. An operating system for multicore and clouds: mechanisms and implementation Proceedings of SoCC 2010. paper
3. Tessellation
Liu et al. Tessellation: space-time partitioning in a manycore client OS Proceedings of HotPar 2009. paper
4. Akaros
Rhoden et al. Improving per-node efficiency in the datacenter with new OS abstractions Proceedings of SoCC 2011. paper
5. Corey
Boyd-Wickizer et al. Corey: An Operating System for Many Cores Proceedings of OSDI 2008 paper
6. Singularity and Helios
(a) Hunt and Larus Singularity: Rethinking the Software Stack ACM Operating Systems Review
vol 41, no. 2, pp. 37-49, 2007
paper
(b) Nightingale et al. Helios: Heterogeneous Multiprocessing with Satellite Kernels Proceedings of SOSP 2009 paper
7. Position papers
(a) Rossbach et al. Operating Systems Must Support GPU Abstractions Proceedings of HotOS 2011 paper
(b) Kuz et al. Multicore OS Benchmarks: We Can Do Better Proceedings of HotOS 2011 paper
(c) Holland and Seltzer Multicore OSes: Looking Forward from 1991, er, 2011 Proceedings of HotOS 2011 paper
8. [work under submission]
9. Nemesis and Exokernel
(a) Hand, S. Self-Paging in the Nemesis Operating System Proceedings of OSDI 1999 paper
(b) Engler et al. Exokernel: an operating system architecture for application-level resource management Proceedings of SOSP 1995 paper
10. NoHype and VOS
(a) Keller et al. NoHype: Virtualized Cloud Infrastructure without the Virtualization Proceedings of ISCA 2011 paper
(b) Vasudevan et al. The Case for VOS: The Vector Operating System Proceedings of HotOS 2011 paper
11. Drawbridge and Spring
(a) Porter et al. Rethinking the library OS from the top down Proceedings of ASPLOS 2011 paper
(b) Hamilton and Kougiouris The Spring nucleus: A microkernel for objects Sun Microsystems Technical Report 1993 paper
12. Scout and PlanetLab
(a) Mosberger et al. Making Paths Explicit in the Scout Operating System Proceedings of OSDI 1996 paper
(b) Bavier et al. Operating System Support for Planetary-Scale Network Services Proceedings of NSDI 2004 paper
13. EROS and Capsicum
(a) Shapiro et al. EROS: a fast capability system Proceedings of SOSP 1999 paper
(b) Watson et al. Capsicum: practical capabilities for UNIX Proceedings of USENIX Security 2010 paper
14. Multicore scheduling position
(a) Boyd-Wickizer et al. Reinventing Scheduling for Multicore Systems Proceedings of HotOS 2009 paper
15. Scheduling: cores and clusters
(a) Tsafrir et al. Secretly Monopolizing the CPU Without Superuser Privileges Proceedings of USENIX ATC 2007 paper
(b) Isard et al. Quincy: Fair Scheduling for Distributed Computing Clusters Proceedings of SOSP 2009 paper
16. Multi-application performance interference: cores vs. clusters
(a) Fedorova et al. Improving Performance Isolation on Chip Multiprocessors via an Operating System Scheduler Proceedings of PACT 2007 paper
(b) Zaharia et al. Improving MapReduce Performance in Heterogeneous Environments Proceedings of OSDI 2008 paper
17. Memory behaviour classification
(a) Xie et al. Dynamic Classification of Program Memory Behaviors in CMPs Proceedings of CMP-MSI (at ISCA) paper
(b) N.N. [draft paper under submission]
18. OSDI 2012: Spanner and MegaPipe
(a) Corbett et al. Spanner: Google’s Globally-Distributed Database Proceedings of OSDI 2012 paper
(b) Han et al. MegaPipe: A New Programming Interface for Scalable Network I/O Proceedings of OSDI 2012 paper
19. OSDI 2012: Dune and KINT
(a) Belay et al. Dune: Safe User-level Access to Privileged CPU Features Proceedings of OSDI 2012 paper
(b) Wang et al. Improving Integer Security for Systems with KINT Proceedings of OSDI 2012 paper
20. Deterministic parallelism
(a) Bergan et al. Deterministic Process Groups in dOS Proceedings of OSDI 2010 paper
(b) Aviram et al. Efficient System-Enforced Deterministic Parallelism Proceedings of OSDI 2010 paper
21. Pebble and Mungi
(a) Gabber et al. The Pebble Component-Based Operating System Proceedings of USENIX ATC 1999 paper
(b) Heiser et al. Mungi: A distributed single-address-space operating system Proceedings ASCS 1994 paper
22. Distributed Operating Systems
(a) Tanenbaum et al. Research issues in distributed operating systems Computing in High-Energy Physics, 1986. paper
(b) Zaharia et al. The Datacenter needs an Operating System Proceedings of HotCloud 2011 paper
(c) Douglis et al. A Comparison of Two Distributed Systems: Amoeba and Sprite Computing Systems Journal,
vol 4., pp. 353-384, Fall 1991.
paper
23. Plan 9
(a) Pike et al. Plan 9 from Bell Labs Bell Labs Technical Report;
Originally in Computing Systems, Vol 8 #3, summer 1995.
paper
(b) Pike et al. The Use of Name Spaces in Plan 9 Bell Labs Technical Report; Originally in SIGOPS European Workshop 1993. paper
(c) Presotto et al. The Organization of Networks in Plan 9 Bell Labs Technical Report; Originally at USENIX Winter 1993. paper
24. FusedOS and LibraOS
(a) Park et al. FusedOS: Fusing LWK Performance with FWK Functionality in a Heterogeneous Environment Proceedings of SBAC-PAD 2012 [emailed]
(b) Ammons et al. Libra: a library operating system for a JVM in a virtualized execution environment Proceedings of VEE 2007 paper
25. Caching and Prefetching
(a) Patterson et al. Informed Prefetching and Caching Proceedings of SOSP 1995 paper
(b) Pai et al. IO-Lite: A Unified I/O Buffering and Caching System Proceedings of USENIX ATC 1999 paper
26. Tornado and K42
(a) Gamsa et al. Tornado: Maximizing Locality and Concurrency in a Shared Memory Multiprocessor Operating System Proceedings of OSDI 1999 paper
(b) Krieger et al. K42: building a complete operating system Proceedings of EuroSys 2006 paper
27. Desktop I/O
Harter et al. A file is not a file: understanding the I/O behavior of Apple desktop applications Proceedings of SOSP 2011 paper
28. Rump (kernels | file systems)
Kantee Rump File Systems: Kernel Code Reborn Proceedings of USENIX ATC 2009 paper
29. Adventures in user/kernel land
(a) Draves et al. Unifying the User and Kernel Environments Microsoft Research Technical Report 97-10 paper
(b) [draft work, to be submitted] [emailed]
30. Papers from ASPLOS 2013
(a) Shen et al. Power Containers: An OS Facility for Fine-Grained Power and Energy Management on Multicore Servers Proceedings of ASPLOS 2013 paper
(b) Hunt et al. DDOS: Taming Nondeterminism in Distributed Systems Proceedings of ASPLOS 2013 paper
31. Papers from ASPLOS 2013 (II)
(a) Dashti et al. Traffic Management: A Holistic Approach to Memory Placement on NUMA Systems Proceedings of ASPLOS 2013 paper
(b) Tang et al. ReQoS: Reactive Static/Dynamic Compilation for QoS in Warehouse Scale Computers Proceedings of ASPLOS 2013 paper
32. Papers from EuroSys 2013
(a) Clements et al. RadixVM: Scalable address spaces for multithreaded applications Proceedings of EuroSys 2013 paper
(b) Baumann et al. Composing OS extensions safely and efficiently with Bascule Proceedings of EuroSys 2013 paper
33. Old and new: OS research trends
(a) Cheriton et al. The V distributed system Communications of the ACM, March 1988 paper
(b) Gupta et al. Towards Elastic Operating Systems Proceedings of HotOS 2013 paper
(c) Peter et al. Arrakis: A Case for the End of the Empire Proceedings of HotOS 2013 paper
34. New approaches to hardware and OS design
(a) Grossman et al. Hardware Support for Fine-Grained Event-Driven Computation in Anton 2 Proceedings of ASPLOS 2013 paper
(b) Colmenares et al. Tessellation: Refactoring the OS around Explicit Resource Containers with Continuous Adaptation Proceedings of DAC 2013 paper
35. OS security and secure OSes
(a) Corbató et al. Introduction and overview of the Multics system Proceedings of AFIPS 1965 paper
(b) Zeldovich et al. Making information flow explicit in HiStar Proceedings of OSDI 2006 paper
36. User-level scheduling anno 1991
(a) Marsh et al. First-class user-level threads Proceedings of SOSP 1991 paper
(b) Anderson et al. Scheduler activations: effective kernel support for the user-level management of parallelism Proceedings of SOSP 1991 paper
(c) Peter et al. Design principles for end-to-end multicore schedulers Proceedings of HotPar 2010 paper
37. Distributed shared memory
(a) Alverson et al. The Tera Computer System ACM SIGARCH Computer Architecture News 18.3b (1990) paper
(b) N.N. [work under submission] [emailed]
38. Adventures with TCP
(a) Winstein et al. TCP ex Machina: Computer-Generated Congestion Control Proceedings of SIGCOMM 2013 paper
(b) Alizadeh et al. Less is More: Trading a little Bandwidth for Ultra-Low Latency in the Data Center Proceedings of NSDI 2012 paper
39. Papers from SOSP 2013
(a) Clements et al. The Scalable Commutativity Rule: Designing Scalable Software for Multicore Processors Proceedings of SOSP 2013 paper
(b) David et al. Everything You Always Wanted to Know about Synchronization but Were Afraid to Ask Proceedings of SOSP 2013 paper
40. Papers from SOSP 2013 (II)
(a) Elphinstone et al. From L3 to seL4: What Have We Learnt in 20 Years of L4 Microkernels? Proceedings of SOSP 2013 paper
(b) Murray et al. Naiad: A Timely Dataflow System Proceedings of SOSP 2013 paper
41. Papers from SOSP 2013 (III)
(a) Rossback et al. Dandelion: A Compiler and Runtime for Heterogeneous Systems Proceedings of SOSP 2013 paper
(b) Ousterhout et al. Sparrow: Distributed, Low Latency Scheduling Proceedings of SOSP 2013 paper