1 / 30

Distributed Computing Systems

Distributed Computing Systems. Hugh C. Lauer Adjunct Professor (Slides include materials from Operating System Concepts , 7 th ed., by Silbershatz, Galvin, & Gagne and from Modern Operating Systems , 2 nd ed., by Tanenbaum). Outline for Today. Introduction to CS-4513

howie
Download Presentation

Distributed Computing Systems

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. 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) Introduction

  2. Outline for Today • Introduction to CS-4513 • What is “Distributed Computing” • An example of a distributed computation • Networks • Assignment of Project #1 Introduction

  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 Introduction

  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/ Introduction

  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 Introduction

  6. 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 Leeclee01 **at** cs.wpi.edu Contact <Professor’s last name> @ cs.wpi.edu Adjunct office phone:(508) 831-6470 (shared, no messages) Schedule & Logistics Introduction

  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 Introduction

  8. Miscellaneous • Is this course the capstone for a Minor in CS? • Anyone needing a project for BS & MS credit? Introduction

  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. Introduction

  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? Introduction

  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 • … Introduction

  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. Introduction

  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 Introduction

  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 Introduction

  15. Sample images from VolumePro Introduction

  16. Class Discussion What is Distributed Computing? Introduction

  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 Introduction

  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 Introduction

  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 Introduction

  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. Introduction

  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 Introduction

  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 Introduction

  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 Introduction

  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? Introduction

  25. Internet Introduction

  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. Introduction

  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! Introduction

  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 Introduction

  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 Introduction

  30. Questions? Next TopicProgramming Project Introduction

More Related