CS550. Distributed Operating Systems (Advanced Operating Systems) Instructor: Xian-He Sun

Size: px
Start display at page:

Download "CS550. Distributed Operating Systems (Advanced Operating Systems) Instructor: Xian-He Sun"

Transcription

1 CS550 Distributed Operating Systems (Advanced Operating Systems) Instructor: Xian-He Sun Phone: (312) Office hours: 2:10pm-3:10pm Tuesday, 3:30pm-4:30pm Thursday at SB229C, or by appointment TA: Mr. Cui, Zongjie Office hours: TBA Blackboard: Class Web site CS550: Distributed OS Lecture 1 Page 1

2 Pre-record Today, 6:25-4:40pm, SB231 CS550: Distributed OS Lecture 1 Page 2

3 Hardware Concepts Parallel and Distributed Systems tightly coupled loosely coupled Multiprocessors (fast hw network) Multicomputers (slow hw network) Shared-Memory Multiprocessors Distributed-Memory Multiprocessors Homogeneous Multicomputers Heterogeneous Multicomputers UMA NUMA Network of Workstation Workstation Cluster PC Cluster Distributed Systems CS550: Distributed OS Lecture 1 Page 3

4 Software Concepts User applications Operating system Hardware Virtual machine interface Physical machine interface Operating system: Interface between users and hardware Implements a virtual machine that is easier to program than raw hardware Primary functions: Services: file system, virtual memory, networking, CPU scheduling, Coordination: concurrency, memory protection, security, networking, CS550: Distributed OS Lecture 1 Page 4

5 Uniprocessor Operating Systems Microkernel architecture Small kernel user-level servers implement additional functionality CS550: Distributed OS Lecture 1 Page 5

6 Multiprocessor Operating Systems Like a uniprocessor operating system Manage multiple CPUs transparently to the user Each processor has its own hardware cache Maintain consistency of cached data Shared variable versus message passing CS550: Distributed OS Lecture 1 Page 6

7 Multicomputer Operating Systems More complex than multiprocessor OS Because communication has to be through explicit message passing 1.14 CS550: Distributed OS Lecture 1 Page 7

8 Network Operating System 1-19 CS550: Distributed OS Lecture 1 Page 8

9 Network Operating System Employs a client-server model Minimal OS kernel Additional functionality as user processes 1-20 CS550: Distributed OS Lecture 1 Page 9

10 Network-Operating Systems Users are aware of multiplicity of machines. Access to resources of various machines is done explicitly by Remote logging into the appropriate remote machine. Transferring data from remote machines to local machines, via the File Transfer Protocol (FTP) mechanism. CS550: Distributed OS Lecture 1 Page 10

11 Distributed Operating System Users not aware of multiplicity of machines. Manages resources in a distributed system Seamlessly and transparently to the user Looks to the user like a centralized OS But operates on multiple independent CPUs Provides transparency Location, migration, concurrency, replication, Presents users with a virtual uniprocessor CS550: Distributed OS Lecture 1 Page 11

12 Middleware-based Systems General structure of a distributed system as middleware CS550: Distributed OS Lecture 1 Page 12

13 What is Middleware Software above the operating system but below the application program Middleware refers to the software that is common to multiple applications and builds on the network transport services to enable ready development of new applications and network services CORBA, DCOM, Java RMI, Grid CS550: Distributed OS Lecture 1 Page 13

14 Middleware Layer CS550: Distributed OS Lecture 1 Page 14

15 Technical Challenges The changing environment Computing world has changed and middleware has to adapt to this ever changing environment Architecture New technological advances impose changes in established middleware architecture Dynamic configuration Dynamic changes in system configuration will be inherent characteristics of future computing environments. CS550: Distributed OS Lecture 1 Page 15

16 CS550: Distributed OS Lecture 1 Page 16

17 Any Questions? CS550: Distributed OS Lecture 1 Page 17

18 Questions? What is the difference between operating system and (software) system? What is the difference between network OS and Distributed OS? What is the difference between Distributed OS and Distributed (software) system? What is middleware? What is the difference between middleware and Distributed (software) system? CS550: Distributed OS Lecture 1 Page 18

19 Structure of OSs Five major intellectual achievements Processes Memory management Information protection and security Scheduling and resource management System structure CS550: Distributed OS Lecture 1 Page 19

20 Process A process is an active entity and is realized by data structure Process space: each process is assigned a virtual address space Text region, the code being executed by the process Data region, holding global variables Stack region, holding execution context of the program Threat User-level threat, system-level threat CS550: Distributed OS Lecture 1 Page 20

21 CS550: Distributed OS Lecture 1 Page 21

22 Memory Management Main-memory management Second-storage management I/O system Virtual Memory: allows program to address memory without regard to the amount of main memory physically available CS550: Distributed OS Lecture 1 Page 22

