Distributed Computing Principles: 
A graduate-level introduction to the characterization of distributed computing, the basic models of distributed systems, the essential problems, and algorithm design technologies in a distributed environment. The course will mainly cover inter-process communication, remote invocation, indirect communication, operating system support, distributed objects and components, web services, security, distributed file systems, naming services, and case study of distributed systems. With the core principle study and practice of the course project, we expect the students to apply the studied knowledge to distributed system design, implementation, and problem-solving.
Slides are as below (the matrials are partially derived from Prof Rajkumar Buyya and Prof. George Couloris):
0. Course Requirements pdf (君看天上星,东西各分布)
1. Introduction: Distributed Computing Concepts demo pdf (话说天下大势,分久必合,合久必分)
2. Inter-process Communication demo pdf (云中谁寄锦书来)
3. Multi-thread Programming demo pdf (万马蹄如骤雨来)
4. Distributed System Models pdf (千磨万击还坚劲,任尔东西南北风)
5. Operating System Architecture and Distributed Syetems demo pdf (泰山不让土壤,故能成其大)
6. Distributed Objects Programming - Remote Invocation demo pdf (相知无远近,万里尚为邻)
7. Naming Services demo pdf (山深只为无名故)
8. Security of Distributed Computing demo pdf (公输盘九设攻城之机变,子墨子九距之)
9. Distributed File Systems demo ppt (圣处一灯传,工夫萤雪边)
10. Web Services  pdf (天网疏难漏,世网密莫通)
11. Mobile and Ubiquitous Computing  pdf  (万物并育而不相害,道并行而不相悖)
12. Cloud Computing Systems pdf (云深不知处)