Meng Han Presentation 09/11/2013 CS8320 – Advanced Operating Systems Fall 2013 – Section 2.6 Presentation.

Slides:



Advertisements
Similar presentations
DISTRIBUTED COMPUTING PARADIGMS
Advertisements

Multiple Processor Systems
Distributed System Services Prepared By:- Monika Patel.
BARNALI CHAKRABARTY. What is an Operating System ?
Distributed Systems Major Design Issues Presented by: Christopher Hector CS8320 – Advanced Operating Systems Spring 2007 – Section 2.6 Presentation Dr.
Database Architectures and the Web
Dr. Kalpakis CMSC 621, Advanced Operating Systems. Fall 2003 URL: Distributed System Architectures.
Distributed System Structures Network Operating Systems –provide an environment where users can access remote resources through remote login or file transfer.
Lakshmi Narayana Gupta Kollepara 10/26/2009 CSC-8320.
U NIVERSITY OF M ASSACHUSETTS, A MHERST Department of Computer Science Emery Berger University of Massachusetts Amherst Operating Systems CMPSCI 377 Lecture.
Study of Hurricane and Tornado Operating Systems By Shubhanan Bakre.
Using DSVM to Implement a Distributed File System Ramon Lawrence Dept. of Computer Science
Computer Systems/Operating Systems - Class 8
Technical Architectures
Course Overview Principles of Operating Systems
OCT1 Principles From Chapter One of “Distributed Systems Concepts and Design”
EEC-681/781 Distributed Computing Systems Lecture 3 Wenbing Zhao Department of Electrical and Computer Engineering Cleveland State University
Managing Agent Platforms with the Simple Network Management Protocol Brian Remick Thesis Defense June 26, 2015.
16: Distributed Systems1 DISTRIBUTED SYSTEM STRUCTURES NETWORK OPERATING SYSTEMS The users are aware of the physical structure of the network. Each site.
DISTRIBUTED COMPUTING
DISTRIBUTED PROCESS IMPLEMENTAION BHAVIN KANSARA.
Ch4: Distributed Systems Architectures. Typically, system with several interconnected computers that do not share clock or memory. Motivation: tie together.
Inter-process Communication and Coordination Chaitanya Sambhara CSC 8320 Advanced Operating Systems.
Database Architectures and the Web Session 5
DM Rasanjalee Himali CSc8320 – Advanced Operating Systems (SECTION 2.6) FALL 2009.
B.Ramamurthy9/19/20151 Operating Systems u Bina Ramamurthy CS421.
Yaxin Hu 2.8 SUMMARY. Outline Summary of different sections of chapter 2 Recent research papers Future works/predictions.
Transparency in Distributed Operating Systems Vijay Akkineni.
4.5 DISTRIBUTED MUTUAL EXCLUSION MOSES RENTAPALLI.
Distributed Systems: Concepts and Design Chapter 1 Pages
Unit – I CLIENT / SERVER ARCHITECTURE. Unit Structure  Evolution of Client/Server Architecture  Client/Server Model  Characteristics of Client/Server.
Distributed File System By Manshu Zhang. Outline Basic Concepts Current project Hadoop Distributed File System Future work Reference.
Lecture 3 Process Concepts. What is a Process? A process is the dynamic execution context of an executing program. Several processes may run concurrently,
DISTRIBUTED COMPUTING PARADIGMS. Paradigm? A MODEL 2for notes
Advanced Computer Networks Topic 2: Characterization of Distributed Systems.
CE Operating Systems Lecture 3 Overview of OS functions and structure.
A Summary of the Distributed System Concepts and Architectures Gayathri V.R. Kunapuli
Distributed System Concepts and Architectures 2.3 Services Fall 2011 Student: Fan Bai
2001 Networking Operating Systems (CO32010) 1. Operating Systems 2. Processes and scheduling 4.
Hwajung Lee.  Interprocess Communication (IPC) is at the heart of distributed computing.  Processes and Threads  Process is the execution of a program.
Distributed System Concepts and Architectures Services
Shuman Guo CSc 8320 Advanced Operating Systems
Distributed System Services Fall 2008 Siva Josyula
Lecture 4 Mechanisms & Kernel for NOSs. Mechanisms for Network Operating Systems  Network operating systems provide three basic mechanisms that support.
Section 2.1 Distributed System Design Goals Alex De Ruiter
Distributed Mutual Exclusion Synchronization in Distributed Systems Synchronization in distributed systems are often more difficult compared to synchronization.
CS3771 Today: Distributed Coordination  Previous class: Distributed File Systems Issues: Naming Strategies: Absolute Names, Mount Points (logical connection.
Distributed File System. Outline Basic Concepts Current project Hadoop Distributed File System Future work Reference.
Distributed Computing & Embedded Systems Chapter 4: Remote Method Invocation Dr. Umair Ali Khan.
Operating Systems Distributed-System Structures. Topics –Network-Operating Systems –Distributed-Operating Systems –Remote Services –Robustness –Design.
 2004 Deitel & Associates, Inc. All rights reserved. Chapter 17 – Introduction to Distributed Systems Outline 17.1Introduction 17.2Attributes of Distributed.
Database Architectures and the Web
The Echo Algorithm The echo algorithm can be used to collect and disperse information in a distributed system It was originally designed for learning network.
Database Architectures and the Web
#01 Client/Server Computing
Distributed System Concepts and Architectures
Chapter 17 – Introduction to Distributed Systems
Distributed Systems Bina Ramamurthy 11/12/2018 From the CDK text.
Operating Systems : Overview
Operating Systems Bina Ramamurthy CSE421 11/27/2018 B.Ramamurthy.
Distributed Systems Major Design Issues
Operating Systems : Overview
Architectures of distributed systems Fundamental Models
Operating Systems : Overview
Operating Systems : Overview
Operating Systems : Overview
Operating Systems : Overview
Database System Architectures
#01 Client/Server Computing
Presentation transcript:

Meng Han Presentation 09/11/2013 CS8320 – Advanced Operating Systems Fall 2013 – Section 2.6 Presentation

Outline IIntroduction DDistributed System Design Issues Object Models and Naming Schemes Distributed Coordination Interprocess Communication Distributed Resources Fault Tolerance and Security DDesign for big-data SSummary RReferences

Introduction  A distributed system mainly consists[1]:  Coordination of concurrent distributed processes  Management of distributed resources  Functioning of distributed algorithms  However…  Network may beUNRELIABLE  Components may beUNTRUSTED  These raise the design and implementation issues, in particular how to support transparency.

Introduction  design and implementation issues: How to model and identify objects in system How to co-ordinate the interaction among objects How to communicate with each other How to shared/replicated objects be managed in controlled fashion How to protect objects and security of system

Outline IIntroduction DDistributed System Design Issues Object Models and Naming Schemes Distributed Coordination Interprocess Communication Distributed Resources Fault Tolerance and Security DDesign for big-data SSummary RReferences

Object Models and Naming Schemes  Objects in a computer system:  processes, data files, memory, devices, processors, and networks.  Objects are encapsulated in servers  process servers, file servers, memory servers etc.  a client is a null server that accesses object servers.

Object Models and Naming Schemes  Identify a server[2]  by name ( name server )  by either physical or logical address ( network server )  by service that the servers provide  Following all depend on the naming scheme for system objects:  Structure of the system, management of name space, name resolution, access methods

Outline IIntroduction DDistributed System Design Issues Object Models and Naming Schemes Distributed Coordination Interprocess Communication Distributed Resources Fault Tolerance and Security DDesign for big-data SSummary RReferences

Distributed Coordination  Coordination to achieve synchronization  Different types of synchronization:  Barrier synchronization Process must reach a common synchronization point before they can continue  Condition coordination process must wait for a condition that will be set asynchronously by other interacting processes to maintain some ordering of execution  Mutual exclusion Concurrent processes must have mutual exclusion when accessing a critical shared resource

Synchronization Issues  State information sent by messages:  Typically only partial state information is known about other processes making synchronization difficult.  Information not current due to transfer time delay.  Decision if process may continue must rely on a message resolution protocol.  Centralized Coordinator: Central point of failure  Deadlocks[3]  Circular Waiting for the other process  Deadlock detection and recovery strategies

Synchronization Issues  Deadlocks  Four conditions must hold for deadlock to occur Exclusive use Hold and wait No preemption Cyclical wait  The problem of deadlocks can be handled in following ways  Prevention, avoidance and detection

Deadlock Prevention  Schemes that guarantee the deadlocks can never happen because of the way the system is structured.  One of the four conditions is prevented, thus preventing deadlocks.  For example, to impose an order on the resources and require processes to request resources in increasing order. This prevents cyclical wait and thus makes deadlocks impossible.

Outline IIntroduction DDistributed System Design Issues Object Models and Naming Schemes Distributed Coordination Interprocess Communication Distributed Resources Fault Tolerance and Security DDesign for big-data SSummary RReferences

Interprocess Communication  Lower level:  Interprocess communication can be accomplished by using simple message passing primitives.  Higher level:  logical communication methods provides the transparency:  Hide the physical details of message passing  Two important concepts : The client/server model Remote Procedure Call (RPC)

The Client/Server Model  The client/ server model is a programming example for structuring processes in distributed systems[4]. logical communication request reply actual communication network client server kernel

The RPC Model  The remote procedure call model is similar to that of the local model:  The caller places arguments to a procedure in a specific location (such as a result register).  The caller temporarily transfers control to the procedure.  When the caller gains control again, it obtains the results of the procedure from the specified location.  The caller then continues program execution.

The RPC Model  On the server side, a process is dormant (inactive, sleeping)—  Awaiting the arrival of a call message.  When one arrives, the server process computes a reply that it then sends back to the requesting client.  After this, the server process becomes dormant again.

The RPC Model

Outline IIntroduction DDistributed System Design Issues Object Models and Naming Schemes Distributed Coordination Interprocess Communication Distributed Resources Fault Tolerance and Security DDesign for big-data SSummary RReferences

Distributed Resources  Load Distribution  multiprocessor scheduling (Static)  load sharing (Dynamic)  Distributed shared memory  Distributed file systems

Load Distribution  Multiprocessor scheduling[5]  Minimize communication overhead with efficient scheduling.  Load sharing  Process migration strategy & mechanism

Distributed File Systems and Distributed Shared Memory  Distributed file systems  Issues are based on a file point of view  Distributed shared memory  Issues are based on a process perception of the system.  The common issues central to them:  Sharing and replication of data

Outline IIntroduction DDistributed System Design Issues Object Models and Naming Schemes Distributed Coordination Interprocess Communication Distributed Resources Fault Tolerance and Security DDesign for big-data SSummary RReferences

Fault Tolerance and Security  Security threats and failures are both system faults.  The problem of failures can be alleviated if there is redundancy in the system.  The system should transparently handle failures or removal of machines, network links, and other resources without loss of data or functionality.  This should hold true for both the system itself and for its applications.

Fault Tolerance and Security  Security[6]  Authentication -- clients and also servers and messages must be authenticated.  Authorization -- access control has to be performed across a physical network with heterogeneous components under different administrative units using different security models.

Outline IIntroduction DDistributed System Design Issues Object Models and Naming Schemes Distributed Coordination Interprocess Communication Distributed Resources Fault Tolerance and Security DDesign for big-data SSummary RReferences

Design for BIG-DATA  Emergence of Big Data  Big data is a foundational element of social networking and Web 2.0-based information companies. The enormous amount of data is generated as a result of democratization and ecosystem factors such as the following:  Mobility trends  Data access and consumption  Ecosystem capabilities

Design for BIG-DATA  Mobility trends:  Mobile devices, mobile events and sharing, and sensory integration  Data access and consumption:  Internet, interconnected systems, social networking, and convergent interfaces and access models  Ecosystem capabilities:  Major changes in the information processing model and the availability of an open source framework; the general-purpose computing and unified network integration

Design for BIG-DATA

Outline IIntroduction DDistributed System Design Issues Object Models and Naming Schemes Distributed Coordination Interprocess Communication Distributed Resources Fault Tolerance and Security DDesign for big-data SSummary RReferences

Summary  Given the system architectures, we summarized the important design and implementation issues.  These issues include object models and naming schemes, interprocess communication and synchronization, data sharing and replication, and failure and recovery.  These problems are unique to distributed systems.

References [1]Randy Chow & Theodore Johnson, 1997, “Distributed Operating Systems & Algorithms”, (Addison-Wesley), p. 45 to 50, 61 to 63. [2] Suresh Sridharan, 2006, “Distributed Operating Systems”, (University of Wisconsin, Madison). 9/Writeups/Survey.pdf [3] Chandy, K. Mani, Jayadev Misra, and Laura M. Haas. “Distributed deadlock detection.” ACM Transactions on Computer Systems (TOCS) 1.2 (1983):

References [4] Holliday, J., and Amr El Abbadi. “Distributed deadlock detection.” Encyclopedia of Distributed Computing. Kluwer Academic Publishers, Dordrecht (accepted for publication) (2005). [5] Babaoglu, Ozalp, and Keith Marzullo. “Consistent global states of distributed systems: Fundamental concepts and mechanisms.” Distributed Systems 2 (1993): 12. [6] Krishna Sankar, Andrew Balinsky, Darrin Miller, Sri Sundaralingam. (Feb 18, 2005)“EAP Authentication Protocols for WLANs”.

References [7] Bohlouli, Mahdi, et al. “Towards an Integrated Platform for Big Data Analysis.”Integration of Practice-Oriented Knowledge Technology: Trends and Prospectives. Springer Berlin Heidelberg, [8] Wolf, Marilyn. “Computers as components: principles of embedded computing system design.” Access Online via Elsevier, [9] Provost, Foster, and Tom Fawcett. “Data Science and its Relationship to Big Data and Data-Driven Decision Making.” Big Data 1.1 (2013):

VISA LEADER