Virtual machine interface. Operating system. Physical machine interface

Virtual machine interface. Operating system. Physical machine interface Software Concepts User applications Operating system Hardware Virtual machine interface Physical machine interface Operating system: Interface between users and hardware Implements a virtual machine that

More information

Distributed Operating Systems

Distributed Operating Systems Distributed Operating Systems Prashant Shenoy UMass Computer Science http://lass.cs.umass.edu/~shenoy/courses/677 Lecture 1, page 1 Course Syllabus CMPSCI 677: Distributed Operating Systems Instructor:

More information

Distributed Operating Systems Introduction

Distributed Operating Systems Introduction Distributed Operating Systems Introduction Ewa Niewiadomska-Szynkiewicz and Adam Kozakiewicz ens@ia.pw.edu.pl, akozakie@ia.pw.edu.pl Institute of Control and Computation Engineering Warsaw University of

More information

Distributed Systems LEEC (2005/06 2º Sem.)

Distributed Systems LEEC (2005/06 2º Sem.) Distributed Systems LEEC (2005/06 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 information

Distributed Systems. REK s adaptation of Prof. Claypool s adaptation of Tanenbaum s Distributed Systems Chapter 1

Distributed Systems. REK s adaptation of Prof. Claypool s adaptation of Tanenbaum s Distributed Systems Chapter 1 Distributed Systems REK s adaptation of Prof. Claypool s adaptation of Tanenbaum s Distributed Systems Chapter 1 1 The Rise of Distributed Systems! Computer hardware prices are falling and power increasing.!

More information

Introduction. CS403/534 Distributed Systems Erkay Savas Sabanci University

Introduction. CS403/534 Distributed Systems Erkay Savas Sabanci University Introduction CS403/534 Distributed Systems Erkay Savas Sabanci University 1 Issues 1. Communication 2. Processes 3. Naming 4. Synchronization 5. Consistency & Replication 6. Fault Tolerance 7. Security

More information

Unit 2 Distributed Systems R.Yamini Dept. Of CA, SRM University Kattankulathur

Unit 2 Distributed Systems R.Yamini Dept. Of CA, SRM University Kattankulathur Unit 2 Distributed Systems R.Yamini Dept. Of CA, SRM University Kattankulathur 1 Introduction to Distributed Systems Why do we develop distributed systems? availability of powerful yet cheap microprocessors

More information

2.1 What are distributed systems? What are systems? Different kind of systems How to distribute systems? 2.2 Communication concepts

2.1 What are distributed systems? What are systems? Different kind of systems How to distribute systems? 2.2 Communication concepts Chapter 2 Introduction to Distributed systems 1 Chapter 2 2.1 What are distributed systems? What are systems? Different kind of systems How to distribute systems? 2.2 Communication concepts Client-Server

More information

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

Chapter 1: Distributed Systems: What is a distributed system? Chapter 1: Distributed Systems: What is a distributed system? Fall 2012 Sini Ruohomaa (Slides joint work with Jussi Kangasharju et al. Figures from course material) Chapter Outline Defining distributed

More information

Principles and characteristics of distributed systems and environments

Principles and characteristics of distributed systems and environments Principles and characteristics of distributed systems and environments Definition of a distributed system Distributed system is a collection of independent computers that appears to its users as a single

More information

EECS 498 Lecture Notes #1b Introduction to Distributed Systems

EECS 498 Lecture Notes #1b Introduction to Distributed Systems EECS 498 Lecture Notes #1b Introduction to Distributed Systems Farnam Jahanian Department of EECS University of Michigan EECS 498 Lecture Notes http://www.eecs.umich.edu/~farnam Lectures: Weeks 1-3 Introduction

More information

Outline. EEC-681/781 Distributed Computing Systems. Review of Lecture 1. Lecture 2

Outline. EEC-681/781 Distributed Computing Systems. Review of Lecture 1. Lecture 2 EEC-681/781 Distributed Computing Systems Lecture 2 Outline Overview of distributed systems Design Goals (part 2) Hardware Concepts Software Concepts 2 Department of Electrical and Computer Engineering

More information

Symmetric Multiprocessing

Symmetric Multiprocessing Multicore Computing A multi-core processor is a processing system composed of two or more independent cores. One can describe it as an integrated circuit to which two or more individual processors (called

More information

Software Concepts. Uniprocessor Operating Systems. System software structures. CIS 505: Software Systems Architectures of Distributed Systems

Software Concepts. Uniprocessor Operating Systems. System software structures. CIS 505: Software Systems Architectures of Distributed Systems CIS 505: Software Systems Architectures of Distributed Systems System DOS Software Concepts Description Tightly-coupled operating system for multiprocessors and homogeneous multicomputers Main Goal Hide

More information

Chapter 8 Multiple Processor Systems. 8.1 Multiprocessors 8.2 Multicomputers 8.3 Distributed systems

Chapter 8 Multiple Processor Systems. 8.1 Multiprocessors 8.2 Multicomputers 8.3 Distributed systems Chapter 8 Multiple Processor Systems 8.1 Multiprocessors 8.2 Multicomputers 8.3 Distributed systems Multiprocessor Systems Continuous need for faster computers shared memory model message passing multiprocessor

More information

Multiprocessor Systems. Chapter 8 Multiple Processor Systems. Multiprocessors. Multiprocessor Hardware (1)

Multiprocessor Systems. Chapter 8 Multiple Processor Systems. Multiprocessors. Multiprocessor Hardware (1) Chapter 8 Multiple Processor Systems Multiprocessor Systems 8.1 Multiprocessors 8.2 Multicomputers 8.3 Distributed systems Continuous need for faster computers shared memory model message passing multiprocessor

More information

CHAPTER 1: OPERATING SYSTEM FUNDAMENTALS

CHAPTER 1: OPERATING SYSTEM FUNDAMENTALS CHAPTER 1: OPERATING SYSTEM FUNDAMENTALS What is an operating? A collection of software modules to assist programmers in enhancing efficiency, flexibility, and robustness An Extended Machine from the users

More information

CS550. Distributed Operating Systems (Advanced Operating Systems) Instructor: Xian-He Sun

CS550. Distributed Operating Systems (Advanced Operating Systems) Instructor: Xian-He Sun CS550 Distributed Operating Systems (Advanced Operating Systems) Instructor: Xian-He Sun Email: sun@iit.edu, Phone: (312) 567-5260 Office hours: 2:10pm-3:10pm Tuesday, 3:30pm-4:30pm Thursday at SB229C,

More information

Multiprocessors. Deniz Altinbuken 09/29/09

Multiprocessors. Deniz Altinbuken 09/29/09 Multiprocessors Deniz Altinbuken 09/29/09 End of Moore s Law? Multi-Core vs. Multi-Processor Multi-Core Processor with Shared L2 Cache Multi-Processor System with Cores that share L2 Cache Processor Organizations

More information

B) Using Processor-Cache Affinity Information in Shared Memory Multiprocessor Scheduling

B) Using Processor-Cache Affinity Information in Shared Memory Multiprocessor Scheduling A) Recovery Management in Quicksilver 1) What role does the Transaction manager play in the recovery management? It manages commit coordination by communicating with servers at its own node and with transaction

