Presentation is loading. Please wait.

Presentation is loading. Please wait.

Case Study: Distributed OS Distributed Systems, Lecture # 17.

Similar presentations


Presentation on theme: "Case Study: Distributed OS Distributed Systems, Lecture # 17."— Presentation transcript:

1 Case Study: Distributed OS Distributed Systems, Lecture # 17

2 Amoeba OS What if we could afford hundreds of computers per user? What if we could afford hundreds of computers per user? Use a shared pool of servers Use a shared pool of servers These days this is called “blade computing” These days this is called “blade computing” Grid Computing? Grid Computing? Location independent Location independent Amake Amake What if we could afford hundreds of computers per user? What if we could afford hundreds of computers per user? Use a shared pool of servers Use a shared pool of servers These days this is called “blade computing” These days this is called “blade computing” Grid Computing? Grid Computing? Location independent Location independent Amake Amake

3 Architecture

4 Micro-kernel Process and thread (kernel/user space) management Process and thread (kernel/user space) management IPC IPC Low level I/O management Low level I/O management Low level Memory management Low level Memory management Process and thread (kernel/user space) management Process and thread (kernel/user space) management IPC IPC Low level I/O management Low level I/O management Low level Memory management Low level Memory management

5 Client-Server Model Clients are written by users Clients are written by users Servers are written by system programmers Servers are written by system programmers Essentially isolating faults, and reliability guarantees Essentially isolating faults, and reliability guarantees Clients are written by users Clients are written by users Servers are written by system programmers Servers are written by system programmers Essentially isolating faults, and reliability guarantees Essentially isolating faults, and reliability guarantees

6 Objects Servers manage objects Servers manage objects Clients can instantiate and access objects Clients can instantiate and access objects Objects protected by cryptographically protected capability Objects protected by cryptographically protected capability Files Files Directories Directories Memory Segments Memory Segments Screen Windows Screen Windows Processors Processors Disks Disks Servers manage objects Servers manage objects Clients can instantiate and access objects Clients can instantiate and access objects Objects protected by cryptographically protected capability Objects protected by cryptographically protected capability Files Files Directories Directories Memory Segments Memory Segments Screen Windows Screen Windows Processors Processors Disks Disks

7 RPC Communication Primitive for location independence Primitive for location independence Stub acts as a proxy in the client address space Stub acts as a proxy in the client address space Resolve name Resolve name Marshal parameters Marshal parameters Block for reply Block for reply Primitive for location independence Primitive for location independence Stub acts as a proxy in the client address space Stub acts as a proxy in the client address space Resolve name Resolve name Marshal parameters Marshal parameters Block for reply Block for reply

8 Bullet + Soap Server Modular Architecture Modular Architecture Naming Naming File Manipulation File Manipulation Bullet File server Bullet File server Read-only file server Read-only file server Files can only created and deleted Files can only created and deleted Not modified! Not modified! Soap Directory Server Soap Directory Server Maps file names to capabilties Maps file names to capabilties Modular Architecture Modular Architecture Naming Naming File Manipulation File Manipulation Bullet File server Bullet File server Read-only file server Read-only file server Files can only created and deleted Files can only created and deleted Not modified! Not modified! Soap Directory Server Soap Directory Server Maps file names to capabilties Maps file names to capabilties

9 Other Servers Object replication server Object replication server Process maintenance Process maintenance Health-monitoring server Health-monitoring server Inter-operability servers Inter-operability servers Object replication server Object replication server Process maintenance Process maintenance Health-monitoring server Health-monitoring server Inter-operability servers Inter-operability servers

10 Objects and Capabilities Objects make the system modular Objects make the system modular Secure Secure Fault-tolerant Fault-tolerant More available More available Objects make the system modular Objects make the system modular Secure Secure Fault-tolerant Fault-tolerant More available More available

11 Capabilities Naming as well as protection Naming as well as protection Managed in user space Managed in user space Rights management Rights management Can downgrade rights of a capability Can downgrade rights of a capability Takes original bits Takes original bits XOR with old rights XOR with old rights Take a one-way hash Take a one-way hash Naming as well as protection Naming as well as protection Managed in user space Managed in user space Rights management Rights management Can downgrade rights of a capability Can downgrade rights of a capability Takes original bits Takes original bits XOR with old rights XOR with old rights Take a one-way hash Take a one-way hash

12 Process Management Process is also an object Process is also an object Accessed by process descriptor capability Accessed by process descriptor capability Three-levels of interfaces Three-levels of interfaces RPC with process servers RPC with process servers Library Calls Library Calls Do-all dispatcher “Run-server” Do-all dispatcher “Run-server” Process is also an object Process is also an object Accessed by process descriptor capability Accessed by process descriptor capability Three-levels of interfaces Three-levels of interfaces RPC with process servers RPC with process servers Library Calls Library Calls Do-all dispatcher “Run-server” Do-all dispatcher “Run-server”

13 Memory Management Not paged or swapped Not paged or swapped Contiguous in memory Contiguous in memory Segments may be created, destroyed, read and written Segments may be created, destroyed, read and written Simple and fast in an RPC model Simple and fast in an RPC model Overly restrictive Overly restrictive Not paged or swapped Not paged or swapped Contiguous in memory Contiguous in memory Segments may be created, destroyed, read and written Segments may be created, destroyed, read and written Simple and fast in an RPC model Simple and fast in an RPC model Overly restrictive Overly restrictive

14 Message passing Servers declare ports Servers declare ports Get_port Get_port Identifies a service Identifies a service Clients put-ports in their messages Clients put-ports in their messages At-most once semantics At-most once semantics As opposed to atleast once As opposed to atleast once Servers declare ports Servers declare ports Get_port Get_port Identifies a service Identifies a service Clients put-ports in their messages Clients put-ports in their messages At-most once semantics At-most once semantics As opposed to atleast once As opposed to atleast once

15 Group Communication Closed groups Closed groups Reliable Broadcast Reliable Broadcast Sequencer model Sequencer model Lazy-ack Lazy-ack Client broadcast vs Sequencer broadcast Client broadcast vs Sequencer broadcast Closed groups Closed groups Reliable Broadcast Reliable Broadcast Sequencer model Sequencer model Lazy-ack Lazy-ack Client broadcast vs Sequencer broadcast Client broadcast vs Sequencer broadcast

16 Layered Communication Model LAN LAN IP IP FLIP FLIP Fast local internet protocol Fast local internet protocol FLIP addresses are persistent and location-independent FLIP addresses are persistent and location-independent From the put-port to the FLIP address From the put-port to the FLIP address From the FLIP to the network address From the FLIP to the network address LAN LAN IP IP FLIP FLIP Fast local internet protocol Fast local internet protocol FLIP addresses are persistent and location-independent FLIP addresses are persistent and location-independent From the put-port to the FLIP address From the put-port to the FLIP address From the FLIP to the network address From the FLIP to the network address

17


Download ppt "Case Study: Distributed OS Distributed Systems, Lecture # 17."

Similar presentations


Ads by Google