Case Study: Distributed OS
Download
Report
Transcript Case Study: Distributed OS
Case Study: Distributed OS
Distributed Systems, Lecture # 17
Amoeba OS
What if we could afford hundreds of
computers per user?
Use
These days this is called “blade
computing”
Grid
a shared pool of servers
Computing?
Location independent
Amake
Architecture
Micro-kernel
Process and thread (kernel/user space) management
IPC
Low level I/O management
Low level Memory management
Client-Server Model
Clients are written by users
Servers are written by system
programmers
Essentially
guarantees
isolating faults, and reliability
Objects
Servers manage objects
Clients can instantiate and access objects
Objects protected by cryptographically
protected capability
Files
Directories
Memory Segments
Screen Windows
Processors
Disks
RPC Communication
Primitive for location independence
Stub acts as a proxy in the client
address space
Resolve
name
Marshal parameters
Block for reply
Bullet + Soap Server
Modular Architecture
Naming
File Manipulation
Bullet File server
Read-only file server
Files can only created and deleted
Not modified!
Soap Directory Server
Maps file names to capabilties
Other Servers
Object replication server
Process maintenance
Health-monitoring server
Inter-operability servers
Objects and Capabilities
Objects make the system modular
Secure
Fault-tolerant
More available
Capabilities
Naming as well as protection
Managed in user space
Rights management
Can
downgrade rights of a capability
Takes
original bits
XOR with old rights
Take a one-way hash
Process Management
Process is also an object
Accessed
by process descriptor capability
Three-levels of interfaces
RPC
with process servers
Library Calls
Do-all dispatcher “Run-server”
Memory Management
Not paged or swapped
Contiguous in memory
Segments may be created, destroyed,
read and written
Simple and fast in an RPC model
Overly
restrictive
Message passing
Servers declare ports
Get_port
Identifies
a service
Clients put-ports in their messages
At-most once semantics
As
opposed to atleast once
Group Communication
Closed groups
Reliable Broadcast
Sequencer
model
Lazy-ack
Client broadcast vs Sequencer
broadcast
Layered Communication
Model
LAN
IP
FLIP
Fast
local internet protocol
FLIP addresses are persistent and
location-independent
From the put-port to the FLIP address
From the FLIP to the network address