More information

Operating Systems. Distributed Systems. A distributed system is:

Operating Systems. Distributed Systems. A distributed system is: Operating Systems Interface between the hardware and the rest: editors, compilers, database systems, application programs, your programs, etc. Allows portability, enables easier programming, The manager

More information

Distributed Operating Systems

Distributed Operating Systems Distributed Operating Systems Ing. Tomáš Seidmann, PhD. Faculty of Informatics and Information Technology Slovak University of Technology in Bratislava seidmann@fiit.stuba.sk http://www.cdot.ch/thomas/

More information

Virtualization Xen 1

Virtualization Xen 1 Virtualization Xen 1 What is Xen? Xen and the Art of Virtualization Xen is a is a virtual machine monitor (VMM) that allows multiple guest operating systems to run on the same computer hardware Allows

More information

Microkernels, virtualization, exokernels. Tutorial 1 CSC469

Microkernels, virtualization, exokernels. Tutorial 1 CSC469 Microkernels, virtualization, exokernels Tutorial 1 CSC469 Monolithic kernel vs Microkernel Monolithic OS kernel Application VFS System call User mode What was the main idea? What were the problems? IPC,

More information

System types. Distributed systems

System types. Distributed systems System types 1 Personal systems that are designed to run on a personal computer or workstation Distributed systems where the system software runs on a loosely integrated group of cooperating processors

More information

Spectrum of Multiprocessor OS. Types of Multiprocessor Systems

Spectrum of Multiprocessor OS. Types of Multiprocessor Systems Distributed Operating Systems A distributed system is one where you can t get your work done because a computer you didn t even know existed, has crashed. Leslie Lamport COMP755 Spectrum of Multiprocessor

More information

Chapter 1: Introduction. What is an Operating System? What is an Operating System? Computer System Components

Chapter 1: Introduction. What is an Operating System? What is an Operating System? Computer System Components Chapter 1: Introduction What is an Operating System? Mainframe Systems Desktop Systems Multiprocessor Systems Distributed Systems Clustered System Real -Time Systems Handheld Systems Feature Migration

More information

Lecture Overview. Multiple Processors. Multiple processors. Continuous need for faster computers

