Operating Systems and Cloud Systems Reading List

History

  1. J. Fotheringham, "Dynamic Storage Allocation in the Atlas Computer, Including an Automatic Use of Backing Store," Communications of the ACM, Vol. 4, No. 10, October 1961, pp. 435-436.
  2. E. W. Dijkstra, "The Structure of the THE Multiprogramming System," Communications of the ACM, Vol. 11, No. 5, May 1968, pp. 341-346.
  3. F. J. Corbató and V. A. Vyssotsky, "Introduction and overview of the Multics system," In Proceedings AFIPS 1965 Fall Joint Computer Conference (FJCC), Vol. 27, No. 1, 1965, Spartan Books: New York, pp. 185-196.
  4. D. M. Ritchie and K. Thompson, "The UNIX Time-sharing System," The Bell System Technical Journal, Vol. 57, No. 6, 1978, pp. 1905-1929.
  5. Robert C. Daley and Jack B. Dennis, "Virtual Memory, Processes, and Sharing in MULTICS," Communications of the ACM, Vol. 11, No. 5, May 1968, pp. 306-312.
  6. F. J. Corbató, J. H. Saltzer and C. T. Clingen, "Multics - The first seven years," Proceedings AFIPS 1972 Fall Joint Computer Conference (FJCC), vol. 27, no. 1, 1965, Spartan Books: New York, pp. 185-196.
  7. Dennis M. Ritchie, "The Evolution of the Unix Time-sharing System," Bell Laboratories Technical Journal, Vol. 63, No. 6, Part 2, October 1984, pp. 1577-1593.
  8. K. Thompson, "UNIX Implementation," The Bell System Technical Journal, Vol. 57, No. 6, 1978, pp. 1931-1946.

Kernel Structures

  1. M. Seltzer, Y. Endo, C. Small and K. Smith, "Dealing with Disaster: Surviving Misbehaved Kernel Extensions," Proceedings of the 1996 Symposium on Operating System Design and Implementation, USENIX Association, October 1996.
  2. J. K. Ousterhout, A. R. Cherenson, F. Douglis, M. N. Nelson and B. B. Welch, "The Sprite Network Operating System," IEEE Computer, February 1988, pp. 23-36.
  3. M. F. Kaashoek, D. R. Engler, G. R. Ganger, H. M. Briceño, R. Hunt, D. Mazières, T. Pinckney, R. Grimm, J. Jannotti, and K. MacKenzie, "Application Performance and Flexibility on Exokernel Systems," Proceedings of the Sixteenth Symposium on Operating Systems Principles, ACM, October 1997.
  4. B. Bershad, S. Savage, P. Pardyak, E. G. Sirer, D. Becker, M. Fiuczynski, C. Chambers and S. Eggers, "Extensibility, Safety and Performance in the SPIN Operating System," Proceedings of the Fifteenth Symposium on Operating System Principles, ACM: Copper Mountain, Colorado, December 1995 pp. 267-284.
  5. G. Hamilton and P. Kougiouris, "The Spring Nucleus: A Microkernel for Objects," In Proceedings of the 1993 Summer Usenix Conference, June 1993.

Memory Management

  1. H. M. Levy and P. H. Lipman, "Virtual Memory Management in the VAX/VMS Operating System," IEEE Computer, March 1982, pp. 35-41. (for this paper a high-resolution version of the PDF is also available here).
  2. O. Babaoglu and W. Joy, "Converting a Swap-Based System to do Paging in an Architecture Lacking Page Reference Bits," In Proceedings of the 8th Symposium on Operating Systems Principles, ACM, 1981, pp. 78-85.
  3. M. Talluri, M. D. Hill and Y. A. Kalidi, "A New Page Table for 64-bit Address Spaces," Proceedings of the Fifteenth Symposium on Operating Systems Principles, ACM, 1995, pp. 184-199.
  4. J. B. Carter, J. K. Bennett and W. Zwaenepoel, "Techniques for Reducing Consistency-related Communication in Distributed Shared-memory Systems," ACM Transactions on Computer Systems, Vol. 13, No. 3, August 1995, pp. 205-243.
  5. R. Rashid, A. Tevanian, M. Young, D. Golub, R. Baron, D. Black, W. Bolsky and J. Chew, "Machine-independent Virtual Memory Management for Paged Uniprocessor and Multi-processor Architectures," IEEE Transactions on Computers, Vol. 37, No. 8 (1988), pp. 896-905.
  6. Song Jiang, Feng Chen, and Xiaodong Zhang, "CLOCK-Pro: An Effective Improvement of the CLOCK Replacement," Proceedings of the USENIX 2005 Technical Conference, 2005, pp.323-336.

