Skip to content

Instantly share code, notes, and snippets.

@wenhuizhang
Last active March 25, 2025 10:59
Show Gist options
  • Save wenhuizhang/3e6bba13171cce042b51 to your computer and use it in GitHub Desktop.
Save wenhuizhang/3e6bba13171cce042b51 to your computer and use it in GitHub Desktop.
distributed systems readings

#Systems Graduate level operating systems courses don't typically have notes - they all come with long reading lists taken from SOSP and other places. In this way, systems research is a bit more like a humanities subject: it's vital to read the primary sources.

  • Cornell CS 614 - Advanced Course in Computer Systems - Ken Birman teaches this course. The readings cover more distributed systems research than is typical (which I am in favour of!). In fact, there's barely anything on traditional internal OS topics like filesystems or memory management. There's some worthwhile commentary at the bottom of the page.
  • Princeton COS 518 - Advanced Operating Systems - short and snappy reading list of two papers per topic, covering some interesting stuff like buffering inside the operating system, and L4.
  • Stanford CS240 - Advanced Topics in Operating Systems - an interesting and concise set of readings. A presentation on Firefox internals is a course-specific highlight.
  • Harvard CS264 - Peer-to-Peer Systems - No notes but a useful collection of papers surveying from CAN and Chord to Skype.
  • CSE 552 - Distributed Systems - University of Washington graduate distributed systems course. Thoughtfully selected readings.
  • CMU 15-712 - Advanced and Distributed Operating Systems
  • UIUC CS 525 - Advanced Distributed Systems - long list of readings, drawn mostly from the last ten years or so, focusing on applications.
  • Cornell CS6452 - Datacenter Networks and Services - networking focused - but by no means exclusively.
  • #Databases

  • Brown CSCI 2270 - Advanced Topics in Database Management - no notes but a good set of readings. Does a good job of categorising the last ~15 years of distributed and parallel database research which has moved away from shared-something RDBMSs.
  • Distributed Algorithms

    #Data Structures and Algorithms

    #Discrete Mathematics and Probability
    • MIT 6.042J (OCW) - Elementary discrete maths, including graph theory and some combinatorics. Lecture slides are available, and good, but the real meat is in the readings.
    <!-- FOOTER  -->
    <div id="footer_wrap" class="outer">
      <footer class="inner">
        <p class="copyright">Distributed-systems-readings maintained by <a href="https://github.com/henryr">henryr</a></p>
        <p>Published with <a href="http://pages.github.com/">GitHub Pages</a></p>
      </footer>
    </div>
    
    @wugouzi
    Copy link

    wugouzi commented Feb 2, 2024

    nice list, thanks!

    Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment