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 (NSC 225)
Instructor: Steve Ko (UBITName: stevko)
Office: 304 Davis
Office Hours: MWF 2pm - 3pm
TA Office Hours at 304 Davis:
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.)