Lecture Overview. Multiple Processors. Multiple processors. Continuous need for faster computers Lecture Overview Multiple processors Multiprocessors UMA versus NUMA Hardware configurations OS configurations Process scheduling Multicomputers Interconnection configurations Network interface User-level

More information

Distributed Systems Lecture 1 1

Distributed Systems Lecture 1 1 Distributed Systems Lecture 1 1 Distributed Systems Lecturer: Therese Berg therese.berg@it.uu.se. Recommended text book: Distributed Systems Concepts and Design, Coulouris, Dollimore and Kindberg. Addison

More information

Chapter 1: Introduction. What is an Operating System?

Chapter 1: Introduction. What is an Operating System? Chapter 1: Introduction What is an Operating System? Mainframe Systems Desktop Systems Multiprocessor Systems Distributed Systems Clustered System Real -Time Systems Handheld Systems Computing Environments

More information

A Comparison of Distributed Systems: ChorusOS and Amoeba

A Comparison of Distributed Systems: ChorusOS and Amoeba A Comparison of Distributed Systems: ChorusOS and Amoeba Angelo Bertolli Prepared for MSIT 610 on October 27, 2004 University of Maryland University College Adelphi, Maryland United States of America Abstract.

More information

LinuxWorld Conference & Expo Server Farms and XML Web Services

LinuxWorld Conference & Expo Server Farms and XML Web Services LinuxWorld Conference & Expo Server Farms and XML Web Services Jorgen Thelin, CapeConnect Chief Architect PJ Murray, Product Manager Cape Clear Software Objectives What aspects must a developer be aware

More information

Introduction to Distributed Systems (DS)

Introduction to Distributed Systems (DS) Introduction to Distributed Systems (DS) INF5040/9040 Autumn 2015 Lecturer: Amir Taherkordi (ifi/uio) August 24, 2015 Outline 1. Definition of a distributed system 2. Goals of a distributed system 3. Implications

More information

Middleware and Distributed Systems. Introduction. Dr. Martin v. Löwis

Middleware and Distributed Systems. Introduction. Dr. Martin v. Löwis Middleware and Distributed Systems Introduction Dr. Martin v. Löwis 14 3. Software Engineering What is Middleware? Bauer et al. Software Engineering, Report on a conference sponsored by the NATO SCIENCE

More information

Chapter 1: Distributed Systems: What is a distributed system? Fall 2008 Jussi Kangasharju

Chapter 1: Distributed Systems: What is a distributed system? Fall 2008 Jussi Kangasharju Chapter 1: Distributed Systems: What is a distributed system? Fall 2008 Jussi Kangasharju Course Goals and Content Distributed systems and their: Basic concepts Main issues, problems, and solutions Structured

More information

OPERATING SYSTEMS Internais and Design Principles

OPERATING SYSTEMS Internais and Design Principles OPERATING SYSTEMS Internais and Design Principles FOURTH EDITION William Stallings, Ph.D. Prentice Hall Upper Saddle River, New Jersey 07458 CONTENTS Web Site for Operating Systems: Internais and Design

More information

Client/Server Computing Distributed Processing, Client/Server, and Clusters

Client/Server Computing Distributed Processing, Client/Server, and Clusters Client/Server Computing Distributed Processing, Client/Server, and Clusters Chapter 13 Client machines are generally single-user PCs or workstations that provide a highly userfriendly interface to the

More information

System Models for Distributed and Cloud Computing

System Models for Distributed and Cloud Computing System Models for Distributed and Cloud Computing Dr. Sanjay P. Ahuja, Ph.D. 2010-14 FIS Distinguished Professor of Computer Science School of Computing, UNF Classification of Distributed Computing Systems

More information

Tier Architectures. Kathleen Durant CS 3200

Tier Architectures. Kathleen Durant CS 3200 Tier Architectures Kathleen Durant CS 3200 1 Supporting Architectures for DBMS Over the years there have been many different hardware configurations to support database systems Some are outdated others

More information

Chapter 1. Driving Forces

Chapter 1. Driving Forces DISTRIBUTED SYSTEMS Principles and Paradigms Second Edition ANDREW S. TANENBAUM MAARTEN VAN STEEN (Modified and expanded by Ayman Abdel-Hamid Advanced Topics in Distributed Systems Spring 2008) Chapter

More information

Chapter 18: Database System Architectures. Centralized Systems

Chapter 18: Database System Architectures. Centralized Systems Chapter 18: Database System Architectures! Centralized Systems! Client--Server Systems! Parallel Systems! Distributed Systems! Network Types 18.1 Centralized Systems! Run on a single computer system and

More information

Adaptable Service Oriented Architectures

