Historical Perspective
- (H1) ⭐️ D. Ritchie and K. Thompson, “The UNIX Time-Sharing System,” CACM, 1974. (The SIGOPS Hall of Fame Award ‘05)
Computer Systems Research
(I1) ⭐️ Butler W. Lampson, “Hints for Computer System Design,” SOSP, 1983. (The SIGOPS Hall of Fame Award ‘05)
(I2) Roy Levin and David D. Redell, “An Evaluation of the Ninth SOSP Submissions or How (and How Not) to Write a Good Systems Paper,” ACM Operating Systems Review, 1983.
(I3) Aaron B. Brown, Anupam Chanda, Rik Farrow, Alexandra Fedorova, Petros Maniatis, and Michael L. Scott, “The Many Faces of Systems Research - And How to Evaluate Them,” HotOS, 2005.
CPU Scheduling
(S1) ⭐️ Carl A. Waldspurger and William E. Weihl, “Lottery Scheduling: Flexible Proportional-Share Resource Management,” OSDI, 1994.
(S2) Jean-Pierre Lozi, Baptiste Lepers, Justin Funston, Fabien Gaud, Vivien Quema, and Alexandra Fedorova, “The Linux Scheduler: a Decade of Wasted Cores,” EuroSys, 2016.
Concurrency
(C1) ⭐️ John Osterhout, “Why Threads Are A Bad Idea (for most purposes),” 1995.
(C2) ⭐️ Rob von Behren, Jeremy Condit, and Eric Brewer, “Why Events Are A Bad Idea (for high-concurrency servers),” HotOS, 2003.
(C3) ⭐️ Matt Welsh, David Culler, and Eric Brewer, “SEDA: An Architecture for Well-Conditioned, Scalable Internet Services,” SOSP, 2001.
Virtual Memory
(MM1) ⭐️ Juan Navarro, Sitaram Iyer, Peter Druschel, and Alan Cox, “Practical, Transparent Operating System Support for Superpages,” OSDI, 2002.
(MM2) Youngjin Kwon, Hangchen Yu, Simon Peter, Christopher J. Rossbach, and Emmett Witchel, “Coordinated and Efficient Huge Page Management with Ingens,” OSDI, 2016.
(MM3) ⭐️ Nimrod Megiddo and Dharmendra S. Modha, “ARC: A Self-Tuning, Low Overhead Replacement Cache,” FAST, 2003. (USENIX Test of Time Award ‘14)
File Systems
(FS1) ⭐️ Marshall K. McKusick, William N. Joy, and Samuel J. Leffler, “A Fast File System for UNIX,” ACM TOCS, 1984. (The SIGOPS Hall of Fame Award ‘15)
(FS2) ⭐️ Mendel Rosenblum and John K. Ousterhout, “The Design and Implementation of a Log-Structured File System,” SOSP, 1991. (The SIGOPS Hall of Fame Award ‘12)
(FS3) ⭐️ Changman Lee, Dongho Sim, Joo-Young Hwang, and Sangyeun Cho, “F2FS: A New File System for Flash Storage,” FAST, 2015.
OS Design
(OS1) The Tanenbaum-Torvalds Debate, 1992.
(OS2) ⭐️ Jochen Liedtke, “On μ-Kernel Construction,” SOSP, 1995. (The SIGOPS Hall of Fame Award ‘15)
(OS3) ⭐️ M. Frans Kaashoek, Dawson R. Engler, Gregory R. Ganger, Hector M. Briceno, Russell Hunt, David Mazieres, Thomas Pinckney, Robert Grimm, John Jannotti, and Kenneth Mackenzie, “Application Performance and Flexibility on Exokernel Systems,” SOSP, 1997.
(OS4) Andrew Baumann, Paul Barham, Pierre-Evariste Dagand, Tim Harris, Rebecca Isaacs, Simon Peter, Timothy Roscoe, Adrian Schupbach, and Akhilesh Singhania, “The Multikernel: A New OS Architecture for Scalable Multicore Systems,” SOSP, 2009.
(OS5) Anil Madhavapeddy, Richard Mortier, Charalampos Rotsos, David Scott, Balraj Singh, Thomas Gazagnaire, Steven Smith, Steven Hand, and Jon Crowcroft, “Unikernels: Library Operating Systems for the Cloud,” ASPLOS, 2013.
(OS6) Simon Peter, Jialin Li, Irene Zhang, Dan R. K. Ports, Doug Woos, Arvind Krishnamurthy, and Thomas Anderson, “Arrakis: The Operating System is the Control Plane,” OSDI, 2014. (Best Paper Award)
Virtual Machines
(VM1) ⭐️ Edouard Bugnion, Scott Devine, and Mendel Rosenblum, “Disco: Running Commodity Operating Systems on Scalable Multiprocessors,” SOSP, 1997. (Best Paper Award, The SIGOPS Hall of Fame Award ‘08)
(VM2) Paul Barham, Boris Dragovic, Keir Fraser, Steven Hand, Tim Harris, Alex Ho, Rolf Neugebauer, Ian Pratt, and Andrew Warfield, “Xen and the Art of Virtualization,” SOSP, 2003.
(VM3) ⭐️ Carl A. Waldspurger, “Memory Resource Management in VMware ESX Server,” OSDI, 2002. (Best Paper Award, The SIGOPS Hall of Fame Award ‘15)
(VM4) ⭐️ Christopher Clark, Keir Fraser, Steven Hand, Jacob Corm Hansen, Eric Jul, Christian Limpach, Ian Pratt, and Andrew Warfield, “Live Migration of Virtual Machines,” NSDI, 2005. (USENIX Test of Time Award ‘05)
Distributed File Systems
(DFS1) ⭐️ Sanjay Ghemawat, Howard Gobioff, and Shun-Tak Leung, “The Google File System,” SOSP, 2003. (The SIGOPS Hall of Fame Award ‘15)
(DFS2) ⭐️ Sage A. Weil, Scott A. Brandt, Ethan L. Miller, Darrell D. E. Long, and Carlos Maltzahn, “Ceph: A Scalable, High-Performance Distributed File System,” OSDI, 2006.
Key-Value Stores
(KV1) ⭐️ Giuseppe DeCandia, Deniz Hastorun, Madan Jampani, Gunavardhan Kakulapati, Avinash Lakshman, Alex Pilchin, Swaminathan Sivasubramanian, Peter Vosshall, and Werner Vogels, “Dynamo: Amazon’s Highly Available Key-value Store,” SOSP, 2007. (The SIGOPS Hall of Fame Award ‘17)
(KV2) ⭐️ Lanyue Lu, Thanumalayan Sankaranarayana Pillai, Andrea C. Arpaci-Dusseau, and Remzi H. Arpaci-Dusseau, “WiscKey: Separating Keys from Values in SSD-conscious Storage,” FAST, 2016.
SSDs
(SSD1) ⭐️ Mei-Ling Chiang, Paul C. H. Lee, and Ruei-Chuan Chang, “Using Data Clustering to Improve Cleaning Performance for Flash Memory,” Software - Practice and Experience, 1999.
(SSD2) Aayush Gupta, Youngjae Kim, Bhuvan Urgaonkar, “DFTL: A Flash Translation Layer Employing Demand-based Selective Caching of Page-level Address Mappings,” ASPLOS, 2009.
(SSD3) ⭐️ Abhishek Rajimwale, Vijayan Prabhakaran, and John D. Davis, “Block Management in Solid-State Devices,” USENIX ATC, 2009.
(SSD4) Jun He, Sudarsun Kannan, Andrea C. Arpaci-Dusseau, and Remzi H. Arpaci-Dusseau, “The Unwritten Contract of Solid State Drives,” EuroSys, 2017.
(SSD5) ⭐️ Jeong-Uk Kang, Jeeseok Hyun, Hyunjoo Maeng, and Sangyeun Cho, “The Multi-streamed Solid-State Drive,” HotStorage, 2014.
(SSD6) ⭐️ Boncheol Gu, Andre S. Yoon, Duck-Ho Bae, Insoon Jo, Jinyoung Lee, Jonghyun Yoon, Jeong-Uk Kang, Moonsang Kwon, Chanho Yoon, Sangyeun Cho, Jaeheon Jeong, and Duckhyun Chang, “Biscuit: A Framework for Near-Data Processing of Big Data Workloads,” ISCA, 2016.
⭐️ means required reading for this course.