Distributed Systems COMP 212. Lecture 1 Othon Michail

Similar documents
Distributed Systems COMP 212. Lecture 1 Othon Michail

Distributed Systems COMP 212. Lecture 1 Othon Michail

Kingdom of Saudi Arabia Ministry of Higher Education College of Computer & Information Sciences Majmaah University. Course Profile

Chapter 1: Distributed Systems: What is a distributed system? Fall 2013

CSE 5306 Distributed Systems. Course Introduction

CS555: Distributed Systems [Fall 2017] Dept. Of Computer Science, Colorado State University

CA464 Distributed Programming

CS555: Distributed Systems [Fall 2017] Dept. Of Computer Science, Colorado State University

Distributed Systems Course. a.o. Univ.-Prof. Dr. Harald Kosch

Introduction to Distributed Systems. Fabienne Boyer, LIG,

CS555: Distributed Systems [Fall 2017] Dept. Of Computer Science, Colorado State University

Distributed Systems Concepts Design 5th Edition Solutions

Distributed Systems Concepts Design 4th Edition

CS 454/654 Distributed Systems. Course Objective

Distributed Systems. Overview. Distributed Systems September A distributed system is a piece of software that ensures that:

Distributed Systems. Thoai Nam Faculty of Computer Science and Engineering HCMC University of Technology

Distributed Computing Course Instructor: Dr. Safdar Ali

Distributed Systems. Wintersemester - Winter Term 2003

CS655: Advanced Topics in Distributed Systems [Fall 2013] Dept. Of Computer Science, Colorado State University

Designing Issues For Distributed Computing System: An Empirical View

Distributed Systems Principles and Paradigms. Chapter 01: Introduction. Contents. Distributed System: Definition.

Distributed Systems LEEC (2006/07 2º Sem.)

CS455: Introduction to Distributed Systems [Spring 2018] Dept. Of Computer Science, Colorado State University

Distributed Systems Principles and Paradigms. Chapter 01: Introduction

DISTRIBUTED SYSTEMS Principles and Paradigms Second Edition ANDREW S. TANENBAUM MAARTEN VAN STEEN. Chapter 1. Introduction

CSE Traditional Operating Systems deal with typical system software designed to be:

CHAPTER 1 Fundamentals of Distributed System. Issues in designing Distributed System

CS 455: INTRODUCTION TO DISTRIBUTED SYSTEMS [DISTRIBUTED MUTUAL EXCLUSION] Frequently asked questions from the previous class survey

Middleware and Interprocess Communication

Distributed Systems. Lecture 4 Othon Michail COMP 212 1/27

CS455: Introduction to Distributed Systems [Spring 2018] Dept. Of Computer Science, Colorado State University

Distributed Systems Principles and Paradigms

Distributed File Systems. CS432: Distributed Systems Spring 2017

Distributed Operating Systems Spring Prashant Shenoy UMass Computer Science.

Distributed and Operating Systems Spring Prashant Shenoy UMass Computer Science.

sections details presentation DAD Distributed Applications Development Cristian Toma

Introduction. Distributed Systems IT332

Introduction to Distributed Systems

Concepts of Distributed Systems 2006/2007

Distributed Systems (5DV147)

Course Computer Science Academic year 2012/2013 Subject Distributed Systems ECTS 6

DISTRIBUTED SYSTEMS Principles and Paradigms Second Edition ANDREW S. TANENBAUM MAARTEN VAN STEEN. Chapter 1. Introduction

Distributed Systems Concepts And Design 5th Edition Exercise Solutions

Distributed Operating Systems Fall Prashant Shenoy UMass Computer Science. CS677: Distributed OS

CS555: Distributed Systems [Fall 2017] Dept. Of Computer Science, Colorado State University

Frequently asked questions from the previous class survey

CS455: Introduction to Distributed Systems [Spring 2018] Dept. Of Computer Science, Colorado State University

Distributed Systems. Lehrstuhl für Informatik 4. RWTH Aachen. Organization. Literature. Classification of the lecture

Naming in Distributed Systems

Introduction. Chapter 1

Outline. Distributed Computing Systems. The Rise of Distributed Systems. Depiction of a Distributed System 4/15/2014

Introduction to Distributed Systems

Unit 7: RPC and Indirect Communication

DISTRIBUTED SYSTEMS. Second Edition. Andrew S. Tanenbaum Maarten Van Steen. Vrije Universiteit Amsterdam, 7'he Netherlands PEARSON.

Professor: Ioan Raicu. TA: Wei Tang. Everyone else

Advanced Operating Systems

Distributed Information Processing

THE IMPACT OF E-COMMERCE ON DEVELOPING A COURSE IN OPERATING SYSTEMS: AN INTERPRETIVE STUDY

Distributed Systems COMP 212. Lecture 18 Othon Michail

Distributed Systems. Lehrstuhl für Informatik IV RWTH Aachen. Organisation. Classification of the lecture. Literature

Distributed Clock Synchronization Algorithms: A Survey

Introduction to Distributed Systems (DS)

CS555: Distributed Systems [Fall 2017] Dept. Of Computer Science, Colorado State University

Chapter 7 Consistency And Replication

VEL TECH MULTITECH Dr.RANGARAJAN Dr.SAKUNTHALA ENGINEERING COLLEGE

TDP3471 Distributed and Parallel Computing

Operating Systems and Networks. Lecture 01: Introducing the course and Introduction to OS-part 1 Behzad Bordbar

Distributed Systems (5DV147)

Distributed Systems Development

Module 7 - Replication

Client Server & Distributed System. A Basic Introduction

Processes in Distributed Systems

Distributed Systems Conclusions & Exam. Brian Nielsen

Computer Networks IT321

Distributed Systems COMP 212. Lecture 15 Othon Michail

