Download presentation
Presentation is loading. Please wait.
Published byStanley Hodge Modified over 9 years ago
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 u Andrew S. Tanenbaum and Maarten van Steen, Distributed Systems:Principles and Paradigms, Prentice-Hall References u G. Colouris, J. Dollimore and T. Kindberg, Distributed Systems: Concepts and Design, 3rd edition, Addison-Wesley, 2001 u J. Kurose and K. Ross, Computer Networking: A Top-Down Approach Featuring the Internet, Addison-Wesley, 2001. u R. Stevens, Unix Network Programming, Volume 1, Prentice-Hall u 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 u No transfer to other students u Once used, you may not receive it back u Coupons cannot be redeemed retroactively u Unused coupons are not redeemable for extra marks u Use of a late coupon does not change the final date on which an assignment will be accepted. u 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: u Topics related to distributed system services such as support for RPCs and file systems. u 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 u Network organization u Socket Programming u RPC Processes u Iterative vs. Concurrent servers u Thread Programming u Design Issues u Client/Server u 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?
Similar presentations
© 2024 SlidePlayer.com. Inc.
All rights reserved.