CSE 535 Asynchronous Systems (2019 Fall)
Announcements
- (Aug 21, 2019) Please join Piazza for class notifications and discussions.
- (Aug 21, 2019) Please read the collaboration and academic integrity policy; Enrollment in this class suggests you have accepted the policy.
Course information
Asynchronous/Distributed systems help programmers aggregate the resource of many networked computers to construct highly available and scalable services, such as peta-byte storage, massively parallel computation. This class teaches the abstractions, design and implementation techniques that allow you to build fast, scalable, fault-tolerant distributed systems. Topics include multithreading, network programming, consistency, naming, fault tolerance, and security and several case studies of distributed systems. The course consists of lectures and a series of programming labs.
Prerequisites:
- Undergraduate Operating Systems or Computer Systems Organization
- System-level programming experience
Useful Books
The following books may help provide background help. 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.
Acknowledgement
The topics and many materials of this class are from the distributed systems class taught at MIT and NYU.