Introduction to Cloud Computing

What is a distributed system?

Support for resource sharing Openness Concurrency Scalability Fault tolerance (reliability) Transparence. CS550: Advanced Operating Systems 2

Introduction to Distributed Systems (DS)

Chapter 11 DISTRIBUTED FILE SYSTEMS

Structured communication (Remote invocation)

Distributed Information Processing

Processes in Distributed Systems

Module 1 - Distributed System Architectures & Models

Distributed Information Processing

Introduction to Distributed Systems. INF5040/9040 Autumn 2018 Lecturer: Eli Gjørven (ifi/uio)

Solution Manual Distributed Operating System Concept

DISTRIBUTED COMPUTING

Introduction to Distributed Systems

Ian Foster, CS554: Data-Intensive Computing

CS455: Introduction to Distributed Systems [Spring 2018] Dept. Of Computer Science, Colorado State University

Distributed Systems. Definitions. Why Build Distributed Systems? Operating Systems - Overview. Operating Systems - Overview

Distributed Systems Conclusions & Exam. Brian Nielsen

Lecture 1: January 22

A Two-Layer Hybrid Algorithm for Achieving Mutual Exclusion in Distributed Systems

Distributed Systems. Joseph Spring School of Computer Science. Distributed Systems and Security. Lecture - Definition and Motivation

Distributed Computing. Santa Clara University 2016

CS555: Distributed Systems [Fall 2017] Dept. Of Computer Science, Colorado State University

CS455: Introduction to Distributed Systems [Spring 2019] Dept. Of Computer Science, Colorado State University

Lecture 1: Introduction & Overview

Transcription:

Distributed Systems COMP 212 Lecture 1 Othon Michail

Course Information Lecturer: Othon Michail Office 2.14 Holt Building http://csc.liv.ac.uk/~michailo/teaching/comp2 12 Structure 30 Lectures + 10 lab practicals Assessment 2 programming assignments and a class test (20% ) and final exam (80%) 2/22

Recommended Reading Main Book: Andrew S. Tanenbaum, Maarten van Steen. Distributed Systems: Principles and Paradigms, Pearson, 2nd edition, 2006 Java references Thinking in Java http://www.mindview.net/books/tij/ The Java Tutorials (Oracle) https://docs.oracle.com/javase/tutorial/ 3/22

Other Relevant Books George Coulouris, Jean Dollimore, Tim Kindberg, Gordon Blair. Distributed Systems: Concepts and Design, Pearson, 5th Edition, 2011 Boger. Java in Distributed Systems: Concurrency, Distribution and Persistence, John Wiley & Sons, 1st Edition, 2001 Nancy Lynch. Distributed Algorithms, Morgan Kaufmann Publishers, 1996. Hagit Attiya and Jennifer Welch, Distributed Computing Fundamentals, Simulations, and Advanced Topics, 2nd Edition, Wiley-Interscience, 2004. 4/22

Content of the Course 1. Introduction to Distributed Systems 2. Communication 3. Processes 4. Naming 5. Synchronisation 6. Consistency and Replication 7. Fault tolerance 8. Security 9. Object-based Systems 10.File Systems 11.Coordination-based Systems 5/22

Aims Provide an understanding of the technical issues involved in the design of modern distributed systems Present some of the major current paradigms 6/22

Learning Outcomes Appreciation of the main principles underlying distributed systems: processes, communication, naming, synchronisation, consistency, fault tolerance, and security Familiarity with some of the main paradigms in distributed systems: object-based systems, file systems, and coordination-based systems 7/22

Introduction

What is a Distributed System? A distributed system is: A collection of independent computers that appears to its users as a single coherent system 9/22

What is a Distributed System? 10/22

Examples of Distributed Systems University computer network The Internet Workflow information system, Distributed manufacturing system Hadoop (http://hadoop.apache.org/) computer clusters distributed file systems Banks (Cash machines) Ticket reservation systems 11/22

The Beginning of the Internet (ARPANET) 4 interconnected computers forming a simple packet switching network First to implement TCP/IP 12/22

The Internet Over 1 billion websites Over 3 billion users Check the rate of growth at: http://www.internetlivestats.com/ 13/22

Internet-enabled Devices 14/22

Nanorobotics and Self-Assembly 15/22

Why Distributed Systems? Pervade society Billions of computers and mobile devices Continuous advances in communication technology Most crucial modern information systems are distributed Turing Award 2013 was awarded to Leslie Lamport for his work on Distributed Systems 16/22

Goals of Distributed Systems Easily connect users/resources Transparency Openness Reliability Performance Scalability 17/22

Connecting Users and Resources Typical resources computers, computing power, data, printers Why sharing Economics Collaboration, Information Exchange (groupware) Problems with sharing Security 18/22

Transparency in a Distributed System Transparent distributed system: Appears to its users as if it were only a single computer system 19/22

Different Forms of Transparency Transparency Access Location Migration Relocation Replication Concurrency Failure Persistence Description Hide differences in data representation and how a resource is accessed Hide where a resource is located Hide that a resource may move to another location Hide that a resource may be moved to another location while in use Hide that a resource is replicated Hide that a resource may be shared by several competitive users Hide the failure and recovery of a resource Hide whether a (software) resource is in memory or on disk 20/22

Degree of Transparency Transparency is: Not always desirable Users located in different continents (context-aware) Not always possible Hiding failures You cannot always distinguish a slow computer from a failing one Trade-off between a high degree of transparency and the performance of the system 21/22

Summary Distributed systems are collections of independent computers that appear to users as a single coherent system They are commonly used all around the world May not immediately appear as computer systems Main goals: Easily connect users/resources Exhibit transparency Be open Be reliable Be efficient Be scalable 22/22