130 likes | 280 Views
CMPT 401. Distributed Systems Concepts And Design. Meta-data. Instructor: Senqiang Zhou E-mail: szhoua@cs.sfu.ca Office Hours: Tu. 10-11am, Th. 1-2pm Location: L9005 TA: Angie Zhang E-mail: angiez@cs.sfu.ca Office Hours: Mo. 2:30-3:30pm, Fr. 4:30-5:30pm Location: K9505
E N D
CMPT 401 Distributed Systems Concepts And Design
Meta-data • Instructor: Senqiang Zhou • E-mail: szhoua@cs.sfu.ca • Office Hours: Tu. 10-11am, Th. 1-2pm • Location: L9005 • TA: Angie Zhang • E-mail: angiez@cs.sfu.ca • Office Hours: Mo. 2:30-3:30pm, Fr. 4:30-5:30pm • Location: K9505 • Course E-mail List: • cmpt-401@sfu.ca • www.cs.sfu.ca/CC/401/szhoua
Pre-requisites • CMPT 300: OS I • CMPT 371: Data communication & networking • Programming Languages: • Java (for project and assignment) • C (for some assignments)
Grading Scheme • 5 assignments (20%) • May involve programming • 1 Project (15%) • Programming intensive • Java • 1 Midterm (1 hour, 20%) • 1 Final (3 hours, 45%)
Main Topics • Introduction • Inter-process communication • Middleware • OOP with distributed file systems • Distributed coordination • Protection and security • Other topics (if time permits)
How to learn this course? • Any shortcut? • Reading slides alone? • Published after classes • Should I show up in the class? • Details vs. high-level principles? • Advice: thinking asking • Having questions?
Questions for You • What does still remain in your mind for the OS course, database course, or whatever course? • Do you think you will remember it for your whole life? • Do you think it will be useful for your life or career?
Chapter 1 Introduction
Examples of DS • Internet • WWW, telnet, ftp, e-mail… • Intranet • Router, firewall • Mobile computing • E.g. PDA
Resource sharing • Reduce cost • Hardware, software • Improve performance • Parallel computing • System stability • Rapid information exchange • E-mail vs. snail mail
Challenges • Heterogeneity • E.g. Little-endian, big-endian, copy files • Middleware: CORBA, Java RMI • Openness • Published interfaces • E.g. API • Easily extended • Security • E.g. denial of attacks
Challenges (Cont.) • Scalability • 1000 CPU > 1 CPU? • Control the performance loss, cost of physical resource • Failure handling • Detecting, handling, recovering • Concurrency
Challenges (Cont.) • Transparency • Access transparency • Location transparency • Concurrency transparency • Replication transparency • Failure transparency • Mobility transparency • Performance transparency • Scaling transparency