Department of Computer Science 


CS 4410/4411: Spring 2009

Systems Programming and Operating Systems

 
 
Course Details
 Home
 Overview
 Course Staff/Help
 Academic Integrity
 How to Lose in CS 4410
 
Schedule
 Lecture Notes
 CS4411 Sections
 
Assignments
 Homework
 Projects
 Exams
 
Resources
 C for Java programmers
 CVS in CSUGLab
 Suggested Readings
   
On Operating Systems Implementation:
On writing concurrent programs:
  • An introduction to programming with threads.
    Andrew Birrel

    Research Report 35, Digital Equipment Corporation Systems Research Center, 1989.
  • On networking:
  • End-to-End Arguments in System Design.
    Jerome H. Saltzer, David P. Reed, and David D. Clark.
    Second International Conference on Distributed Computing Systems, pages 509-512.
    ACM Transactions in Computer Systems 2, 4, November 1984, pages 277-288.


  • Ethernet: Distributed Packet Switching for Local Computer Networks
    Robert M. Metcalfe and David R. Boggs
    Communications of the ACM, 7, Volume 9, July 1976


  • Development of the Domain Name System
    Paul V. Mockapetris, and Kevin J. Dunlap
    ACM SIGCOMM 1988, Pages 123-133


  • On the Effectiveness of DNS-based Server Selection
    Anees Shaikh, Renu Tewari, Mukesh Agrawal
    IEEE INFOCOM 2001

  • On Memory Allocation
  • A Memory Allocator
    Doug Lea
    A short documentation on the implementation his malloc routines, April 2000
  • On P2P File Systems
  • Storage Management and Caching in PAST, A Large-scale, Persistent Peer-to-peer Storage Utility
    Antony Rowstron and Peter Druschel
    18th Symposium on Operating Systems Principles, October 2001

  • Wide-Area Cooperative Storage with CFS
    Frank Dabek, M. Frans Kaashoek, David Karger, Robert Morris and Ion Stoica
    18th Symposium on Operating Systems Principles, October 2001
  • On Distributed Systems
  • Impossibility of distributed consensus with one faulty process
    Michael J. Fischer, Nancy A. Lynch, and Michael S. Paterson
    Journal of the ACM, 32(2):374-382, April 1985

  • The Byzantine Generals Problem
    Leslie Lamport, Robert Shostak and Marshall Pease
    ACM Transactions on Programming Languages and Systems 4(3):382-401, July 1982
  •  
    Other readings: Some lectures have specific associated reading material for people who want to understand the specific topic in more depth.  Those are listed on the lectures web page side by side with the slide set for that day.