A Presentation 0f Advance Operating System
RPC
Master of Technology
In
Computer Science &Engineering
Submitted By
Vikash MainanwaI
Communication primitive
Remote procedure call
Issue of RPC
Distributed Deadlock Detection
DDD 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.
Network
Send
Receive
Blocking VS. Non-Blocking
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)
Packet
Handler
Packet
Handler
call
return
send
receive
send
receive
return
call
Network
Network
Client
Stub
bundle
args
bundle
ret vals
unbundle
ret vals
Server
Stub
unbundle
args
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.
Remote Procedure call
Remote Procedure Call
Remote Procedure Call

Remote Procedure Call