Adaptable Service Oriented Architectures Otwarte Studium Doktoranckie 1 Adaptable Service Oriented Architectures Krzysztof Zieliński Department of Computer Science AGH-UST Krakow Poland Otwarte Studium Doktoranckie 2 Agenda DCS SOA WS MDA OCL

More information

Chapter 3: Operating-System Structures

Chapter 3: Operating-System Structures Chapter 3: Operating-System Structures System Components Operating System Services System Calls System Programs System Structure Virtual Machines System Design and Implementation System Generation 3.1

More information

High Performance Computing. Course Notes 2007-2008. HPC Fundamentals

High Performance Computing. Course Notes 2007-2008. HPC Fundamentals High Performance Computing Course Notes 2007-2008 2008 HPC Fundamentals Introduction What is High Performance Computing (HPC)? Difficult to define - it s a moving target. Later 1980s, a supercomputer performs

More information

Lecture 2: OS Structure

Lecture 2: OS Structure Lecture 2: OS Structure CSC 469H1F Fall 2006 Angela Demke Brown Overview Motivation: Why talk about structure? Kernel structures Monolithic kernels Open systems Microkernels Kernel Extensions (Tuesday)

More information

IOS110. Virtualization 5/27/2014 1

IOS110. Virtualization 5/27/2014 1 IOS110 Virtualization 5/27/2014 1 Agenda What is Virtualization? Types of Virtualization. Advantages and Disadvantages. Virtualization software Hyper V What is Virtualization? Virtualization Refers to

More information

Introduction Distributed Systems Processes & Threads

Introduction Distributed Systems Processes & Threads Introduction Distributed Systems Processes & Threads Today Processes and Threads Clients and servers Thin-client computing Code migration Processes and threads Distributed system A collection of independent,

More information

Chapter 1: Operating System Models 1 2 Operating System Models 2.1 Introduction Over the past several years, a number of trends affecting operating system design are witnessed and foremost among them is

More information

Distributed System: Definition

Distributed System: Definition Distributed System: Definition A distributed system is a piece of software that ensures that: A collection of independent computers that appears to its users as a single coherent system Two aspects: (1)

More information

Networks and parallelism

Networks and parallelism Networks and parallelism CSE-C3200 Operating systems Autumn 2015 (I), Lecture 9 Vesa Hirvisalo Today Middleware Something between the OS and applications SOAP and DDS as the examples Network virtualization

More information

Use the computer hardware in an efficient manner

Use the computer hardware in an efficient manner Chapter 1: Introduction What is an Operating System? Mainframe Systems Desktop Systems Multiprocessor Systems Distributed Systems Clustered System Real -Time Systems Handheld Systems Feature Migration

More information

CS 475: Concurrent & Distributed Systems

CS 475: Concurrent & Distributed Systems CS 475: Concurrent & Distributed Systems Prof. Sanjeev Setia Computer Science Dept George Mason University About this Class Focus: designing and writing moderatesized concurrent and distributed applications

More information

Rackspace Cloud Databases and Container-based Virtualization

Rackspace Cloud Databases and Container-based Virtualization Rackspace Cloud Databases and Container-based Virtualization August 2012 J.R. Arredondo @jrarredondo Page 1 of 6 INTRODUCTION When Rackspace set out to build the Cloud Databases product, we asked many

More information

Introduction to Distributed Systems (DS)

Introduction to Distributed Systems (DS) Introduction to Distributed Systems (DS) INF5040 autumn 2006 lecturer: Frank Eliassen Frank Eliassen, Ifi/UiO 1 What is a distributed system? Definition [Coulouris & Emmerich] A distributed system consists

More information

Computer Security CS 426

Computer Security CS 426 Computer Security CS 426 Lecture 7 Operating System Security Basics CS426 Fall 2010/Lecture 7 1 Announcements Homework 1 due on Sept 10 Will have first quiz near the end of lecture Form a two-person team

More information

Αρχιτεκτονικές Συστημάτων Βάσεων Δεδομένων

Αρχιτεκτονικές Συστημάτων Βάσεων Δεδομένων Αρχιτεκτονικές Συστημάτων Βάσεων Δεδομένων Βάσεις Δεδομένων Διδάσκων: Μ. Χαλκίδη με βάση slides από A. Silberschatz, H. Korth, S. Sudarshan, Database System Concepts, 5 th edition Database System Architectures

More information

CHAPTER 2 MODELLING FOR DISTRIBUTED NETWORK SYSTEMS: THE CLIENT- SERVER MODEL

CHAPTER 2 MODELLING FOR DISTRIBUTED NETWORK SYSTEMS: THE CLIENT- SERVER MODEL CHAPTER 2 MODELLING FOR DISTRIBUTED NETWORK SYSTEMS: THE CLIENT- SERVER MODEL This chapter is to introduce the client-server model and its role in the development of distributed network systems. The chapter

