1 / 17

Syllabus

Explore topics on distributed system services, socket programming, reliability in distributed applications, and more. Understand the principles behind communication structures and fault tolerance.

mbrothers
Download Presentation

Syllabus

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Syllabus

  2. Instructor • Dr. Hanan Lutfiyya • Middlesex College 418 • Ext. 86888 • hanan@csd.uwo.ca • Office Hours: Tuesday from 12:05-1:05 and Thursday from 11:05-1:05.

  3. Prerequisites • CS305 -- Operating Systems • CS350 -- Computer Architecture (sometimes not enforced) • CS357 -- Computer Communications Networks It is expected that you have good C skills and some knowledge of makefiles. This course is an antirequisite to SE 466 (from the Department of Electrical and Computer Engineering)

  4. Textbooks • Required textbook • Andrew S. Tanenbaum and Maarten van Steen, Distributed Systems:Principles and Paradigms, Prentice-Hall • References • G. Colouris, J. Dollimore and T. Kindberg, Distributed Systems: Concepts and Design, 3rd edition, Addison-Wesley, 2001 • J. Kurose and K. Ross, Computer Networking: A Top-Down Approach Featuring the Internet, Addison-Wesley, 2001. • R. Stevens, Unix Network Programming, Volume 1, Prentice-Hall • Links to web pages on various topics; man pages

  5. Lecture Notes • Lecture overheads will be available (hopefully) before each lecture. • They will be available in powerpoint format.

  6. E-mail Contact • All e-mail that I send will be to your GAUL account. It is your responsibility to check your GAUL account or to forward the e-mail to another account. • I will ignore e-mail from hotmail accounts and other UWO accounts unless you cc your UWO account in the message.

  7. Student Evaluation • Final Exam: 40% (April 13) • Quiz: 15% (Feb 17) • 3 Programming Assignments: 45% • No makeup quiz except for religious reasons. I need two weeks warning and you must go through your Dean’s office. • If you miss your quiz for a non-religious reason and present valid documentation to the Dean’s office, your Final exam mark will be reweighed to include the weight of the Quiz.

  8. Special Note for Graduate Students • Graduate students must complete paper reviews.

  9. Student Evaluation • To be eligible to pass the course, a student must receive at least 40% in the quiz/exam component and at least a 40% in the individual assignments. • To be eligible to receive an overall grade of 60% or higher in the course, a student must receive at least 50% in the quiz/exam component and at least 50% in the individual assignments.

  10. Assignments • Three programming assignments • Assignments are made available through the course web page. • All assignments are due by midnight. You must submit to both the locker and electronically.

  11. Late Assignments • There is a penalty of 2^n marks, where n is the number of days late. • The weekend counts as one day. • Extensions will be granted only on serious medical or compassionate grounds. • Extensions will NOT be given for minor illness.

  12. Late Coupons • You are given 3 “late coupons” • Each coupon is a one day extension. • Rules • No transfer to other students • Once used, you may not receive it back • Coupons cannot be redeemed retroactively • Unused coupons are not redeemable for extra marks • Use of a late coupon does not change the final date on which an assignment will be accepted. • No more than three coupons may be used for an assignment.

  13. More Assignment Information • Keep a backup! • Requests for an adjustment in an assignment mark must be made within 2 weeks after the assignment is returned in class. All such requests are to be written and submitted to me. • Assignments must satisfy the specifications given in the assignment description!

  14. Course Objectives • The main objective is to study the principles of distributed computing. • Distributed computing is a broad subject. This course roughly focuses on the following: • Topics related to distributed system services such as support for RPCs and file systems. • Topics related to the development of reliable distributed applications. This includes socket programming, RPC, replication, election algorithms, time, consistency and security. Your programming assignments will focus on this.

  15. Topics • Communication • Network organization • Socket Programming • RPC • Processes • Iterative vs. Concurrent servers • Thread Programming • Design Issues • Client/Server • Peer to Peer • Naming • Synchronization • Consistence and Replication • Fault Tolerance • Mobility

  16. Assignment Structure • The first assignment requires that you implement a peer to peer application whose design is loosely based on Gnutella. • The second assignment will have you implement algorithms related to time, elections and/or consistency. • The third assignment looks at making distributed applications reliable and fault-tolerant.

  17. Any Questions?

More Related