Distributed Systems. Definitions. Why Build Distributed Systems? Operating Systems - Overview. Operating Systems - Overview
|
|
- Hope Wilkerson
- 6 years ago
- Views:
Transcription
1 Distributed Systems Joseph Spring School of Computer Science Distributed Systems and Security Areas for Discussion Definitions Operating Systems Overview Challenges Heterogeneity Limitations and 2 Definitions Coulouris, Dollimore & Kindberg: A distributed system is one in which components located at networked computers communicate and coordinate their actions only by passing messages Tanenbaum & van Steen A distributed system is a collection of independent computers that appears to its users as a single coherent system Silberschatz, Galvin & Gagne A distributed system is a collection of loosely coupled processors interconnected by a communication network 3 Why Build Distributed Systems? Silberschatz, Galvin and Gagne Four reasons: Resource Sharing Computational Speedup Reliability Communication 4 Monolithic Operating Systems early operating systems (mid-late 1950 s) generally designed with little concern about structure and little experience of building large software systems Communication? User documentation? Problems caused by mutual dependence and interaction grossly underestimated Lack of structure unsustainable as o/s grew to massive proportions Layered Operating Systems Functions are organised hierarchically Interaction only takes place between adjacent layers Most or all of the layers execute in kernel mode Users File System Interprocess Communication I/O and Device Management Virtual Memory Primitive Process Management Hardware 5 6 1
2 Microkernel Based Operating Systems Popularised by its use in the MACH O/S Approach provides high degree of flexibility and modularity Approach used in Windows NT Claims modularity, portability as key benefits Microkernel surrounded by number of compact subsystems easing task of implementing NT on variety of platforms 7 Microkernel Based Operating Systems Philosophy - only absolutely essential core operating system functions should be in the kernel Less essential services and applications are built on the microkernel and operate in user mode Characteristic here is that many services traditionally thought of as part of the O/S are now external subsystems that interact with the kernel and with each other Device drivers, File systems, Virtual memory manager, Windowing system, Security services, 8 Microkernel Based Operating Systems esses Client Proce * * * Device Driv vers File Server Microkernel Hardware Process Serv ver Virtual Mem mory 9 Microkernel Benefits Uniform Interfaces Extensibility Flexibility Portability Reliability Distributed System Support Object-Orientated Operating System (OOOS) W. Stallings, Operating Systems Prentice Hall 10 Microkernel Architecture Replaces traditional vertical layered stratified O/S with horizontal one O/S components external to microkernel are implemented as server processes, interacting with each other on a peer basis, by passing messages through the microkernel Hence microkernel operates as a message exchange Microkernel Validates messages Passes messages between components Grants access to H/W 11 Operating Systems Hand Outs Distributed Operating Systems UniprocessorO/S Multiprocessor O/S MulticomputerO/S Distributed Shared Memory Systems Network Operating Systems Shared Memory v Message Passing Systems A. S. Tanenbaum & M. van Steen, Distributed Systems, Prentice Hall 12 2
3 Challenges Coulouris, Dollimore& Kindberg discuss the above goals (and others) in terms of challenges: Heterogeneity Heterogeneity and Mobile Code Openness Security Scalability Failure Handling Concurrency 13 Heterogeneity Variety and difference in the collection of computers and networks employed in for example the internet Applies to each of the following: Networks, H/W, O/S s, Programming Languages, Implementations by different developers Networks Differences are masked on the internet since all computers attached to them use the internet protocols to communicate with each other H/W Data types may be represented in different ways by different H/W Little endian v big endian byte ordering of integers These must be resolved in order to communicate using different H/W 14 Heterogeneity O/S s All have to supply implementation of internet protocols Do not necessarily provide the same Application Programming Interface to these protocols Calls for exchanging gmessages in UNIX different from those in Windows Programming Languages Different programming languages use different representations for characters and data structures Arrays and records These need to be addressed if programs written in different languages are to communicate 15 Heterogeneity Implementations by different developers Programs written by different developers cannot communicate unless they use common standards Standards need to be agreed and adopted, as have the internet protocols 16 Heterogeneity and The software layer that provides a programming abstraction as well as masking the heterogeneity of the underlying networks, H/W, O/S s and Programming Languages Examples CORBA Java RMI Supports single programming language Most middleware implemented over the internet protocols which in turn mask the difference of the underlying networks All middleware deals with the differences in O/S s and H/W Provides a uniform computational model for use by programmers of servers and distributed applications 17 the concealment from the user and the application programmer of the separation of components in a distributed system, so that the system is perceived as a whole rather than as a collection of independent components. ANSA Reference Manual [ANSA 1989] and the International Standards Organisation Reference Model for Open Distributed Processing (RM- ODP) [ISO 1992] identify 8 forms of transparency: 18 3
4 Access Location Concurrency Replication Failure Mobility Performance Scaling Network 19 Access Enables local and remote resources to be accessed using identical operations Location The accessing of resources without knowledge of their location Concurrency The concurrent use of shared resources by several processes without interference between the processes 20 Access Example To send an integer from an Intel based workstation to a Sun SPARC machine means that we take into account that Intel orders its bytes in little endian format (high order bit is transmitted first) and that the SPARC processor uses big endian format ( low order bit is transmitted first) Computer systems may run different O/S each having their own name filing conventions. Differences in naming conventions and how files can be manipulated should be hidden from the user 21 Location Example Naming plays an important role in achieving location transparency For Example: The address gives no indication of location of main server Unlike URL s which end with.uk,.ie, 22 Replication Multiple instances of resources used to increase reliability and performance without knowledge of replications by users or application programmers Failure The concealment of faults, allowing users and application programs to complete tasks despite the failure of H/W and/or S/W components Mobility Allows movement of resources and clients within a system without affecting the operation of users or programs 23 Replication Note: Plays an important role in Distributed Systems Resources may be replicated in order to Increase availability Improve performance by placing copies close to demand Hides fact that several copies of a resource exist To support replication transparency all replicas must have same name System supporting replication transparency generally supports location transparency too, otherwise impossible to refer to replicas at different locations 24 4
5 Failure Note: Masking failures one of hardest issues in distributed systems Main difficulty Inability to distinguish between a dead resource and a painfully slow one Example Contacting a busy web server Browser will eventually time out & report web page unavailable User cannot conclude server is really down 25 Mobility Example 1 The reference to index.html in the address gives no information as to how long it has been at this location or whether it has recently moved This is an example of mobility / migration transparency 26 Mobility Example 2 Where resources can be relocated whilst they are being accessed without the user or application noticing Mobile users continuing to use wireless laptop whilst moving without being disconnected An example of mobility / relocation transparency 27 Performance Allowing the system to be reconfigured to improve performance as loads vary Scaling Allowing the system and applications to expand in scale without change to the system structure or the application algorithms Access and Location are often referred to collectively as Network 28 Tanenbaumand van Steen A distributed system that is able to present itself to users and applications as if it were only a single computer system is said to be transparent Software Architecture Originally: the structuring of software as layers or modules in a single computer Recently: in terms of services offered and requested between processes in same or different computer in terms of service layers Platform Applications, Services Operating Systems Computer and Network Hardware
6 a layer of software whose purpose is to mask heterogeneity and to provide a convenient programming model to application programmers Represented by processes or objects interacting i in a set of computers to implement communication and resource sharing support for distributed applications Concerned with providing useful building blocks for the construction of software components that can work together 31 Limitations Many distributed app s rely entirely on the services provided by available middleware to support communication and data sharing needs Much has been achieved through the development of middleware however some aspects of the dependability of systems require support at the application level A similar point is made by Saltzer, Reed and Clark, regarding the design of distributed systems, the end-to-end argument 32 Limitations some communication-related functions can be completely and reliably implemented only with the knowledge and help of the application standing at the end points of the communication system. Therefore, providing that t function as a feature of the communication system itself is not always sensible. (An incomplete version of the function provided by the communication system may sometimes be useful as a performance enhancement) Saltzer, Reed and Clark Limitations The argument is counter to the view that all communication activities can be abstracted away from the programming of applications by the introduction of appropriate middleware layers For SR&C correct behaviour in distributed programs depend upon checks, error correction mechanisms and security measures at many levels Checks within communication system only will be only partially correct Same work is therefore likely to be replicated inapplication programs leading to wasteful programming, unnecessary complexity and computational redundancy 34 Limitations See following references: Saltzer,J.H., Reed D.P. and Clarke, D End-to-End Arguments in System Design, ACM Transactions on Computer Systems, Vol.2, No.4, pp IPC - InterProcess Communication 35 / Design Issues IPC 36 6
7 may be represented as consisting of just two layers, as shown below: Applications, Services RMI and RPC Request Reply Protocol Marshalling and Data Representation UDP and TCP / Operating System / Design Issues IPC 37 RMI and RPC Layer Concerned with integrating communication into a programming paradigm by providing RMI or RPC Remote Method Invocation Allows an object to invoke a method in an object in a remote process Examples of systems for RMI are CORBA and Java RMI Remote Procedure Call Allows a client to invoke a procedure in a remote server / Design Issues IPC 38 Request-Reply Protocol, Marshalling and the External Data Representation Layer Concerned with suitable protocols that support client-server (and group communication) Concerned with the translation of objects and data structures into a form suitable for sending in messages over the network Takes into account different computers may use different representations for simple data items CDK consider a suitable representation for object references in a distributed system / Design Issues IPC 39 IPC IPC best provided through a message-passing system? See CDK Section Data Streaming, p74 - audio and video streams Function of Message-Passing System To facilitate communication between processes without need to resort to shared data IPC facility provides at least two operations: send(message) receive(message) / Design Issues IPC 40 Send and Receive A process p performs a send by inserting a message m into its outgoing message buffer The communication channel transports m to process q s incoming message buffer Process q performs a receive by taking m from its message buffer and delivering it Process p send m Communication Channel Outgoing Message Buffer Process q receive m Incoming Message Buffer Request-Reply Protocol dooperation, getrequest, sendreply dooperation.. (wait). (continuation) Request Message Reply Message getrequest select object execute method sendreply / Design Issues IPC 41 / Design Issues IPC 42 7
8 Request-Reply Protocol dooperation used by clients to invoke remote operations. Specifies remote object, method to invoke and additional information (arguments) required by method It is assumed that client carries out marshalling of request and unmarshalling of reply getrequest is used by the server to acquire service requests sendreply is used to send the reply message to the client once the server has invoked the method in specified object / Design Issues IPC 43 External Data Representation Defined to be: An agreed standard for the representation of data structures and primitive values Information stored in running programs is represented as Data Structures for example by sets of interconnected objects Information in messages given as sequence of bytes Irrespective of the form of communication used data structures must be flattened (converted to a sequence of bytes) prior to transmission and rebuilt once they arrive at their destination / Design Issues IPC 44 External Data Representation Possible Method for Exchange of Data Values Convert values to agreed external format prior to sending To local form upon receipt If computers known to be of same type then omit conversion Alternatively Transmit values in senders format with detail of format used Let recipient convert the values as necessary Note: bytes are never altered during transmission To support RMI/RPC must be able to Flatten any data types that can be passed as an argument or as result Agree format / Design Issues IPC 45 Marshalling/Unmarshalling Marshalling is the process of taking a collection of data items and assembling them into a form suitable for transmission in a message The translation of structured data items and primitive values into an external data representation ti Unmarshalling is the process of disassembling the received messages to produce an equivalent collection of data items at the destination The generation of primitive values from their external data representation and the rebuilding of the data structures / Design Issues IPC 46 and The originators of RPC Birrell and Nelson [1984] intended that RPC be as much like local procedure calls as possible Have no distinction between local and remote procedural calls To make semantics of RPC like local proc. calls all necessary calls to Marshalling and message passing procedures hidden from the programmer making the call Retransmissions due to timeout transparent to the caller / Design Issues IPC 47 / Design Issues IPC 48 8
9 has been extended to apply to distributed objects This involves HIDING: marshalling and message passing operations The task of locating and contacting remote objects Remote invocations are more vulnerable to failure than local ones They involve: Network(s) another Computer another Process Possibility of no reply always exists In the case of failure difficult to identify the problem Network or remote process Objects making remote invocations must be able to recover from such failures / Design Issues IPC 49 / Design Issues IPC 50 Latency for remote invocations Much greater than for local invocations Programs using remote invocations need to take this into account Perhaps by minimising remote interactions Choice regarding transparency for remote invocations is available to designers of IDL s (Interface Definition Languages) Interface definition languages are designed to allow objects implemented in different languages to invoke one another (See CDK pp - 6 Example CORBA IDL Chap ) / Design Issues IPC 51 Current Consensus Remote invocations should be made transparent in the sense that Syntax of remote and local invocations should be the same The difference between local and remote objects should be expressed in their interfaces The knowledge that an object intended to be accessed by remote invocation also means that its designer must ensure that it can keep its state consistent whilst experiencing concurrent access from other clients / Design Issues IPC 52 Summary Definitions Operating Systems Overview Challenges Heterogeneity Limitations and 53 9
Interprocess Communication
Interprocess Communication Tanenbaum & Van Steen, Distributed Systems: Principles and Paradigms, 2e, (c) 2007 Prentice-Hall, Inc. All rights reserved. 0-13-239227-5 Introduction Applications, services
More information02 - Distributed Systems
02 - Distributed Systems Definition Coulouris 1 (Dis)advantages Coulouris 2 Challenges Saltzer_84.pdf Models Physical Architectural Fundamental 2/58 Definition Distributed Systems Distributed System is
More information02 - Distributed Systems
02 - Distributed Systems Definition Coulouris 1 (Dis)advantages Coulouris 2 Challenges Saltzer_84.pdf Models Physical Architectural Fundamental 2/60 Definition Distributed Systems Distributed System is
More informationDistributed Systems Lecture 2 1. External Data Representation and Marshalling (Sec. 4.3) Request reply protocol (failure modes) (Sec. 4.
Distributed Systems Lecture 2 1 Today s Topics External Data Representation and Marshalling (Sec. 4.3) Request reply protocol (failure modes) (Sec. 4.4) Distributed Objects and Remote Invocations (5.1)
More informationDistributed Systems. Joseph Spring School of Computer Science. Distributed Systems and Security. Lecture - Definition and Motivation
Distributed Systems Distributed Systems and Security Joseph Spring School of Computer Science Introduction Distributed Systems Definitions Purpose Characteristics Challenges Design Requirements Middleware,
More informationChapter 1: Distributed Systems: What is a distributed system? Fall 2013
Chapter 1: Distributed Systems: What is a distributed system? Fall 2013 Course Goals and Content n Distributed systems and their: n Basic concepts n Main issues, problems, and solutions n Structured and
More informationRemote Invocation. Today. Next time. l Overlay networks and P2P. l Request-reply, RPC, RMI
Remote Invocation Today l Request-reply, RPC, RMI Next time l Overlay networks and P2P Types of communication " Persistent or transient Persistent A submitted message is stored until delivered Transient
More information03 Remote invoaction. Request-reply RPC. Coulouris 5 Birrel_Nelson_84.pdf RMI
03 Remote invoaction Request-reply RPC Coulouris 5 Birrel_Nelson_84.pdf RMI 2/23 Remote invocation Mechanisms for process communication on a Built on top of interprocess communication primitives Lower
More informationMiddleware and Interprocess Communication
Middleware and Interprocess Communication Reading Coulouris (5 th Edition): 41 4.1, 42 4.2, 46 4.6 Tanenbaum (2 nd Edition): 4.3 Spring 2015 CS432: Distributed Systems 2 Middleware Outline Introduction
More informationOperating System Support
Operating System Support Dr. Xiaobo Zhou Adopted from Coulouris, Dollimore and Kindberg Distributed Systems: Concepts and Design Edition 4, Addison-Wesley 2005 1 Learning Objectives Know what a modern
More informationStructured communication (Remote invocation)
Prof. Dr. Claudia Müller-Birn Institute for Computer Science, Networked Information Systems Structured communication (Remote invocation) Nov 8th, 2011 Netzprogrammierung (Algorithmen und Programmierung
More informationDistributed Systems. Lehrstuhl für Informatik IV RWTH Aachen. Organisation. Classification of the lecture. Literature
Organisation Distributed Systems Lehrstuhl für Informatik IV RWTH Aachen Prof. Dr. Otto Spaniol Dipl.-Inform. Dirk Thißen Exercises about all 14 days Wednesday, 15.30 17.00 Room AH III, RWTH Aachen Teacher-centred
More informationDistributed Objects and Remote Invocation. Programming Models for Distributed Applications
Distributed Objects and Remote Invocation Programming Models for Distributed Applications Extending Conventional Techniques The remote procedure call model is an extension of the conventional procedure
More informationRemote Invocation. Today. Next time. l Indirect communication. l Request-reply, RPC, RMI
Remote Invocation Today l Request-reply, RPC, RMI Next time l Indirect communication Data representation and marshalling Processes information kept as data structures but sent in msgs as sequence of bytes
More informationOS Design Approaches. Roadmap. OS Design Approaches. Tevfik Koşar. Operating System Design and Implementation
CSE 421/521 - Operating Systems Fall 2012 Lecture - II OS Structures Roadmap OS Design and Implementation Different Design Approaches Major OS Components!! Memory management! CPU Scheduling! I/O Management
More informationDistributed Systems. Lehrstuhl für Informatik 4. RWTH Aachen. Organization. Literature. Classification of the lecture
Organization Distributed Systems RWTH Aachen Dr. Dirk Thißen Prof. Dr. Otto Spaniol 1 Exercises about all 14 days Room AH 5, RWTH Aachen Teacher-centered exercises Contact Dirk Thißen, Room 4226 (Building
More informationDistributed Information Processing
Distributed Information Processing 5 th Lecture Eom, Hyeonsang ( 엄현상 ) Department of Computer Science & Engineering Seoul National University Copyrights 2017 Eom, Hyeonsang All Rights Reserved Outline
More informationOutline. Interprocess Communication. Interprocess Communication. Communication Models: Message Passing and shared Memory.
Eike Ritter 1 Modified: October 29, 2012 Lecture 14: Operating Systems with C/C++ School of Computer Science, University of Birmingham, UK Outline 1 2 3 Shared Memory in POSIX systems 1 Based on material
More informationModule 1 - Distributed System Architectures & Models
Module 1 - Distributed System Architectures & Models System Architecture Defines the structure of the system components identified functions of each component defined interrelationships and interactions
More informationCSC Operating Systems Fall Lecture - II OS Structures. Tevfik Ko!ar. Louisiana State University. August 27 th, 2009.
CSC 4103 - Operating Systems Fall 2009 Lecture - II OS Structures Tevfik Ko!ar Louisiana State University August 27 th, 2009 1 Announcements TA Changed. New TA: Praveenkumar Kondikoppa Email: pkondi1@lsu.edu
More informationAnnouncements. Computer System Organization. Roadmap. Major OS Components. Processes. Tevfik Ko!ar. CSC Operating Systems Fall 2009
CSC 4103 - Operating Systems Fall 2009 Lecture - II OS Structures Tevfik Ko!ar TA Changed. New TA: Praveenkumar Kondikoppa Email: pkondi1@lsu.edu Announcements All of you should be now in the class mailing
More informationCommunication. Distributed Systems Santa Clara University 2016
Communication Distributed Systems Santa Clara University 2016 Protocol Stack Each layer has its own protocol Can make changes at one layer without changing layers above or below Use well defined interfaces
More informationMODELS OF DISTRIBUTED SYSTEMS
Distributed Systems Fö 2/3-1 Distributed Systems Fö 2/3-2 MODELS OF DISTRIBUTED SYSTEMS Basic Elements 1. Architectural Models 2. Interaction Models Resources in a distributed system are shared between
More informationRMI: Design & Implementation
RMI: Design & Implementation Operating Systems RMI 1 Middleware layers Applications, services RMI and RPC request-reply protocol marshalling and external data representation Middleware layers UDP and TCP
More informationDistributed Systems Course. a.o. Univ.-Prof. Dr. Harald Kosch
Distributed Systems Course a.o. Univ.-Prof. Dr. Harald Kosch Topics Introduction Advantages, Disadvantages, Hard/Soft Concepts Network / Distributed Operating Systems Basics of Communication Models (Client/Server,
More informationRoadmap. Tevfik Koşar. CSE 421/521 - Operating Systems Fall Lecture - II OS Structures. University at Buffalo. OS Design and Implementation
CSE 421/521 - Operating Systems Fall 2013 Lecture - II OS Structures Tevfik Koşar University at Buffalo August 29 th, 2013 1 Roadmap OS Design and Implementation Different Design Approaches Major OS Components!
More informationOS Design Approaches. Roadmap. System Calls. Tevfik Koşar. Operating System Design and Implementation. CSE 421/521 - Operating Systems Fall 2013
CSE 421/521 - Operating Systems Fall 2013 Lecture - II OS Structures Roadmap OS Design and Implementation Different Design Approaches Major OS Components!! Memory management! CPU Scheduling! I/O Management
More informationDistributed Systems LEEC (2006/07 2º Sem.)
Distributed Systems LEEC (2006/07 2º Sem.) Introduction João Paulo Carvalho Universidade Técnica de Lisboa / Instituto Superior Técnico Outline Definition of a Distributed System Goals Connecting Users
More informationDistributed Systems Inter-Process Communication (IPC) in distributed systems
Distributed Systems Inter-Process Communication (IPC) in distributed systems Mathieu Delalandre University of Tours, Tours city, France mathieu.delalandre@univ-tours.fr 1 Inter-Process Communication in
More informationLecture 5: Object Interaction: RMI and RPC
06-06798 Distributed Systems Lecture 5: Object Interaction: RMI and RPC Distributed Systems 1 Recap Message passing: send, receive synchronous versus asynchronous No global Time types of failure socket
More informationDistributed Systems (5DV147)
Distributed Systems (5DV147) Fundamentals Fall 2013 1 basics 2 basics Single process int i; i=i+1; 1 CPU - Steps are strictly sequential - Program behavior & variables state determined by sequence of operations
More informationMODELS OF DISTRIBUTED SYSTEMS
Distributed Systems Fö 2/3-1 Distributed Systems Fö 2/3-2 MODELS OF DISTRIBUTED SYSTEMS Basic Elements 1. Architectural Models 2. Interaction Models Resources in a distributed system are shared between
More informationSAI/ST course Distributed Systems
SAI/ST course Distributed Systems 2013, Sep. 26 Oct 01 Lecture 3: Communication Agenda Overview Concepts Organization in layers IPC primitives Direct communication Indirect communication R.H. Mak 27-9-2013
More informationCrossbar switch. Chapter 2: Concepts and Architectures. Traditional Computer Architecture. Computer System Architectures. Flynn Architectures (2)
Chapter 2: Concepts and Architectures Computer System Architectures Disk(s) CPU I/O Memory Traditional Computer Architecture Flynn, 1966+1972 classification of computer systems in terms of instruction
More informationCS555: Distributed Systems [Fall 2017] Dept. Of Computer Science, Colorado State University
CS 555: DISTRIBUTED SYSTEMS [RPC & DISTRIBUTED OBJECTS] Shrideep Pallickara Computer Science Colorado State University Frequently asked questions from the previous class survey XDR Standard serialization
More informationIntroduction. Distributed Systems IT332
Introduction Distributed Systems IT332 2 Outline Definition of A Distributed System Goals of Distributed Systems Types of Distributed Systems 3 Definition of A Distributed System A distributed systems
More information2. System Models Page 1. University of Freiburg, Germany Department of Computer Science. Distributed Systems. Chapter 2 System Models
2. System Models Page 1 University of Freiburg, Germany Department of Computer Science Distributed Systems Chapter 2 System Models Christian Schindelhauer 27. April 2012 2. System Models 2.1. Introduction
More informationChapter 4 Communication
DISTRIBUTED SYSTEMS Principles and Paradigms Second Edition ANDREW S. TANENBAUM MAARTEN VAN STEEN Chapter 4 Communication Layered Protocols (1) Figure 4-1. Layers, interfaces, and protocols in the OSI
More informationChapter 5: Remote Invocation. Copyright 2015 Prof. Amr El-Kadi
Chapter 5: Remote Invocation Outline Introduction Request-Reply Protocol Remote Procedure Call Remote Method Invocation This chapter (and Chapter 6) Applications Remote invocation, indirect communication
More informationCS454/654 Midterm Exam Fall 2004
CS454/654 Midterm Exam Fall 2004 (3 November 2004) Question 1: Distributed System Models (18 pts) (a) [4 pts] Explain two benefits of middleware to distributed system programmers, providing an example
More informationSystem Models for Distributed Systems
System Models for Distributed Systems INF5040/9040 Autumn 2015 Lecturer: Amir Taherkordi (ifi/uio) August 31, 2015 Outline 1. Introduction 2. Physical Models 4. Fundamental Models 2 INF5040 1 System Models
More informationRemote Procedure Call
Remote Procedure Call Remote Procedure Call Integrate network communication with programming language Procedure call is well understood implementation use Control transfer Data transfer Goals Easy make
More informationOutline. Definition of a Distributed System Goals of a Distributed System Types of Distributed Systems
Distributed Systems Outline Definition of a Distributed System Goals of a Distributed System Types of Distributed Systems What Is A Distributed System? A collection of independent computers that appears
More informationPart V. Process Management. Sadeghi, Cubaleska RUB Course Operating System Security Memory Management and Protection
Part V Process Management Sadeghi, Cubaleska RUB 2008-09 Course Operating System Security Memory Management and Protection Roadmap of Chapter 5 Notion of Process and Thread Data Structures Used to Manage
More informationDistributed Systems. The main method of distributed object communication is with remote method invocation
Distributed Systems Unit III Syllabus:Distributed Objects and Remote Invocation: Introduction, Communication between Distributed Objects- Object Model, Distributed Object Modal, Design Issues for RMI,
More informationDISTRIBUTED SYSTEMS Principles and Paradigms Second Edition ANDREW S. TANENBAUM MAARTEN VAN STEEN. Chapter 1. Introduction
DISTRIBUTED SYSTEMS Principles and Paradigms Second Edition ANDREW S. TANENBAUM MAARTEN VAN STEEN Chapter 1 Introduction Modified by: Dr. Ramzi Saifan Definition of a Distributed System (1) A distributed
More informationChapter 5: Processes & Process Concept. Objectives. Process Concept Process Scheduling Operations on Processes. Communication in Client-Server Systems
Chapter 5: Processes Chapter 5: Processes & Threads Process Concept Process Scheduling Operations on Processes Interprocess Communication Communication in Client-Server Systems, Silberschatz, Galvin and
More informationCHAPTER 1 Fundamentals of Distributed System. Issues in designing Distributed System
CHAPTER 1 Fundamentals of Distributed System Introduction Distributed Computing Models Software Concepts Issues in designing Distributed System Client Server Model 1 What is a Distributed System? Tanenbaum
More informationOutline. EEC-681/781 Distributed Computing Systems. The OSI Network Architecture. Inter-Process Communications (IPC) Lecture 4
EEC-681/781 Distributed Computing Systems Lecture 4 Department of Electrical and Computer Engineering Cleveland State University wenbing@ieee.org Outline Inter-process communications Computer networks
More informationChapter 5 Remote Invocation. Gandeva Bayu Satrya, ST., MT. Telematics Labz. Informatics Department Telkom
Chapter 5 Remote Invocation Gandeva Bayu Satrya, ST., MT. Telematics Labz. Informatics Department Telkom University @2014 Outline Today Chapter 5 Remote Invocation. Chapter 6 Indirect Communication. Request-Reply
More informationTHE IMPACT OF E-COMMERCE ON DEVELOPING A COURSE IN OPERATING SYSTEMS: AN INTERPRETIVE STUDY
THE IMPACT OF E-COMMERCE ON DEVELOPING A COURSE IN OPERATING SYSTEMS: AN INTERPRETIVE STUDY Reggie Davidrajuh, Stavanger University College, Norway, reggie.davidrajuh@tn.his.no ABSTRACT This paper presents
More informationDesigning Issues For Distributed Computing System: An Empirical View
ISSN: 2278 0211 (Online) Designing Issues For Distributed Computing System: An Empirical View Dr. S.K Gandhi, Research Guide Department of Computer Science & Engineering, AISECT University, Bhopal (M.P),
More informationChapter 3: Client-Server Paradigm and Middleware
1 Chapter 3: Client-Server Paradigm and Middleware In order to overcome the heterogeneity of hardware and software in distributed systems, we need a software layer on top of them, so that heterogeneity
More informationLecture 06: Distributed Object
Lecture 06: Distributed Object Distributed Systems Behzad Bordbar School of Computer Science, University of Birmingham, UK Lecture 0? 1 Recap Interprocess communication Synchronous and Asynchronous communication
More informationMiddleware. Adapted from Alonso, Casati, Kuno, Machiraju Web Services Springer 2004
Middleware Adapted from Alonso, Casati, Kuno, Machiraju Web Services Springer 2004 Outline Web Services Goals Where do they come from? Understanding middleware Middleware as infrastructure Communication
More informationAnnouncements. me your survey: See the Announcements page. Today. Reading. Take a break around 10:15am. Ack: Some figures are from Coulouris
Announcements Email me your survey: See the Announcements page Today Conceptual overview of distributed systems System models Reading Today: Chapter 2 of Coulouris Next topic: client-side processing (HTML,
More informationDistributed Operating Systems Spring Prashant Shenoy UMass Computer Science.
Distributed Operating Systems Spring 2008 Prashant Shenoy UMass Computer Science http://lass.cs.umass.edu/~shenoy/courses/677 Lecture 1, page 1 Course Syllabus CMPSCI 677: Distributed Operating Systems
More informationChapter 2 System Models
CSF661 Distributed Systems 分散式系統 Chapter 2 System Models 吳俊興國立高雄大學資訊工程學系 Chapter 2 System Models 2.1 Introduction 2.2 Physical models 2.3 Architectural models 2.4 Fundamental models 2.5 Summary 2 A physical
More informationModule 3 - Distributed Objects & Remote Invocation
Module 3 - Distributed Objects & Remote Invocation Programming Models for Distributed Applications Remote Procedure Call (RPC) Extension of the conventional procedure call model Allows client programs
More informationDISTRIBUTED COMPUTER SYSTEMS
DISTRIBUTED COMPUTER SYSTEMS Communication Fundamental REMOTE PROCEDURE CALL Dr. Jack Lange Computer Science Department University of Pittsburgh Fall 2015 Outline Communication Architecture Fundamentals
More informationSlides for Chapter 5: Remote Invocation
Slides for Chapter 5: Remote Invocation From Coulouris, Dollimore, Kindberg and Blair Distributed Systems: Concepts and Design Edition 5, Addison-Wesley 2012 Text extensions to slides David E. Bakken,
More informationDistributed Operating Systems Fall Prashant Shenoy UMass Computer Science. CS677: Distributed OS
Distributed Operating Systems Fall 2009 Prashant Shenoy UMass http://lass.cs.umass.edu/~shenoy/courses/677 1 Course Syllabus CMPSCI 677: Distributed Operating Systems Instructor: Prashant Shenoy Email:
More informationDISTRIBUTED SYSTEMS Principles and Paradigms Second Edition ANDREW S. TANENBAUM MAARTEN VAN STEEN. Chapter 1. Introduction
DISTRIBUTED SYSTEMS Principles and Paradigms Second Edition ANDREW S. TANENBAUM MAARTEN VAN STEEN Chapter 1 Introduction Definition of a Distributed System (1) A distributed system is: A collection of
More informationChapter 3: Processes. Operating System Concepts 8 th Edition,
Chapter 3: Processes, Silberschatz, Galvin and Gagne 2009 Chapter 3: Processes Process Concept Process Scheduling Operations on Processes Interprocess Communication Examples of IPC Systems Communication
More informationDistributed and Operating Systems Spring Prashant Shenoy UMass Computer Science.
Distributed and Operating Systems Spring 2019 Prashant Shenoy UMass http://lass.cs.umass.edu/~shenoy/courses/677!1 Course Syllabus COMPSCI 677: Distributed and Operating Systems Course web page: http://lass.cs.umass.edu/~shenoy/courses/677
More informationChapter 3: Processes. Operating System Concepts 9 th Edition
Chapter 3: Processes Silberschatz, Galvin and Gagne 2013 Chapter 3: Processes Process Concept Process Scheduling Operations on Processes Interprocess Communication Examples of IPC Systems Communication
More informationCS 454/654 Distributed Systems. Course Objective
CS454/654 Distributed Systems M. Tamer Özsu DC 3350 tozsu@uwaterloo.ca Course Objective This course provides an introduction to the fundamentals of distributed computer systems, assuming the availability
More informationDistributed Systems. Bina Ramamurthy. 6/13/2005 B.Ramamurthy 1
Distributed Systems Bina Ramamurthy 6/13/2005 B.Ramamurthy 1 Introduction Distributed system is the one in which hardware and software components at networked computers communicate and coordinate their
More informationCOMMUNICATION IN DISTRIBUTED SYSTEMS
Distributed Systems Fö 3-1 Distributed Systems Fö 3-2 COMMUNICATION IN DISTRIBUTED SYSTEMS Communication Models and their Layered Implementation 1. Communication System: Layered Implementation 2. Network
More informationIntroduction to Distributed Systems (DS)
Introduction to Distributed Systems (DS) INF5040/9040 autumn 2009 lecturer: Frank Eliassen Frank Eliassen, Ifi/UiO 1 Outline What is a distributed system? Challenges and benefits of distributed system
More informationChapter 17: Distributed Systems (DS)
Chapter 17: Distributed Systems (DS) Silberschatz, Galvin and Gagne 2013 Chapter 17: Distributed Systems Advantages of Distributed Systems Types of Network-Based Operating Systems Network Structure Communication
More informationConcepts of Distributed Systems 2006/2007
Concepts of Distributed Systems 2006/2007 Introduction & overview Johan Lukkien 1 Introduction & overview Communication Distributed OS & Processes Synchronization Security Consistency & replication Programme
More informationChapter 4: Processes. Process Concept
Chapter 4: Processes Process Concept Process Scheduling Operations on Processes Cooperating Processes Interprocess Communication Communication in Client-Server Systems 4.1 Silberschatz, Galvin and Gagne
More informationCommunication Paradigms
Communication Paradigms Nicola Dragoni Embedded Systems Engineering DTU Compute 1. Interprocess Communication Direct Communication: Sockets Indirect Communication: IP Multicast 2. High Level Communication
More informationINTRODUCTION TO Object Oriented Systems BHUSHAN JADHAV
INTRODUCTION TO Object Oriented Systems 1 CHAPTER 1 Introduction to Object Oriented Systems Preview of Object-orientation. Concept of distributed object systems, Reasons to distribute for centralized objects.
More informationChapter 4: Processes
Chapter 4: Processes Process Concept Process Scheduling Operations on Processes Cooperating Processes Interprocess Communication Communication in Client-Server Systems 4.1 Silberschatz, Galvin and Gagne
More informationCA464 Distributed Programming
1 / 25 CA464 Distributed Programming Lecturer: Martin Crane Office: L2.51 Phone: 8974 Email: martin.crane@computing.dcu.ie WWW: http://www.computing.dcu.ie/ mcrane Course Page: "/CA464NewUpdate Textbook
More informationDistributed File Systems. CS432: Distributed Systems Spring 2017
Distributed File Systems Reading Chapter 12 (12.1-12.4) [Coulouris 11] Chapter 11 [Tanenbaum 06] Section 4.3, Modern Operating Systems, Fourth Ed., Andrew S. Tanenbaum Section 11.4, Operating Systems Concept,
More informationDistributed Systems Principles and Paradigms. Chapter 01: Introduction. Contents. Distributed System: Definition.
Distributed Systems Principles and Paradigms Maarten van Steen VU Amsterdam, Dept. Computer Science Room R4.20, steen@cs.vu.nl Chapter 01: Version: February 21, 2011 1 / 26 Contents Chapter 01: 02: Architectures
More informationProcesses in Distributed Systems
Processes in Distributed Systems Distributed Systems L-A Sistemi Distribuiti L-A Andrea Omicini andrea.omicini@unibo.it Ingegneria Due Alma Mater Studiorum Università di Bologna a Cesena Academic Year
More informationModule 16: Distributed System Structures. Operating System Concepts 8 th Edition,
Module 16: Distributed System Structures, Silberschatz, Galvin and Gagne 2009 Chapter 16: Distributed System Structures Motivation Types of Network-Based Operating Systems Network Structure Network Topology
More informationChapter 3: Process Concept
Chapter 3: Process Concept By Worawut Srisukkham Updated By Dr. Varin Chouvatut, Silberschatz, Galvin and Gagne 2010 Chapter 3: Process-Concept Process Concept Process Scheduling Operations on Processes
More informationDISTRIBUTED COMPUTING
DISTRIBUTED COMPUTING By Sunita Mahajan & Seema Shah Presented By Prof. S.J. Soni, Asst. Professor, CE Dept., SPCE, Visnagar CHAPTER-1 BASIC DISTRIBUTED SYSTEM CONCEPTS What is a distributed system? Tanenbaum
More informationDistributed Systems 8. Remote Procedure Calls
Distributed Systems 8. Remote Procedure Calls Paul Krzyzanowski pxk@cs.rutgers.edu 10/1/2012 1 Problems with the sockets API The sockets interface forces a read/write mechanism Programming is often easier
More informationChapter 3: Processes. Chapter 3: Processes. Process in Memory. Process Concept. Process State. Diagram of Process State
Chapter 3: Processes Chapter 3: Processes Process Concept Process Scheduling Operations on Processes Cooperating Processes Interprocess Communication Communication in Client-Server Systems 3.2 Silberschatz,
More informationOutline. Distributed Computing Systems. The Rise of Distributed Systems. Depiction of a Distributed System 4/15/2014
Outline Distributed Computing Systems Overview of Distributed Systems Overview Goals Software Client Server Andrew Tanenbaum and Marten van Steen, Distributed Systems Principles and Paradigms, Prentice
More informationDistributed Systems Principles and Paradigms. Chapter 01: Introduction
Distributed Systems Principles and Paradigms Maarten van Steen VU Amsterdam, Dept. Computer Science Room R4.20, steen@cs.vu.nl Chapter 01: Introduction Version: October 25, 2009 2 / 26 Contents Chapter
More informationDistributed Systems Principles and Paradigms
Distributed Systems Principles and Paradigms Chapter 01 (version September 5, 2007) Maarten van Steen Vrije Universiteit Amsterdam, Faculty of Science Dept. Mathematics and Computer Science Room R4.20.
More informationMessage Passing vs. Distributed Objects. 5/15/2009 Distributed Computing, M. L. Liu 1
Message Passing vs. Distributed Objects 5/15/2009 Distributed Computing, M. L. Liu 1 Distributed Objects M. L. Liu 5/15/2009 Distributed Computing, M. L. Liu 2 Message Passing versus Distributed Objects
More informationDistributed Systems. Thoai Nam Faculty of Computer Science and Engineering HCMC University of Technology
Distributed Systems Thoai Nam Faculty of Computer Science and Engineering HCMC University of Technology Chapter 1: Introduction Distributed Systems Hardware & software Transparency Scalability Distributed
More informationIPC. Communication. Layered Protocols. Layered Protocols (1) Data Link Layer. Layered Protocols (2)
IPC Communication Chapter 2 Inter-Process Communication is the heart of all DSs. Processes on different machines. Always based on low-level message passing. In this chapter: RPC RMI MOM (Message Oriented
More informationJava RMI Middleware Project
Java RMI Middleware Project Nathan Balon CIS 578 Advanced Operating Systems December 7, 2004 Introduction The semester project was to implement a middleware similar to Java RMI or CORBA. The purpose of
More informationDistributed Systems. Overview. Distributed Systems September A distributed system is a piece of software that ensures that:
Distributed Systems Overview Distributed Systems September 2002 1 Distributed System: Definition A distributed system is a piece of software that ensures that: A collection of independent computers that
More informationFrequently asked questions from the previous class survey
CS 455: INTRODUCTION TO DISTRIBUTED SYSTEMS [DISTRIBUTED COORDINATION/MUTUAL EXCLUSION] Shrideep Pallickara Computer Science Colorado State University L22.1 Frequently asked questions from the previous
More informationDistributed Systems. 5. Remote Method Invocation
Distributed Systems 5. Remote Method Invocation Werner Nutt 1 Remote Method Invocation 5.1 Communication between Distributed Objects 1. Communication between Distributed Objects 2. RMI 2 Middleware Middleware
More informationCORBA (Common Object Request Broker Architecture)
CORBA (Common Object Request Broker Architecture) René de Vries (rgv@cs.ru.nl) Based on slides by M.L. Liu 1 Overview Introduction / context Genealogical of CORBA CORBA architecture Implementations Corba
More informationCSci Introduction to Distributed Systems. Communication: RPC
CSci 5105 Introduction to Distributed Systems Communication: RPC Today Remote Procedure Call Chapter 4 TVS Last Time Architectural styles RPC generally mandates client-server but not always Interprocess
More informationIntroduction to Distributed Systems (DS)
Introduction to Distributed Systems (DS) INF5040/9040 autumn 2014 lecturer: Frank Eliassen Frank Eliassen, Ifi/UiO 1 Outline Ø What is a distributed system? Ø Challenges and benefits of distributed systems
More informationChapter 3: Processes. Operating System Concepts Essentials 8 th Edition
Chapter 3: Processes Silberschatz, Galvin and Gagne 2011 Chapter 3: Processes Process Concept Process Scheduling Operations on Processes Interprocess Communication Examples of IPC Systems Communication
More informationCS455: Introduction to Distributed Systems [Spring 2018] Dept. Of Computer Science, Colorado State University
Frequently asked questions from the previous class survey CS 455: INTRODUCTION TO DISTRIBUTED SYSTEMS [DISTRIBUTED COORDINATION/MUTUAL EXCLUSION] Shrideep Pallickara Computer Science Colorado State University
More information