More information

Overview Course (contd.)

Overview Course (contd.) ECE397A Operating Systems Overview Welcome! Instructor: Professor Csaba Andras Moritz, andras@ecs.umass.edu Class webpage: http://www.ecs.umass.edu/ece/andras/courses/ece397_s2005 Instructor s webpage:

More information

Amoeba Distributed Operating System

Amoeba Distributed Operating System Amoeba Distributed Operating System Matt Ramsay Tim Kiegel Heath Memmer CS470 Case Study Paper 4/19/02 Amoeba Introduction The Amoeba operating system began as a research project at Vrije Universiteit

More information

Components of a Computer System

Components of a Computer System SFWR ENG 3B04 Software Design III 1.1 3 Hardware Processor(s) Memory I/O devices Operating system Kernel System programs Components of a Computer System Application programs Users SFWR ENG 3B04 Software

More information

Chapter 3: Operating-System Structures. Common System Components

Chapter 3: Operating-System Structures. Common System Components Chapter 3: Operating-System Structures System Components Operating System Services System Calls System Programs System Structure Virtual Machines System Design and Implementation System Generation 3.1

More information

CS 5460/6460 Operating Systems

CS 5460/6460 Operating Systems CS 5460/6460 Operating Systems Fall 2009 Instructor: Matthew Flatt Lecturer: Kevin Tew TAs: Bigyan Mukherjee, Amrish Kapoor 1 Reminders HW1 Due: Tuesday, September 8th, 2009 9:40am Submit a single C file

More information

1.4 SOFTWARE CONCEPTS

1.4 SOFTWARE CONCEPTS 22 INTRODUCTION CHAP. 1 1.4 SOFTWARE CONCEPTS Hardware for distributed systems is important, but it is software that largely determines what a distributed system actually looks like. Distributed systems

More information

Virtual Machine Architectures. Virtual Machines. Why Virtualize?

Virtual Machine Architectures. Virtual Machines. Why Virtualize? Virtual Machine Architectures Virtual Machines Allow a system or execution platform to appear to be a different (or multiple) platform(s) Implemented by adding a software layer CS 256/456 Dept. of Computer

More information

OPERATING SYSTEMS OVERVIEW

OPERATING SYSTEMS OVERVIEW SYSTEMS OVERVIEW Jerry Breecher 1: Operating Systems Overview 1 SYSTEM OVERVIEW WHAT IS AN OPERATING SYSTEM? An interface between users and hardware - an environment "architecture Allows convenient usage;

More information

Chapter 10 Transparency

Chapter 10 Transparency Chapter 10 1 2 Statement Complexity Distributed systems consist of many interacting components. Given the connectivity and even the existence of many components may vary during operation. The system is

More information

Lecture 23: Multiprocessors

Lecture 23: Multiprocessors Lecture 23: Multiprocessors Today s topics: RAID Multiprocessor taxonomy Snooping-based cache coherence protocol 1 RAID 0 and RAID 1 RAID 0 has no additional redundancy (misnomer) it uses an array of disks

More information

3 Theoretical Background

3 Theoretical Background 3 Theoretical Background This chapter present the theoretical background needed to fully understand the proposed distribution model. Distributed computing, user prediction, push technology and caching

More information

Multi-core Programming System Overview

Multi-core Programming System Overview Multi-core Programming System Overview Based on slides from Intel Software College and Multi-Core Programming increasing performance through software multi-threading by Shameem Akhter and Jason Roberts,

More information

Operating Systems CMPSC 473. Operating Systems Structure February 5, Lecture 6 Instructor: Trent Jaeger

Operating Systems CMPSC 473. Operating Systems Structure February 5, Lecture 6 Instructor: Trent Jaeger Operating Systems CMPSC 473 Operating Systems Structure February 5, 2008 - Lecture 6 Instructor: Trent Jaeger Last class: Processes Today: Threads Why Threads? Advantages of Threads Improve Responsiveness

More information

CSE 513 Introduction to Operating Systems Class 9 - Distributed and Multiprocessor Operating Systems

CSE 513 Introduction to Operating Systems Class 9 - Distributed and Multiprocessor Operating Systems CSE 513 Introduction to Operating Systems Class 9 - Distributed and Multiprocessor Operating Systems Jonathan Walpole Dept. of Comp. Sci. and Eng. Oregon Health and Science University 1 Why use parallel

More information

Module 1: Introduction. Operating System Concepts. Terminology. What is an Operating System? Where are OSs found? Distributed Real-Time Systems

Module 1: Introduction. Operating System Concepts. Terminology. What is an Operating System? Where are OSs found? Distributed Real-Time Systems Operating System Concepts Module 1: INTRODUCTION Andrzej Bednarski, Ph.D. student Department of Computer and Information Science Linköping University, Sweden Module 1: Introduction What is an operating

