IntroductionCS-4513, D-Term 20071 Distributed Computing Systems Hugh C. Lauer Adjunct Professor...
-
Upload
merilyn-gallagher -
Category
Documents
-
view
216 -
download
1
Transcript of IntroductionCS-4513, D-Term 20071 Distributed Computing Systems Hugh C. Lauer Adjunct Professor...
IntroductionCS-4513, D-Term 2007 1
Distributed Computing Systems
Hugh C. LauerAdjunct Professor
(Slides include materials from Operating System Concepts, 7th ed., by Silbershatz, Galvin, & Gagne and from Modern Operating Systems, 2nd ed., by Tanenbaum)
IntroductionCS-4513, D-Term 2007 2
Outline for Today
• Introduction to CS-4513
• What is “Distributed Computing”– An example of a distributed computation
• Networks
• Assignment of Project #1
IntroductionCS-4513, D-Term 2007 3
Introduction to CS-4513
• Continues CS-3013, Operating Systems– File Systems
• One lecture in C-Term CS-3013
• No coverage in A-Term CS-3013
• Networks & Communication• Computations that run on more than one machine
• Close together
• Far apart
• Internet and World Wide Web
IntroductionCS-4513, D-Term 2007 4
Textbook and Web
• Textbooks:– You should own or have access to one of the following from CS-3013– Operating Systems Concepts, 7th ed, by Silberschatz,
Galvin, and Gagne, John Wiley and Sons, 2005– Modern Operating Systems, 2nd edition, by Andrew S.
Tanenbaum, Prentice Hall, 2001
• Supplemental Text:–– Distributed Systems: Principles and Paradigms,
Tanenbaum and Van Steen, Prentice-Hall, 2007
• Course Information:– http://www.cs.wpi.edu/~cs4513/d07/
IntroductionCS-4513, D-Term 2007 5
Prerequisites
• Prerequisites:– CS-3013, Operating Systems or equivalent– C and C++ programming, esp. low level programming– Data structures– Unix/Linux user experience and access– Computer Organization
• 1st reading assignment: any of the following– Silbershatz, §16.1-16.4– Tanenbaum, §8.3– Tanenbaum & Van Steen, Chapter 1
IntroductionCS-4513, D-Term 2007 6
Schedule & Logistics
• Schedule– Goddard Hall 227– 9:00 – 10:50 AM – Tuesdays and Fridays thru May 1– No class on April 17– 14 classes total
• Exams– Mid-term on April 3– Final on May 1
• Unannounced Quizzes– May occur at any time– May be at beginning, middle, or
end of class
• Mobile Phones, pagers, laptops, and other devices OFF during class
• ~4 Programming Projects– Fossil Lab
• Office Hours– Adjunct Office, Fuller 239– by appointment, or– Normally ½ hour before and after class
• Teaching Assistant– Choong-Soo Lee
clee01 **at** cs.wpi.edu
• Contact– <Professor’s last name> @ cs.wpi.edu– Adjunct office phone:
(508) 831-6470 (shared, no messages)
IntroductionCS-4513, D-Term 2007 7
Grading
• Grading– Exams – 35%
– Programming Projects (~4) – 35%
– Class participation, homework, & quizzes – 30%
• Unless otherwise noted, assignments are to be completed individually, not groups
• Late Policy – 10%/day– But contact Professor for extenuating circumstances
• WPI Academic Honesty policy
IntroductionCS-4513, D-Term 2007 8
Miscellaneous
• Is this course the capstone for a Minor in CS?
• Anyone needing a project for BS & MS credit?
IntroductionCS-4513, D-Term 2007 9
Ground Rule
• There are no “stupid” questions.
• It is a waste of your time and the class’s time to proceed when you don’t understand the basic terms.
• If you don’t understand it, someone else probably doesn’t, either.
IntroductionCS-4513, D-Term 2007 10
Introductions
• Who are you?– Name, year, degree, major– Work experience in computing, etc.?
• C & C++ experience– Other programming experience
• Why CS-4513 – Distributed Computing Systems?
• Anything else relevant?
IntroductionCS-4513, D-Term 2007 11
Instructor — Hugh C. LauerAdjunct Professor
• Ph. D. Carnegie-Mellon 1972-73– Dissertation “Correctness in Operating Systems”
• Lecturer: University of Newcastle upon Tyne, UK• 30+ years in research and development in industry in USA• Research and system topics
– Operating Systems– Proofs of Correctness– Computer Architecture– Networks and Distributed Computing– Real-time networking– 3D Volume Rendering– Surgical Simulation and Navigation– …
IntroductionCS-4513, D-Term 2007 12
Systems Experience
• University of Newcastle• Systems Development Corporation• Xerox Corporation (Palo Alto)• Software Arts, Inc.• Apollo Computer• Eastman Kodak Company• Mitsubishi Electric Research Labs (MERL)• Real-Time Visualization
• Founded and spun out from MERL• Acquired by TeraRecon, Inc.
• SensAble Technologies, Inc.
• Currently: CTO, Dimensions Imaging, Inc.
IntroductionCS-4513, D-Term 2007 13
Accomplishments
• 21 US Patents• Two seminal contributions to CS
– Duality Hypothesis of Operating System Structures (with Roger Needham)
– First realization of opaque types in type-safe programming languages (with Ed Satterthwaite)
• VolumePro™– World’s first 2D, 3D, and 4D volume rendering system
at interactive speeds for medical, seismic, and scientific visualization
IntroductionCS-4513, D-Term 2007 14
VolumePro™
• Interactive volume rendering of 3D data such as• MRI scans
• CT scans
• Seismic scans
• Two generations of ASICs, boards, software• VolumePro 500 – 1999
• VolumePro 1000 – 2001
• CTO, Chief Architect of VolumePro 1000• 7.5-million gate, high-performance ASIC
• 109 Phong-illuminated samples per second
IntroductionCS-4513, D-Term 2007 15
Sample images from VolumePro
IntroductionCS-4513, D-Term 2007 16
Class Discussion
What is Distributed Computing?
IntroductionCS-4513, D-Term 2007 17
Distributed System
• Collection of computers that are connected together and (sometimes) interact
• Many independent problems at same time• Similar• Different
• Or …– One very big problem (or a small number)
• Computations that are physically separated• Client-server• Inherently dispersed computations
IntroductionCS-4513, D-Term 2007 18
Distributed Computing Spectrum
• Many independent problems at same time• Similar — e.g., banking & credit card; airline reservations
• Different — e.g., university computer center; your own PC
• Or …– One very big problem (or a few)
• Computations that are physically separated• Client-server
• Inherently dispersed computations
IntroductionCS-4513, D-Term 2007 19
Multiprocessing Distributed Computing(a spectrum)
• Many independent problems at same time• Similar — e.g., banking & credit card; airline reservations
• Different — e.g., university computer center; your own PC
• Or …– One very big problem (too big for one computer)
• Weather modeling, finite element analysis; drug discovery; gene modeling; weapons simulation; etc.
• Computations that are physically separated• Client-server
• Inherently dispersed computations
IntroductionCS-4513, D-Term 2007 20
Multiprocessing Distributed Computing(a spectrum)
• Many independent problems at same time• Similar — e.g., banking & credit card; airline reservations
• Different — e.g., university computer center; your own PC
• Or…– One very big problem (too big for one computer)
• Weather modeling, Finite element analysis; Drug discovery; Gene modeling; Weapons simulation; etc.
• Computations that are physically separated• Client-server
• Dispersed – routing tables for internet; electric power distribution.
IntroductionCS-4513, D-Term 2007 21
Observation
• Same spectrum applies to multiprocessor systems– Much more tightly coupled that traditional “distributed
systems”
• Some differences– “Multiprocessor systems”
• Usually under same management
• Very fast communication
– “Distributed systems”• Sometimes not under same management
• Slower communication
IntroductionCS-4513, D-Term 2007 22
Another Observation(attributed to R. Hamming)
• When you change the operating point of a system by an order of magnitude …
… you introduce qualitative changes in how to approach problems
IntroductionCS-4513, D-Term 2007 23
Let’s look at an example
• An inherently distributed computation– I.e., parts of the computation must occur at
physically separate locations– Under separate administrations
• Internet routing tables
IntroductionCS-4513, D-Term 2007 24
The Internet
• A vast collection of independent computers– ~ 600 106
• All connected together• Any computer can send a message to any
other• Messages broken up into little packets
• Question: how do packets find their way to destinations?
IntroductionCS-4513, D-Term 2007 25
Internet
IntroductionCS-4513, D-Term 2007 26
Distributed routing algorithm(simplified example)
• Each node “knows” which networks are directly connected to it.
• Each node maintains table of distant networks• [network #, 1st hop, distance]
• Adjacent nodes periodically exchange tables• Update algorithm (for each network in table)
• If (my distance to network > neighbor’s distance to network + my distance to neighbor), then …
• … update my table entry for that network so that neighbor is first hop.
IntroductionCS-4513, D-Term 2007 27
Distributed routing algorithm(result)
• All nodes in Internet maintain reasonably up-to-date routing tables
• Rapid responses to changes in network topology, congestion, failures, etc.
• Very reliable with no central management!
IntroductionCS-4513, D-Term 2007 28
Characteristic
• The routing algorithm is inherently distributed
• Different parts execute in physically separated locations
• Only nearby nodes “know” whether – Neighbors are up or down– Networks are congested or not
IntroductionCS-4513, D-Term 2007 29
Big networks
• Network management systems• Monitoring health of network (e.g., routing tables)
• Identifying actual or incipient problems
• Data and statistics for planning purposes
IntroductionCS-4513, D-Term 2007 30
Next Topic
Programming Project
Questions?