Presentation is loading. Please wait.

Presentation is loading. Please wait.

AMOEBA study of distributed system

Similar presentations


Presentation on theme: "AMOEBA study of distributed system"— Presentation transcript:

1 AMOEBA study of distributed system
Prepared By: ChiragShah(30652) Pritesh Vora(30667) Guided By:

2 what is Amoeba? It is distributed operating system which collects a huge variety of single machines connected over a network to one ,huge computer. It is developed at Vrije University in amsterdamby Andrew S. Tannenbum. AMOEBA system will connect the multiple AMOEBA systems in different sites into single coherent system. This goal is obtained by using objects and their capabilities in uniform ways

3 History Developed at the Vrije Universiteit Amsterdam, Netherlands. Chief designer: Andrew S. Tanenbaum Other developers were Frans Kaashock, Sape J. Mullender, Robbert van Renesse, Leendert van Doorn,  Kees Verstoep and many, many more. First proto release in 1983 (V1.0), last official release 1996 (V5.3) Supports multiple architectures: 68k, i80386, SPARC

4 Small kernel aprroach: Performance:
Design Goals Transparency: Distribution: Parallelism: Small kernel aprroach: Performance:

5 It implements universal distributed client-server model.
System Architecture It implements universal distributed client-server model. Whole system need only three functions to work: Transaction call from a client thegetRequest PutReply functions on server side.

6 It consists of four principle components: File servers:
System Architecture It consists of four principle components: File servers: Workstations: Pool processors: Gateways:

7 Networking Currently Amoeba has only drivers for Ethernet,but other network drivers are under consideration. Amoeba do not set upper limit for no. of computers but in some cases it is limited by n/w bandwidth or topology.

8 Amoeba is reasonably portable and has run on five architectures.
Heterogeneity Amoeba is reasonably portable and has run on five architectures. It is currently available on following architectures. The motorola MC680x0 family The intel family Members of SPARC family Processor pool may contain processors more than one type of architecture. Configurations supported: Pool,specilazied server,workstation

9 High performance server client communication: Remote procedure call:
AMOEBA KERNEL FEATURE AMOEBA kernel has some major features over commonly used other os kernels. High performance server client communication: Remote procedure call: Interprocess procedure call: 2.Kernel administration: Remote rebooting of kernels: Remote status report:

10 AMOEBA’s object concept & capabilities
AMOEBA is organized as a collection of objects:each with some operations that process can perform on it. There are many object classes like files,directories,memorysegments,processes etc. When an object is created, the server returns a Capability.  capability is used to address and protect the object.

11 Process Management A process is an object in Amoeba. Information about the processes in Amoeba are contained in capabilities and in a data structure called a process descriptor. Amoeba supports a simple thread model. When a process starts up, it has at least one thread. The number of threads is dynamic. Three methods are provided for thread synchronization:Mutexes,Semaphores ,Signals

12 Stack segment for the main thread/process Data segment
Memory Management Amoeba supplies a simple memory management based on segments. Each process owns at least three segments: Text/Code segment Stack segment for the main thread/process Data segment Each further thread gets his own stack segment, and the process can allocated arbitrary additional data segments. All segments are page protected by the underlying MMU, the kernel segments, too

13 trans(req_header, req_buf, req_size, rep_header,rep_buf, rep_size)
Communication All processes, the kernel too, communicate with a standardized RPC (Remote procedure call) interface. There are only three functions to reach this goal: trans(req_header, req_buf, req_size, rep_header,rep_buf, rep_size) do a transaction to another server getreq(req_header,req_buf,req_siz) get a client request putrep(rep_header,rep_buf,rep_siz) send a reply to the client

14 The Virtual Amoeba Machine
The Virtual Amoeba Machine Environment consists of these main parts: UThreads AMUNIX FLIPD VAM

15 The Virtual Amoeba Machine
The native Amoeba kernel (called the VERTEX-Kernel), with these features: Clean and modern micro kernel design Easy to implement device drivers User space device driver support Full network performance through direct FLIP network access The kernel operates standalone, and needs no further configuration

16 General Requirements The amoeba distributed operating system can run on many different types and brands of computers. It is intended that it should run on network with at least five computers. the main machine should be equipped with at least 64 MB RAM (128 MB recommended) and at least with 500MB disk space. Currently, Fireball ­Amoeba only supports Ethernet. In special only the 10 MBit/s connectivity with RJ­45 or RG­58 connectors, and now 100 MBit/s Fast Ethernet, too.

17 Implementation According to Tanenbaum (1990), AMOEBA system has been implemented to five different CPU : 68010, NS 32016, 8088, VAX, PDP-11. Current configuration has 48 single board VME based computers using and CPU and also 10 VAX CPU forming additional processor pool. Current research includes connecting AMOEBA at 5 locations in 3 countries. Using Wide Area Network facilities.

18 Amoeba has two level of protection:
Security Amoeba has two level of protection: Ports for protecting access to server Capabilities for protecting access to individual objects. Hardware solution: A small interface box (F - box) are put between each processor module and the network. software solution: since ports for public servers are known to all users it is easy for an intruder to impersonate a server just by doing a get_rerequest on the server’s port.

19 Comparision of Amoeba and V
Amoeba and V use the small kernel to provide the infrastructure of the distributed system. Amoeba and V are free-market model service, Service such as the file system are in principle just an ordinary user process. Amoeba and V use client-server and remote procedure call. V does not have the processor pool, and there is no dynamic processor allocation. Amoeba has a processor pool and does the processor allocation. Amoeba is more fault tolerance than V (Cheriton 1988), because V was designed for interactive workstation, so if there are something goes wrong, user can re-execute.

20 The native Amoeba kernel is very well suited for embedded systems.
Field of Application Distributed measuring and data acquisition systems, for example remote digital camera servers connected with an Ethernet network. The native Amoeba kernel is very well suited for embedded systems. Distributed control systems. High performance parallel computing and other distributed numerical computations. Distributed file systems using raw disk access on the top of standard operating systems.

21 Conclusion A distributed system potentially will be more reliable and low cost than a time sharing system. By placing the other service outside the kernel and keeping the kernel as small as possible, the system is more flexible and reliable. The client-server model with remote procedure call have proved that using basic primitive communication the overhead of communication can be reduced. By using the object and capability model, Amoeba is more flexible and more easily be used. Amoeba is the only one Distributed Operating System which implements Wide Area Network.

22 Thank you


Download ppt "AMOEBA study of distributed system"

Similar presentations


Ads by Google