More information

Basics of Virtualisation

Basics of Virtualisation Basics of Virtualisation Volker Büge Institut für Experimentelle Kernphysik Universität Karlsruhe Die Kooperation von The x86 Architecture Why do we need virtualisation? x86 based operating systems are

More information

Multiprocessor Systems

Multiprocessor Systems Multiprocessor Systems Tightly Coupled vs. Loosely Coupled Systems tightly coupled system generally represent systems which have some degree of sharable memory through which processors can exchange information

More information

Chapter 4 Threads, SMP, and Microkernels

Chapter 4 Threads, SMP, and Microkernels Operating Systems: Internals and Design Principles, 6/E William Stallings Chapter 4 Threads, SMP, and Microkernels Dave Bremer Otago Polytechnic, N.Z. 2008, Prentice Hall Roadmap Threads: Resource ownership

More information

Basics. Topics to be covered. Definition of a Distributed System. Definition of a Distributed System

Basics. Topics to be covered. Definition of a Distributed System. Definition of a Distributed System Topics to be covered Basics Definitions and Examples Goals Models (architectural, fundamental) Hardware and Software Concepts The -Server Model 1 2 Historical Definition of a Distributed System Two developments

More information

Tools Page 1 of 13 ON PROGRAM TRANSLATION. A priori, we have two translation mechanisms available:

Tools Page 1 of 13 ON PROGRAM TRANSLATION. A priori, we have two translation mechanisms available: Tools Page 1 of 13 ON PROGRAM TRANSLATION A priori, we have two translation mechanisms available: Interpretation Compilation On interpretation: Statements are translated one at a time and executed immediately.

More information

Lect. 2: Types of Parallelism

Lect. 2: Types of Parallelism Lect. 2: Types of Parallelism Parallelism in Hardware (Uniprocessor) Parallelism in a Uniprocessor Pipelining Superscalar, VLIW etc. SIMD instructions, Vector processors, GPUs Multiprocessor Shared-memory

More information

Tanenbaum & Van Steen, Distributed Systems: Principles and Paradigms, 2e, (c) 2007 Prentice-Hall, Inc. All rights reserved.

Tanenbaum & Van Steen, Distributed Systems: Principles and Paradigms, 2e, (c) 2007 Prentice-Hall, Inc. All rights reserved. Prentice-Hall, Inc. All rights reserved. 0-13-239227-5 1 A distributed system is: A collection of independent computers that appears to its users as a single coherent system. Prentice-Hall, Inc. All rights

More information

Write a technical report Present your results Write a workshop/conference paper (optional) Could be a real system, simulation and/or theoretical

Write a technical report Present your results Write a workshop/conference paper (optional) Could be a real system, simulation and/or theoretical Identify a problem Review approaches to the problem Propose a novel approach to the problem Define, design, prototype an implementation to evaluate your approach Could be a real system, simulation and/or

More information

Client-Server Applications

Client-Server Applications Client-Server Applications Prof. Sanjeev Setia Distributed Software Systems CS 707 Distributed Software Systems 1 Client Server Systems Distributed Software Systems 2 1 Client/Server Application Distributed

More information

A New Method of SAN Storage Virtualization

A New Method of SAN Storage Virtualization A New Method of SAN Storage Virtualization Table of Contents 1 - ABSTRACT 2 - THE NEED FOR STORAGE VIRTUALIZATION 3 - EXISTING STORAGE VIRTUALIZATION METHODS 4 - A NEW METHOD OF VIRTUALIZATION: Storage

More information

Multiple Processor Systems. Tanenbaum, Modern Operating Systems 3 e, (c) 2008 Prentice-Hall

Multiple Processor Systems. Tanenbaum, Modern Operating Systems 3 e, (c) 2008 Prentice-Hall Multiple Processor Systems Multiple Processor Systems Figure 8-1. (a) A shared-memory multiprocessor. (b) A messagepassing multicomputer. (c) A wide area distributed system. (a) is a Uniform Memory

More information

1.5 Distributed Systems

1.5 Distributed Systems 1.5 Distributed Systems A network, in the simplest terms, is a communication path between two or more systems. Distributed systems depend on networking for their functionality. By being able to communicate,

More information

Operating Systems CMPSC 473. Operating Systems Structure January 24, Lecture 3 Instructor: Trent Jaeger

Operating Systems CMPSC 473. Operating Systems Structure January 24, Lecture 3 Instructor: Trent Jaeger Operating Systems CMPSC 473 Operating Systems Structure January 24, 2008 - Lecture 3 Instructor: Trent Jaeger Last class: Computer architecture support for systems Today: Operating Systems Structures and

More information

