DescriptionThis is a combined undergrad/grad course on distributed systems. The course covers fundamental techniques that underlie our industry's most critical distributed systems. Not only that, the course programming assignments provide practical experience on designing, implementing, and debugging a real distributed system. Upon completing this course, students will have intimate knowledge about how things should be distributed.
Administrative InformationLectures: MWF 1:00pm - 1:50pm (Knox 110)
Instructor: Steve Ko (UBITName: stevko)
Office: 113F Davis
Office Hours: MWF 2pm - 3pm
TA Office Hours in the TA area:
Course Communication PlatformPiazza is the main platform for this course's announcements, Q&As, and discussions.
TextbookMain Textbook: Distributed Systems: Concepts and Design, 5th Edition (George Coulouris, Jean Dollimore, Tim Kindberg, Gordon Blair)
Supplemental Textbook: Distributed Systems: Principles and Paradigms, 2nd Edition (Andrew Tanenbaum, Maarten Van Steen)
PrerequisitesData structures and algorithms, basic networking concepts (e.g., TCP/IP, routing protocols, etc.), basic OS concepts (e.g., processes, threads, synchronization, file systems, etc.), background in systems programming (pthread, socket, etc.)