Upload
vikash-mainanwal
View
27
Download
0
Tags:
Embed Size (px)
Citation preview
A Presentation 0f Advance Operating System
RPC
Master of TechnologyIn
Computer Science &EngineeringSubmitted By
Vikash MainanwaI
Communication primitive Remote procedure callIssue of RPCDistributed Deadlock DetectionDDD Algorithm
CONTENTS
1. The communication primitive are the high level constructs with which program use underlying communication network.
2. It’s two types a. Message passing models b. Remote procedure call
Communication Primitives
A message is information which is sent from a sender to a receiver.
Message
Passing
Passing is a way which going through one step to another.
NetworkS
end
Rece
ive
Remote Procedure Call…• Remote Procedure Call (RPC) is a protocol that allows
programs to call procedures located on other machines.
• RPC uses the client/server model. The requesting program is a client and the service-providing program is the server.
• The client stub acts as a proxy for the remote procedure.
• The server stub acts as a correspondent to the client stub.
RPC…..
Client(caller)
Server(callee)
PacketHandler
PacketHandler
call
return
send
receive
send
receive
return
call
Netw
orkNetw
ork
ClientStub
bundleargs
bundleret vals
unbundleret vals
ServerStub
unbundleargs
Machine A
Machine B
mbox1
mbox2
Asynchronous…
Blocking state
client server
request
reply
Executing state
Call procedure and wait for reply
Receive request and start process execution
Send reply and wait for next execution
Resume execution
Design Issue in RPC
Structure:- RPC mechanism is based on Stub procedure.
Binding:- Is that process who determines remote
procedure and machine, what will be execute also check
compatibility of parameter.
Parameter and result passing:- To pass parameters or results to a remote procedure, a stub procedure has to convert the parameters and results into an appropriate representation first and then pack them into a buffer in a form suitable for transmission
A remote procedure call can fail for at least two reasons
1. Computer failures.
2. Communication failures.
Handling failures in distributed system is difficult.