|
|
436 - Distributed Computing
Winter 2001
Instructor: Dr. Angela C. Sodan
Lectures: Th 5:30pm to 6:50pm and F 8:30am to 9:50am in OB B02
Please, check the announcement page periodically. However, important information will always be announced in class, too.
Course Description:
This course provides an overview of computer networks, distributed systems, parallel computing and grid computing. The course covers aspects like networking and internetworking, interprocess communication, middleware/toolkits for distributed computing, OO in distributed computing, distributed operating systems, distributed data storage models, multithreaded servers, virtual shared desktops, parallel machines, high-performance communication networks and communication libraries, and parallel and distributed applications.
Note that this description slightly deviates from the original description in the undergraduate calendar. The course is taught this way with agreement of the department director.
Teaching Material:
George Coulouris, Jean Dollimore, and Tim Kindberg:
Distributed Systems - Concepts and Design, Third Edition
Addison-Wesley, 2001
Furthermore, we will use some additional material from the web which will be listed under "resources" at a later point of time.
Exam Dates:
Midterm: 23rd February, during lecture
Final exam: 25th April 2001, 12:00 noon (exam slot 34)
Office Hours:
Wednesday 2pm-3pm and Thursday 2pm-3pm
Please, value our and your time and recall that all professors are very busy preparing classes to be teached (and thus servicing you) and doing research work (contributing to the state-of-the-art knowledge teached to you). Thus, please, do not disturb us at arbitrary times but come during the announced office hours during which we are prepared and happy to help you. Please, come prepared - the more specific your questions are, the better and the more effective the responses can be. But feel encouraged to use the chance which the office hours provide to you to get clarifications of what has remained unclear to you.
Assignment Policies:
All assignments are supposed to be your own work. You need to put on each assignment turned in the statement "I assure that this is completely my own work" and sign.
An exeption is the poster assignment which is supposed to be done in a group of 2 students. In this case, you need to hand in an additional sheet of paper with the statement "The presented poster is our own work and we both contributed to a significant extent to this joint work." and sign both.
It is your responsibility to find a adequate (and preferably equally strong)
partner for the poster assignment.
The poster assignment will be about preparing a presentation on a current topic in distributed and parallel processing based on web information.
The other assignments are planned to include at least a Java thread and RMI programming example and an MPI programming example. We will use Sun machines of the department for the assignments. More detailled explanations will be given later.
The assignments have to be turned in on the due date at the beginning of the lecture. There is a 25% penalty for late turn-ins. However, assignments are no longer accepted 7 days after the due date. All assignments must be placed in the School of Computer Science approved Manila envelope (9 x 12 inch) available in the bookstore. For all programming assignments, you need to turn in a print of the source code which needs to be well documented. All assignments must be clearly marked with the student's name, student number, course, section number and the instructor's name. Cheating is considered a serious misbehavior and will be consequently prosecuted with zero grace.
Exam Policies:
You may miss exams only for valid and verifiable reasons and you must give prior notice (later excuses will not be accepted) by some kind of documentary evidence (phone, fax, email) etc. Sound “proofs” must be provided within one week after the exam such as a doctoral certificate. The latter would require clear statements of the medical conditions preventing you from taking the exam (vague descriptions will not be accepted). Only if the above conditions are met, you will be permitted to take a makeup exam. There will be only a makeup for the final and no makeup for the midterm. If you miss the midterm, its weight is added to the final. The makeup of the final exam will be in the second week of the summer semester. Date and place will be announced and posted on the course web page and office bulletin board at an appropriate time. It will be your responsibility to get the information about the makeup exam. There will be no makeup of the makeup exam. If you miss the makeup exam but have taken the midterm, the midterm result minus 25% will be assigned. If you missed all exams and the makeup, you cannot pass.
Attendance:
Though not required, attendance is important as the lectures will not present the material line by line as in the book. The exams will be primarily based on the material presented in class. Thus, if you have missed information because not having been in class,
it is your responsibility to obtain the information. Exam questions, of course, do not only ask for memoized information but may also require to apply the knowledge to a new problem. There will be no electronic version of lecture notes.
Policy on Cheating:
You are expected to do all of your work on assignments and exams individually (or in a team of two for the poster assignment), without copying from any source. In cases of suspected cheating, you will get zero points for the corresponding assignment or question of the exam. Furthermore, the names of all involved students - irrespective of who cheated from whom - will be forwarded to the office of student affairs for necessary disciplinary action.
Grade Scale:
96 - 100 A+
91 - 95 A
86 - 90 A-
81 - 85 B+
76 - 80 B
71 - 75 B-
66 - 70 C+
61 - 65 C
56 - 60 C-
51 - 55 D+
46 - 50 D
41 - 45 D-
<= 40 F
Grade Composition:
final exam 40%
midterm 25%
poster presentation 15%
other assignments 20%
Tentative Schedule:
week
1,2 Introduction to Distributed and Parallel Computing System Architectures, Distributed/Shared Memory
3 Networking and Internetworking
4 Interprocess Communication, Distributed Objects and Remote Object Invocation
5 Java Threads / RMI, Pthreads, comparison between thread systems
6 CORBA, Multithreaded Servers
7 Efficient Parallel Computing, midterm
8 spring break
9 Message-Passing, MPI, Debugging Parallel Programs
10 Operating System Support, Distributed and Parallel File Systems
11 Distributed Data Storage, Name Services
12 Grid Computing, Globus, Meta Computing
13 Distributed Shared Memory, Virtual Shared Desktop
14 Future Trends
Note: The general descriptions about exams and homework were inspired by Dr. Ahmad's desriptions.
|