1 / 21

Distributed Computing Systems

Distributed Computing Systems CSCI 6900/4900 Review Design goals Resource availability to users Transparency Openness Scalability Security and privacy Hardware concepts Multiprocessors Vs. Multicomputers Bus-based Vs. Switch-based Homogenous Vs. Heterogenous Software Concepts

Patman
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 CSCI 6900/4900

  2. Review • Design goals • Resource availability to users • Transparency • Openness • Scalability • Security and privacy • Hardware concepts • Multiprocessors Vs. Multicomputers • Bus-based Vs. Switch-based • Homogenous Vs. Heterogenous

  3. Software Concepts • Functionalities • Resource managers • Hiding intricacies and heterogeneity • Two kinds of operating systems • Tightly coupled (distributed operating system) • Loosely coupled (network operating system) • Middleware • Providing transparency for loosely coupled systems

  4. OS for Distributed Systems

  5. Uniprocessor Operating Systems • Virtualize physical devices (manages devices, protects users) • Two modes (User, Kernel) • Two kinds (Monolithic, microkernel) 1.11 • Separating applications from operating system code through • a microkernel.

  6. Multiprocessor Operating Systems • Similar in many aspects to uni-processor systems • Main extension is how shared memory access is handled • Guard against simultaneous access to provide consistency • Two primitives • Semaphores • Two atomic primitives (UP and DOWN) • Monitors

  7. Monitors monitor Counter { private: int count = 0; public: int value() { return count;} void incr () { count = count + 1;} void decr() { count = count – 1;} } • Borrowed from programming languages • Has data and procedures • One process can execute at any point of time

  8. Monitors (2) monitor Counter { private: int count = 0; int blocked_procs = 0; condition unblocked; public: int value () { return count;} void incr () { if (blocked_procs == 0) count = count + 1; else signal (unblocked); } void decr() { if (count ==0) { blocked_procs = blocked_procs + 1; wait (unblocked); blocked_procs = blocked_procs – 1; } else count = count – 1; } } • Monitors can be used to conditionally block processes • Producers/consumers scenario

  9. Multicomputer Operating Systems 1.14 • Communication is only through message passing • Layer on top of local kernels for coordination and management of remote resources

  10. Multicomputer Operating Systems (2) 1.15 • Two buffering places • Four blocking points for sender (S1, S2, S3, S4) • One blocking point for receiver (S3)

  11. Communication Reliability & Synchronization • Message passing semantics also depends upon reliability of communication

  12. Distributed Shared Memory Systems (1) • Programming harder without the notion of shared address space • DSM emulates shared memory using message passing primitives • 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

  13. Effect of Page Size on DSM Performance 1.18 • Cost of page transfer is dominated by setup costs • False sharing results in unnecessary data transfers

  14. Network Operating System 1-19 • Collection of heterogeneous systems • Facilitates users to access services on specific machines (rlogin, rcp, etc.)

  15. Network Operating System (2) 1-20 • Global file systems facilitate convenient data sharing • File servers execute requests and send replies

  16. Global File Systems 1.21 • Different clients may mount the servers in different places.

  17. DOS Vs. NOS • DOS • Transparency • Ease of use & security • NOS • Scalability • Openness • Can we have best of both worlds?

  18. Middleware • Layer on top of Network OS services • Hide heterogeneity • Doesn’t manage individual nodes • Provides complete set of services

  19. Middleware Models & Services • Models • File model • Distributed file systems • Remote procedure calls • Distributed objects • Distributed document systems • Services • Communication facilities • Naming • Persistence • Transactions

  20. Middleware and Openness • Common protocols • Common interfaces • Completeness

  21. Comparison between Systems • A comparison between multiprocessor operating systems, multicomputer operating systems, network operating systems, and middleware based distributed systems.

More Related