Chapter 3 Processes. Thread Implementation. Multithreaded Servers (1) Multithreaded Servers (2) Thread Usage in Nondistributed Systems

Chapter 3 Processes. Thread Implementation. Multithreaded Servers (1) Multithreaded Servers (2) Thread Usage in Nondistributed Systems Thread Usage in Nondistributed Systems DISTRIBUTED SYSTEMS Principles and Paradigms Second Edition ANDREW S. TANENBAUM MAARTEN VAN STEEN Chapter 3 Processes Figure 3-1. Context switching as the result

More information

nanohub.org An Overview of Virtualization Techniques

nanohub.org An Overview of Virtualization Techniques An Overview of Virtualization Techniques Renato Figueiredo Advanced Computing and Information Systems (ACIS) Electrical and Computer Engineering University of Florida NCN/NMI Team 2/3/2006 1 Outline Resource

More information

Chapter 17: Database System Architectures

Chapter 17: Database System Architectures Chapter 17: Database System Architectures Database System Concepts, 6 th Ed. See www.db-book.com for conditions on re-use Chapter 17: Database System Architectures Centralized and Client-Server Systems

More information

64-bit Perceptive Content Server

64-bit Perceptive Content Server 64-bit Perceptive Content Server Advanced Design and Setup Guide Perceptive Content Version: 7.1.x Written by: Product Knowledge, R&D Date: March 2015 2015 Perceptive Software. All rights reserved Perceptive

More information

Operating Systems for Parallel Processing Assistent Lecturer Alecu Felician Economic Informatics Department Academy of Economic Studies Bucharest

Operating Systems for Parallel Processing Assistent Lecturer Alecu Felician Economic Informatics Department Academy of Economic Studies Bucharest Operating Systems for Parallel Processing Assistent Lecturer Alecu Felician Economic Informatics Department Academy of Economic Studies Bucharest 1. Introduction Few years ago, parallel computers could

More information

Client-Server Applications

Client-Server Applications Client-Server Applications Prof. Sanjeev Setia Distributed Software Systems CS 707 Distributed Software Systems 1 Client Server Systems Distributed Software Systems 2 1 Client/Server Application Distributed

More information

Principles and Paradigms Second Edition MAARTEN VAN STEEN. Processes

Principles and Paradigms Second Edition MAARTEN VAN STEEN. Processes DISTRIBUTED SYSTEMS Principles and Paradigms Second Edition ANDREW S. TANENBAUM MAARTEN VAN STEEN Chapter 3 Processes 1 Processes How the different types of processes play a crucial role in distributed

More information

Chapter 6: Operating System support

Chapter 6: Operating System support Chapter 6: Operating System support From Coulouris, Dollimore and Kindberg Distributed Systems: Concepts and Design Edition 4, Introduction What is an operating system (OS)? To provide problem-oriented

More information

Grid Computing lecture by Camiel Plevier

Grid Computing lecture by Camiel Plevier Grid Computing lecture by Camiel Plevier History of Computation Infrastructure Grid Concept Basic Architecture Resources Human Interfaces Grid Middleware Grid Topologies Security Application Development

More information

Middleware Lou Somers

Middleware Lou Somers Middleware Lou Somers April 18, 2002 1 Contents Overview Definition, goals, requirements Four categories of middleware Transactional, message oriented, procedural, object Middleware examples XML-RPC, SOAP,

More information

Distributed Systems. Examples. Advantages and disadvantages. CIS 505: Software Systems. Introduction to Distributed Systems

Distributed Systems. Examples. Advantages and disadvantages. CIS 505: Software Systems. Introduction to Distributed Systems CIS 505: Software Systems Introduction to Distributed Systems Insup Lee Department of Computer and Information Science University of Pennsylvania Distributed Systems Why distributed systems? o availability

More information

Virtualization. Pradipta De pradipta.de@sunykorea.ac.kr

Virtualization. Pradipta De pradipta.de@sunykorea.ac.kr Virtualization Pradipta De pradipta.de@sunykorea.ac.kr Today s Topic Virtualization Basics System Virtualization Techniques CSE506: Ext Filesystem 2 Virtualization? A virtual machine (VM) is an emulation

More information

Cluster, Grid, Cloud Concepts

Cluster, Grid, Cloud Concepts Cluster, Grid, Cloud Concepts Kalaiselvan.K Contents Section 1: Cluster Section 2: Grid Section 3: Cloud Cluster An Overview Need for a Cluster Cluster categorizations A computer cluster is a group of

More information

Phire Architect Hardware and Software Requirements

Phire Architect Hardware and Software Requirements Phire Architect Hardware and Software Requirements Copyright 2014, Phire. All rights reserved. The Programs (which include both the software and documentation) contain proprietary information; they are

More information