1 / 36

Introduction

Introduction Chapter 1 Part II Hardware and Software Concepts Hardware Concepts (1) A DS = machines connected together How are these machines connected together? Review: multiple-CPU computer Characterization Hardware Concepts (2) 1.6

libitha
Download Presentation

Introduction

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. Introduction Chapter 1 Part II Hardware and Software Concepts

  2. Hardware Concepts (1) • A DS = machines connected together • How are these machines connected together? • Review: multiple-CPU computer Characterization

  3. Hardware Concepts (2) 1.6 Different basic organizations and memories in distributed computer systems

  4. Multiprocessors (1) Single Address Space Similar CPUs Direct, uniform Access to memory A bus-based multiprocessor 1.7 • Traffic Problems • Caching (hit ratio, consistency) • Scalable?

  5. Multiprocessors (2) 1.8 • A crossbar switch • An omega switching network

  6. Multicomputers • Each node is an autonomous machine • Private memory • Lower traffic than multiprocessors • CPU-CPU versus CPU-Memory traffic • Homogeneous or Heterogeneous

  7. Homogeneous Multicomputers (1) • Similar nodes • Same processors and memory space • Homogeneous access to network • Single network • Bus-based or point-to-point communication

  8. Homogeneous Multicomputers (2) 1-9 • Grid • Hypercube

  9. Heterogeneous Multicomputers • Different nodes • Nodes can be complex systems • Non-homogeneous access to network • Different networks • DS are commonly built on this hardware category • Need software to make it transparent

  10. Software Concepts • A DS is similar to an OS • Resource management • Virtual machine • OS = • Tightly coupled • Loosely coupled

  11. Uniprocessor Operating Systems 1.11 • Separating applications from operating system code through a microkernel.

  12. Multiple CPU Operating Systems • An overview between • DOS (Distributed Operating Systems) • NOS (Network Operating Systems) • Middleware

  13. Multiprocessor OS (1) • Similar to uniprocessor • Single ready queue • Mutual exclusion through monitors and semaphores • Multiple CPUs

  14. Multiprocessor DOS (1) Ready queue Single Ready Queue

  15. Multiprocessor DOS (2) CPU CPU CPU Kernel

  16. Multiprocessor DOS (3) • A blocks or time-quantum expires • CPU 1 runs the scheduler and chooses D A (W|R) A (X) • Schedule A again on which CPU?? B (X) C (X) D (X) D (R) E (R) C B D A OS

  17. Java Monitors (1) public class Counter { private int count = 0; public synchronized void reset() { count = 0;} public synchronized int value() { return count;} public synchronized void inc() { count = count + 1;} public synchronized void dec() { count = count – 1;} } • A monitor to protect an integer against concurrent access.

  18. Java Monitors (2) Java Compiler Lock object Counter Object public synchronized void reset() { count = 0;} public synchronized void reset() { acquire(this.lock); count = 0; release(this.lock) }

  19. Multicomputer DOS (1) 1.14 • General structure of a multicomputer operating system

  20. Multicomputer DOS (2) 1.15 • Alternatives for blocking and buffering in message passing.

  21. Multicomputer DOS (3) • Relation between blocking, buffering, and reliable communications.

  22. Distributed-Shared Memory • Multicomputers are harder to program • Multiprocessors are easier to program • Multicomputers are more efficient and better scalable than multiprocessors • DSM offers a reconciliation

  23. Page-Based DSM Example (1) • Pages of address space distributed among four machines • Situation after CPU 1 references page 10 • Situation if page 10 is read only and replication is used

  24. Page-Based DSM Example (2) X Y 1.18 • False sharing of a page between two independent processes.

  25. Network OS (1) • Hardware is not homogeneous • More primitive than DS • Not fully transparent

  26. Network OS (2) 1-19 • General structure of a network operating system.

  27. Network OS (3) • Services: • rlogin • File transfer • This led to the client/server organization

  28. Network OS (4) 1-20 • Two clients and a server in a network operating system.

  29. Network OS (5) 1.21 • Different clients may mount the servers in different places.

  30. DOS and NOS versus DS (1) • DOS qualifies as DS? • Computers are not independent • Easy to use and transparent • NOS qualifies as DS? • No single coherent view • Scalable and open

  31. Positioning Middleware 1-22 • General structure of a distributed system as middleware.

  32. Middleware • Local system provides: • Local resource management • Communication mechanism • Middleware does not manage the local nodes • Middleware hides heterogeneity • Should not call local services directly

  33. Middleware Types • File-based (NOS + Transparency) • For traditional files only • RPC-based • Hides communication • Object-based • Remote Method Invocation • Document-based • The Web

  34. Middleware Services • Communication Facilities • Naming • Persistence • Distributed Transactions • Security

  35. Middleware and Openness 1.23 • In an open middleware-based distributed system, the protocols used by each middleware layer should be the same, as well as the interfaces they offer to applications.

  36. Comparison between Systems Very High High Low High No Yes No Yes N N 1 N Shared memory Messages Files Model specific Global, distributed Per node Global, Central Per node Yes Varies Moderately No Closed Closed Open Open • A comparison between multiprocessor operating systems, multicomputer operating systems, network operating systems, and middleware based distributed systems.

More Related