- 12/17: Sample final from last year is posted here.
- 11/3: Quiz 1 solution is posted.
- 10/20: Lab 5 extended to 10/25. Good luck on labs!
- Sample Midterm from last year is posted here.
- 10/7: No lecture on Tue 10/13. Midterm quiz will be on 10/23 Fri 6:30-8:00pm CIWW 317.
- 09/29: final exam scheduled on 12/22 (Tue) 7:10pm CIWW 317.
- 09/11: questions for lecture 2 are posted.
- 09/10:Important: please register for class mailing list and class machine account (see below) ASAP.
- 09/08: Please register for an account on the class machine here.
- 09/08: Please register for the class mailing list. Send your questions and help answer others' queries via this mailing list.
Class schedule: Tue 7:10-9pm (CIWW 317) .
Class instructor: Jinyang Li (Office hour: Tue 5-6pm)
Instructional assistance: Bonan Min (Office hour: Tue 304pm)
To email the instructors only: firstname.lastname@example.org
To email the entire class: email@example.com
Course informationDistributed systems help programmers aggregate the resource of many networked computers to construct highly available and scalable services. This class teaches the abstractions, design and implementation techniques that allow you to build scalable, high performance distributed systems. Topics include multithreading, network programming, consistency, naming, fault tolerance, and security and several case studies of distributed systems.
This class is a graduate level course consisting of lectures, a series of programming labs and a final project. Prerequisites include undergraduate operating systems. Programming experience in C/C++ is important for the labs.
Prerequisites:1. Undergraduate Operating Systems
2. Programming experience in C/C++ is important for the programming labs
Useful BooksThe following books may help provide background help with lab programming. None of them are required. They are listed in rough order of usefulness.
- Principles of Computer System Design. Jerome Saltzer and M. Frans Kaashoek, Morgan Kaufmann.
- Distributed Systems: Principles and Paradigms, Andrew Tanenbaum and Maarten van Steen, Prentice Hall.
- Advanced Programming in the UNIX Environment. W. Richard Stevens.
- The C++ Programming Language. Bjarne Stroustrup. Addison Wesley.
- UNIX Network Programming. Volume 1: Networking APIs: Sockets and XTI. W. Richard Stevens.
- Modern Operating Systems. Andrew Tanenbaum. Prentice Hall.
Questions or comments? email firstname.lastname@example.org
Policy on academic integrity