an overview of the amoeba distributed operating system mallikarjuna reddy srinivas vadlamani...

11
An Overview of the Amoeba Distributed Operating System Mallikarjuna Reddy Srinivas Vadlamani University of California Irvine

Upload: alexandra-dixon

Post on 16-Dec-2015

218 views

Category:

Documents


5 download

TRANSCRIPT

Page 1: An Overview of the Amoeba Distributed Operating System Mallikarjuna Reddy Srinivas Vadlamani University of California Irvine

An Overview of the Amoeba Distributed Operating SystemAn Overview of the Amoeba

Distributed Operating System

Mallikarjuna Reddy Srinivas Vadlamani

University of California

Irvine

Page 2: An Overview of the Amoeba Distributed Operating System Mallikarjuna Reddy Srinivas Vadlamani University of California Irvine

OutlineOutlineOutlineOutline Introduction What is Amoeba? Design goals Architecture Communication primitives Resource management Priority Mechanism Summary Acknowledgements

Page 3: An Overview of the Amoeba Distributed Operating System Mallikarjuna Reddy Srinivas Vadlamani University of California Irvine

Motivation for Distributed SystemsMotivation for Distributed Systems Fall in microprocessor prices during early 80’s Mainframes set-up expensive Search for efficient and economical substitutes

GoalsDistributed Resource ManagementHigh AvailabilitySimplicityParallelismTransparencyscalabilityfast file system

Page 4: An Overview of the Amoeba Distributed Operating System Mallikarjuna Reddy Srinivas Vadlamani University of California Irvine

Design Goals of AmoebaDesign Goals of Amoeba Distribution: connecting together many machines

Transparency: collection of computers acting like a single system

Parallelism: allowing individual jobs to use multiple CPUsExample: the traveling salesman problem

Fault ToleranceBoot Service

Performance: achieving all of the above in an efficient manner

Page 5: An Overview of the Amoeba Distributed Operating System Mallikarjuna Reddy Srinivas Vadlamani University of California Irvine

ArchitectureArchitecture Workstations

– Used by users to access the system– Limited processing power but not “dumb”

Pool Processors– Heavy duty computation– Dynamically allocated to user tasks– Can be multicomputers or multiprocessors

Specialized Servers– Example: File or Directory servers

Gateway– Connects Amoeba to a WAN– Converts data between FLIP and TCP/IP

Page 6: An Overview of the Amoeba Distributed Operating System Mallikarjuna Reddy Srinivas Vadlamani University of California Irvine

Architecture contd...Architecture contd...

WAN

Page 7: An Overview of the Amoeba Distributed Operating System Mallikarjuna Reddy Srinivas Vadlamani University of California Irvine

Communication PrimitivesCommunication Primitives Remote procedure call based

FLIP protocol for communication: Fast Local Internet Protocol

– Advantage: increased performance over TCP/IP– Disadvantage: need a gateway to connect the LAN to

a WAN

Amoeba Interface Language (AIL)– Generates stubs– Handles marshalling/unmarshalling of parameters– Preserves transparency of the system

Page 8: An Overview of the Amoeba Distributed Operating System Mallikarjuna Reddy Srinivas Vadlamani University of California Irvine

Resource ManagementResource Management Computation done by processor pools

Resource Manager on each node– Tracks and controls resources on its node

Dedicated Process Server– Tracks which processors are free– Allocates tasks to a group of processors

Preserves transparency– Allocation process is unknown to the user– User has no control over allocation

Page 9: An Overview of the Amoeba Distributed Operating System Mallikarjuna Reddy Srinivas Vadlamani University of California Irvine

Priority MechanismPriority Mechanism A Bank Server

– Analogy with a monetary bank– Regulates access to shared resources– Example of a shared resource is processing power of

CPUs

On initiation each process gets some number of tokens– Can be thought of as “virtual money” held by the

process– To gain access to shared resources, process has to

expend money– At any given moment, the “richest” process gets

access to the shared resource

Page 10: An Overview of the Amoeba Distributed Operating System Mallikarjuna Reddy Srinivas Vadlamani University of California Irvine

SummarySummary Architectural Features

– Transparent distributed computing using a large number of processors

– Support for parallel computing– Micro-kernel architecture– High performance communication using RPC and FLIP

Weaknesses– Not compatible with UNIX– Virtual memory not supported (for performance

reasons)– Performs poorly when there is insufficient memory– No NFS support

Page 11: An Overview of the Amoeba Distributed Operating System Mallikarjuna Reddy Srinivas Vadlamani University of California Irvine

AcknowledgementsAcknowledgements Andrew S. Tanenbaum et al

The Amoeba Distributed Operating System – A Status Report

Apan Qasem, CS Dept, Florida State UniversityAn Introduction to the Amoeba Distributed Operating System

Yasir AliAn Overview of the Amoeba Distributed Operating System

Kingsley Cheung, Gernot Heiser, School of Computer Science and Engineering, University of NSW, Sydney, Australia

A Resource Management Framework for Priority-Based Physical Memory Allocation