码迷,mamicode.com
首页 > 其他好文 > 详细

[Operating System] {ud923} P4L1: Remote Procedure Calls

时间:2019-05-29 14:50:09      阅读:183      评论:0      收藏:0      [点我收藏+]

标签:rename   idt   ultimate   square   before   index   sid   href   procedure   

技术图片

RPC is an IPC mechanism that specifies that the processes interact via procedure call interface.

 

 Birrell, Andrew, and Bruce Nelson.

 https://s3.amazonaws.com/content.udacity-data.com/courses/ud923/references/ud923-birrell-nelson-paper.pdf

 

 

 

 

 

 

 Why RPC?

技术图片

 

 

 

Benefits of RPC 

 技术图片

 

 

 RPC Requirements

  技术图片

 

 

 Structure of RPC

 技术图片

Once the result is computed, it will take the reverse path. It will go through the server step that will first create a buffer for that result, 

then it will send the response back via appropriate client connection, arriving on the client side into the RPC run time.

the packets will be received. the result will be extracted from those packets by the client side stub, be placed somewhere in memory in the client address space, and ultimately the procedure will return to the client process.

Before that, the client process will be blocked, and the application will be suspended here.

 

 

 


 

 https://zhuanlan.zhihu.com/p/45700301

 技术图片

 


 

 

Steps in RPC 

 技术图片

 

 


 

 

https://www.zhihu.com/question/23995948

目前linux进程间通信的常用方法是什么(pipe?信号量?消息队列?)?

 

技术图片

 

 


 

 

 

Interface Definition Language 

 技术图片

 

 


 

 

 

https://www.jianshu.com/p/959030de7f1c

 技术图片

 

 

 


 

 

 Specifying an IDL

 技术图片

技术图片

XDR (Sun RPC) Example

 

 

 

 

 Marshalling

 技术图片

The encoding specifies the data layout when it‘s serialized to the bytee stream, so that anybody that looks at it can actually make sense of it.

 

 

 

 Unmarshalling

 技术图片

 

 

 Binding and Registry

 技术图片

技术图片

registry => yellow pages

 

 

 

 Visual Metaphor

 技术图片

 

 


 

 

https://blog.csdn.net/qq_18425655/article/details/51955674

面试题:TCP协议与UDP协议的区别

 


 

 

 

 

 

 Pointers in RPCs

 技术图片

 

 

 Handling Partial Failures

 技术图片

 

 

RPC Failure Quiz 

 技术图片

 

 

 RPC Design Choice Summary

 技术图片

 

 

 

What is SunRPC? 

 技术图片

 

 

 SunRPC Overview

 技术图片

技术图片

Sun RPC Documents (maintained by Oracle)

 

 

 

 

 SunRPC XDR Example

 技术图片

技术图片

 

 

Compiling XDR 

 技术图片

技术图片

 

 

 

Summarizing XDR Compilation 

 技术图片

技术图片

 

 

 

 

 技术图片

 

To complete the quiz, download the square.x file (if following along with the hints, you will need to rename it to square.x), and run rpcgen!

You can run rpcgen on the Ubuntu VM provided with this class. If you have not setup the Ubuntu VM yet, follow the Ubnutu VM Setup Instructions.

Quiz Errata

There are two issues with the rpcgen commands. First, you should use the following format:

  • rpcgen square.x [flags]

And, because the flags may be difficult to read, here are the full commands:

  • rpcgen square.x -C
  • rpcgen square.x -C -M

 技术图片

技术图片

 

 

 

 SunRPC Registry

 技术图片

 

 

 SunRPC Binding

 技术图片

 

 

 XDR Data Types

 技术图片

技术图片

RFC 4506 (Defines XDR Data Types)

 

 

 

 

技术图片

 

 

 

 

 XDR Routines

 技术图片

_freeresult procudure => another user defined procedure => user specifies what are all the different data structures, or pieces of state, that need to be freed up after runtime is done.

 

 

 

 

 Encoding

 技术图片

 

 

 

 XDR Encoding

技术图片

技术图片

 

 

 

 技术图片

 

 

 

 Java RMI

 技术图片

 Java RMI Tutorials

 

 

 

技术图片

 

[Operating System] {ud923} P4L1: Remote Procedure Calls

标签:rename   idt   ultimate   square   before   index   sid   href   procedure   

原文地址:https://www.cnblogs.com/ecoflex/p/10943541.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!