File Systems

  1. M. K. McKusick, W. N. Joy, S. J. Leffler and R. S. Fabry, "A Fast File System for UNIX," ACM Transactions on Computer Systems, Vol. 2, No. 3, August 1984, pp. 181-197.
  2. M. N. Nelson, B. B. Welch and J. K. Ousterhout, "Caching in the Sprite Network File System," ACM Transactions on Computer Systems, Vol. 6, No. 1, February 1988, pp. 134-154.
  3. M. Rosenblum and J. K. Ousterhout, "The Design and Implementation of a Log-Structured File System," ACM Transactions on Computer Systems, Vol. 10, No. 1, February 1992, pp. 26-52.
  4. M. Seltzer, K. Bostic, M. K. McKusick, C. Staelin, "An Implementation of a Log-Structured File System for UNIX," Proceedings of the 1993 Winter Usenix Conference, 1993.
  5. L. F. Cabrera and D. D. E. Long. "Swift: Using Distributed Disk Striping to Provide High I/O Data Rates," Computing Systems, vol. 4, no. 4 (1991), pp. 405-436.
  6. T. M. Kroeger and D. D. E. Long, "Design and Implementation of a Predictive File Prefetching Algorithm," In Proceedings of the 2001 Usenix Winter Technical Conference, Boston: Usenix, January 2001, pp. 319-328.
  7. Douglas S. Santry , Michael J. Feeley, Norman C. Hutchinson, Alistair C. Veitch, Ross W. Carton, and Jacob Ofir, "Deciding when to forget in the Elephant file system," In Proceedings of the ACM Symposium on Operating Systems Principles (SOSP 99), Dec. 1999, pp. 110-123.
  8. Dave Hitz, James Lau, Michael Malcolm, "File System Design for an NFS File Server Appliance," Proceedings of the USENIX Winter 1994 Technical Conference.
  9. "The NFS Distributed File Service", SunSoft, 1995. -->Shorter paper here.
  10. R. Burns, R. Rees and D. Long, "An Analytical Study of Opportunistic Lease Renewal," In Proceedings of the 16th International Conference on Distributed Computing Systems (ICDCS), IEEE, 2001 (Slides PDF).
  11. Tsozen Yeh, Darrell Long, and Scott Brandt, "Performing File Prediction with a Program-Based Successor Model," International Symposium on Modeling, Analysis, and Simulation on Computer and Telecommunication Systems (MASCOTS 2001), pp. 193-202, June 2001.
  12. Tsozen Yeh, Darrell Long, and Scott Brandt, "Caching Files with a Program-based Last N Successors," Workshop on Caching, Coherency and Consistency (WC3 '01), June 2001.
  13. Tsozen Yeh, Darrell Long, and Scott Brandt, "Increasing Predictive Accuracy through Limited Prefetching," Communication Networks and Distributed Systems Modeling and Simulation Conference (CNDS 2002), pp. 131-138, January 2002.
  14. S. Ghemawat, H. Gobioff, and S. Leung, "The Google file system," Proceedings of the 19th ACM Symposium on Operating Systems Principles (SOSP '03), Bolton Landing, NY, October 2003.
  15. Chandramohan A. Thekkath, Timothy Mann, Edward K. Lee, "Frangipani: A Scalable Distributed File System," In Proceedings of the ACM Symposium on Operating Systems Principles (SOSP 97), St. Malo, France, October 1997, pp. 224-237.
  16. John H. Hartman and John K. Ousterhout, "The Zebra Striped Network File System," ACM Transactions on Computer Systems, Vol. 13, No. 3, August 1995, pp. 274-310. 
  17. Sean Quinlan and Sean Dorward, "Venti: A New Approach to Archival Data Storage," Conference on File and Storage Technologies (FAST 2002).
  18. Dave Hitz and Andy Watson, "The Evolution of NFS," Network Appliance, Inc. Technical Report.

19.  Nikolai Joukov, Timothy Wong, and Erez Zadok, "Accurate and Efficient Replaying of File System Traces", Proceedings of the 4th Conference on File and Storage Systems (FAST), pages 337–350 December 2005.

20.  Xuhui Li, Ashraf Aboulnaga, and Kenneth Salem, "Second-Tier Cache Management Using Write Hint", Proceedings of the 4th Conference on File and Storage Systems (FAST), pages 115–128 December 2005.

21.  Akshat Aranya, Charles P. Wright, and Erez Zadok, "Tracefs: A File System to Trace Them All", Proceedings of the 3rd Conference on File and Storage Systems (FAST), pages 129–145 March 2004.

22.  Dave Hitz, James Lau, Michael Malcolm, "File System Design for an NFS File Server Appliance", In Proceedings of the 1994 Usenix Winter Technical Conference, San Francisco, January 1994, pp. 319-328.

23.  Tsozen Yeh and Shuwen Yang, "Improving the Program Performance through Prioritized Disk Operation", The 2012 International Conference on High Performance Computing and Simulation (HPCS 2012), ACM/IEEE/IFIP, 2012,07.


Mobility and Power

  1. J. J. Kistler and M. Satyanarayanan, "Disconnected Operation in the Coda File System," ACM Transactions on Computer Systems, Vol. 10, No. 1, February 1992, pp. 3-25.
  2. G. H. Kuenning and G. J. Popek, "Automated Hoarding for Mobile Computers," In Proceedings of the ACM Symposium on Operating Systems Principles (SOSP 97), St. Malo, France, October 1997.
  3. David P. Helmbold, Darrell D. E. Long, Tracey L. Sconyers, and Bruce Sherrod. "Adaptive Disk Spin-Down for Mobile Computers," Mobile Networks and Applications (MONET) Journal, ACM/Baltzer, 2000.
  4. Brian D. Noble, M. Satyanarayanan, Dushyanth Narayanan, James Eric Tilton, Jason Flinn, and Kevin R. Walker, "Agile Application-Aware Adaptation for Mobility-Power," In Proceedings of the ACM Symposium on Operating Systems Principles (SOSP 97), St. Malo, France, October 1997.
  5. Dirk Grunwald, Philip Levis, Charles B. Morrey III, Michael Neufeld, and Keith I. Farkas, "Policies for Dynamic Clock Scheduling," In Proceedings of the Symposium on Operating Systems Design and Implementation (OSDI 2000), 2000.
  6. Jeffrey S. Chase, Darrell C. Anderson, Prachi N. Thakar, Amin M. Vahdat, "Managing Energy and Server Resources in Hosting Centers," In Proceedings of the ACM Symposium on Operating Systems Principles (SOSP 2001), Banff, Canada, October 2001.

Authentication, Protection and Security

  1. B. W. Lampson, "A Note on the Confinement Problem," Communications of the ACM, Vol. 16, No. 10, October 1973, pp. 613-615.
  2. R. L. Rivest, A. Shamir and L. Adleman, "A Method for Obtaining Digital Signatures and Public-Key Cryptosystems," Communications of the ACM, Vol. 21, No. 2, February 1978, pp. 120-126.
  3. R. M. Needham and M. D. Schroeder, "Using Encryption for Authentication in Large Networks of Computers," Communications of the ACM, Vol. 21, No. 12, December 1978, pp. 993-999.
  4. M. Burrows, M. Abadi and R. Needham, "A Logic of Authentication-Protection-Security/required," ACM Transactions on Computer Systems, Vol. 8, No. 1, February 1990, pp. 18-36.
  5. David Mazieres, Michael Kaminsky, M. Frans Kaashoek, and Emmett Witchel, "Separating key management from file system security," Proceedings of the Seventeenth Symposium on Operating Systems Principles, ACM, 1999.
  6. Umesh Maheshwari, Radek Vingralek, and Bill Shapiro, "How to Build a Trusted Database System on Untrusted Storage," In Proceedings of the Symposium on Operating Systems Design and Implementation (OSDI 2000), 2000.
  7. John D. Strunk, Garth R. Goodson, Michael L. Scheinholtz, Craig A.N. Soules, and Gregory R. Ganger, "Self-Securing Storage: Protecting Data in Compromised Systems," In Proceedings of the Symposium on Operating Systems Design and Implementation (OSDI 2000), 2000.
  8. J. G. Steiner, C. Neuman and J. I. Schiller, "Kerberos: An Authentication Service for Open Network Systems," Proceedings of the Winter 1988 USENIX Conference, 1988, pp. 205-211.
  9. A. S. Tanenbaum, R. van Renesse, H. van Staveren, G. J. Sharp, S. J. Mullender, J. Jansen and G. van Rossum, "Experiences with the Amoeba Distributed Operating System," Communications of the ACM, Vol. 33, No. 12, 1990, pp. 46-63.
  10. Edward Wobber, Michael Burrows, Martin Abadi and Butler Lampson, "Authentication in the Taos Operating System," ACM Transactions on Computer Systems, Vol. 12, No. 1, February 1994, pp. 3-32.

Scheduling and Synchronization

  1. C. A. R. Hoare, "Monitors: An Operating System Structuring Concept," Communications of the ACM, Vol. 17, No. 10, October 1974, pp. 549-557.
  2. R. Golding, P. Bosch, C. Staelin, T. Sullivan and J. Wilkes, "Idleness is not Sloth," Proceedings of the 1995 Winter Usenix Conference, January 1995, pp. 201-212.
  3. Christopher R. Lumb, Jiri Schindler, and Gregory R. Ganger, "Freeblock Scheduling Outside of Disk Firmware," Conference on File and Storage Technologies (FAST) January 28-30, 2002. Monterey, CA.
  4. James Philbin, Jan Edler, Otto J. Anshus, Craig C. Douglas and Kai Li, "Thread Scheduling for Cache Locality," Proceedings of ASPLOS-VII, 1996, pp. 60-71.

Interprocess Communication

  1. C. A. R. Hoare, "Communicating Sequential Processes," Communications of the ACM, Vol. 21, No. 8, August 1978, pp. 666-677.
  2. A. D. Birrell and B. J. Nelson, "Implementing Remote Procedure Calls," ACM Transactions on Computer Systems, Vol. 2, No. 1, February 1984, pp. 39-59.
  3. D. Mosberger and L. Peterson, "Making Paths Explicit in the Scout Operating System," Proceedings of the 1996 Symposium on Operating System Design and Implementation, October 1996, pp. 153-168.
  4. B. Bershad, T. Anderson, E. Lazowska and H. Levy, "Lightweight Remote Procedure Call," ACM Transactions on Computer Systems, Vol. 8, No. 1, February 1990, pp. 37-55.
  5. B. N. Bershad, T. E. Anderson, E. D. Lazowska and H. M. Levy, "User-level Interprocess Communication for Shared Memory Multiprocessors," ACM Transactions on Computer Systems, Vol. 9, No. 2, May 1991, pp. 175-198.

Distributed Systems

  1. J. F. Shoch and J. A. Hupp, "The 'Worm' Programs - Early Experience with a Distributed Computation," Communications of the ACM, Vol. 25, No. 3, March 1982, pp. 172-180.
  2. L. Lamport, "Time, Clocks, and the Ordering of Events in a Distributed System," Communications of the ACM, Vol. 21, No. 7, July 1978, pp. 558-565.
  3. M. D. Schroeder, A. D. Birrell and R. M. Needham, "Experience with Grapevine: the Growth of a Distributed System," ACM Transactions on Computer Systems, Vol. 2, No. 1, February 1984, pp. 3-23.
  4. D. R. Cheriton and D. Skeen, "Understanding the Limitations of Causally and Totally Ordered Communication," In Proceedings of the 14th Symposium on Operating Systems Principles, ACM, December 1993, pp. 44-57.
  5. L. E. Moser, P. M. Melliar-Smith, D. A. Agarwal, R. K. Budhia, and C. A. Lingley-Papadopoulos, "Totem: A Fault-Tolerant Multicast Group Communication System," Communications of the ACM, April 1996.
  6. R. van Renesse, K. P. Birman and S. Maffeis, "Horus: A Flexible Group Communication System," Communications of the ACM, Vol. 39, No. 4, April 1996, pp. 76-83.
  7. Ken Birman's response to Cheriton and Skeen's 1993 SOSP paper (PDF).
  8. Y. Amir, L. E. Moser, P. M. Melliar-Smith, D. A. Agarwal, and P. Ciarfella, "The Totem Single-Ring Ordering and Membership Protocol," ACM Transactions on Computer Systems 13, 4 (November 1995), 311-342.
  9. L. Lamport, R. Shostak, M. Pease, "The Byzantine Generals Problem", ACM Transactions on Programming Languages and Systems (TOPLAS) Vol. 4, No. 3, July 1982.
  10. Leslie Lamport, P. M. Melliar-Smith, "Byzantine Clock Synchronization", Proceedings of the third annual ACM Symposium on Principles of Distributed Computing (PODC) 1984.
  11. Edmund B. Nightingale, Peter M. Chen, and Jason Flinn, "Speculative Execution in a Distributed File System", Proceedings of the 20th ACM Symposium on Operating Systems Principles (SOSP), Brighton, United Kingdom, October 2005.
  12. Edmund B. Nightingale, Kaushik Veeraraghavan, Peter M. Chen, and Jason Flinn, "Rethink the Sync", Proceedings of the 7th USENIX Symposium on Operating Systems Design and Implementation (OSDI), Seattle, WA, November 2006.
  13. Jeffrey Dean, Sanjay Ghemawat, "MapReduce: Simplified Data Processing on Large Clusters", In Proceedings of the Symposium on Operating Systems Design and Implementation (OSDI 2004), San Francisco, California, December 2004, pp. 137-150.
  14. Fay Chang, Jeffrey Dean, Sanjay Ghemawat, Wilson C. Hsieh, Deborah A. Wallach, Mike Burrows, Tushar Chandra, Andrew Fikes, and Robert E. Gruber, "Bigtable: A Distributed Storage System for Structured Data", In Proceedings of the Symposium on Operating Systems Design and Implementation (OSDI 2006), Seattle, Washington, November 2006, pp. 205-218.
  15. Luiz André Barroso, Jeffrey Dean, Urs Hölzle, "Web Search for a Planet: The Google Cluster Architecture", IEEE Micro, vol. 23, no. 2, pp. 22-28, Mar./Apr. 2003,
  16. Konstantin Shvachko, Hairong Kuang, Sanjay Radia, Robert Chansler, "The Hadoop Distributed File System", MSST '10 Proceedings of the 2010 IEEE 26th Symposium on Mass Storage Systems and Technologies

Fault Tolerance

  1. Walter A. Burkhard, and Jai Menon, "Disk Array Storage System Reliability," Proceedings of the Symposium on Fault-Tolerant Computing, 1993.
  2. D. Long, A. Muir, and R. Golding. "A Longitudinal Study of Internet Host Reliability," Proceedings of the Fourteenth Symposium on Reliable Distributed Systems, Bad Neuenahr, Germany: IEEE, September 1995, pp. 2-9.
  3. D. D. E. Long and J. F. Pâris, "Voting with Regenerable Volatile Witnesses," Proceedings of the Seventh International Conference on Data Engineering, IEEE, April 1991, pp. 112-119 .
  4. B. Liskov, S. Ghemawat, R. Gruber, P. Johnson, L. Shrira and M. Williams, "Replication in the Harp File System," Proceedings of the Thirteenth Symposium on Operating Systems Principles, ACM, October 1991, pp. 198-212 .
  5. John R. Douceur and Roger P. Wattenhofer "Optimizing File Availability in a Secure Serverless Distributed File System," Proceedings of the 20th Symposium on Reliable Distributed Systems, 2001, pp. 4-13.
  6. David A. Patterson, Peter Chen, Garth Gibson, and Randy H. Katz, "Introduction to Redundant Arrays of Inexpensive Disks (RAID)," Proceedings of the 34th IEEE Computer Society International Conference (COMPCON'89), 1989, pp. 112-117.
  7. Martin Schulze, Garth Gibson, and David A. Patterson, "How Reliable is a RAID," Proceedings of the 34th IEEE Computer Society International Conference (COMPCON'89), 1989, pp. 118-123.

Performance Evaluation

  1. J. Bentley, "The Back of the Envelope," Communications of the ACM, Vol. 27, No. 3, March 1984, pp. 180-184.
  2. J. Bentley, "The Envelope is Back," Communications of the ACM, Vol. 29, No. 3, March 1986 pp. 176-181.
  3. P. Heidelberger and S. Lavenberg, "Computer Performance Evaluation Methodology," IEEE Transactions on Computers, Vol. C-33, No. 12, December 1984, pp. 1195-1220.
  4. M. G. Baker, J. H. Hartman, M. D. Kupfer, K. W. Shirriff and J. K. Ousterhout, "Measurements of a Distributed File System", In Proceedings of the 13th Symposium on Operating Systems Principles, ACM, October 1991, pp. 198-212.
  5. Timothy J. Gibson, Ethan L. Miller, and Darrell D. E. Long, "Long-term File Activity and Inter-Reference Patterns" CMG98 Proceedings, 24th International Conference on Technology Management and Performance Evaluation of Enterprise-Wide Information Systems, Computer Measurement Group, Anaheim, CA, December 1998, pp. 976-987.
  6. Timothy J. Gibson and Ethan L. Miller, "An Improved Long-Term File-Usage Prediction Algorithm," CMG99 Proceedings, 25th International Conference on Technology Management and Performance Evaluation of Enterprise-Wide Information Systems, Computer Measurement Group, Reno, NV, December 1999, pp. 639-648.

Experience

  1. C. A. R. Hoare, "The Emperor's Old Clothes," Communications of the ACM, Vol. 24, No. 2, February 1981, pp. 75-83.
  2. B. W. Lampson, "Hints for Computer System Designers," IEEE Software, January 1984, pp. 11-28.
  3. J. H. Saltzer, D. P. Reed and D. D. Clark, "End-to-End Arguments in System Design," ACM Transactions on Computer Systems, Vol. 2, No. 4, November 1984, pp. 277-288.
  4. Investigate the background and circumstances surrounding the C. A. R. Hoare article "The Emperor's Old Clothes." 

Web Proxy

  1. Jun Wang, Rui Min, Yingwu Zhu, and Yiming Hu, "UCFS - A Novel User-Space, High Performance, Customized File System for Web Proxy", IEEE Transactions on Computers, Vol. 51, No. 9, Sept 2002, pp. 1056-1073.
  2. Tsozen Yeh and Yenlin Pan, "Improving the Performance of the Web Proxy Server through Group Prefetching", Proceedings of the 6th ACM International Conference on Ubiquitous Information Management and Communication (ICUIMC), Kuala Lumpur, Malaysia, February 2012.

Miscellanea

  1. R. A. Day, "How to Write a Scientific Paper," IEEE Transactions on Professional Communication, Vol. 20, No. 1, June 1977, pp. 32-37.
  2. R. Levin and D. D. Redell, "An Evaluation of the Ninth SOSP Submissions," Operating Systems Review, Vol. 17, No. 3, July 1983, pp. 35-40 (HTML).