Remote Procedure Calls (RPC)

Sdílet
Vložit
  • čas přidán 9. 09. 2024
  • Operating System: Remote Procedure Calls (RPC)
    Topics discussed:
    This lecture explains about Remote Procedure Calls and how they are executed.
    Follow Neso Academy on Instagram: @nesoacademy
    Contribute: www.nesoacademy...
    Memberships: bit.ly/2U7YSPI
    Books: www.nesoacademy...
    Website ► www.nesoacademy...
    Forum ► forum.nesoacade...
    Facebook ► goo.gl/Nt0PmB
    Twitter ► / nesoacademy
    Music:
    Axol x Alex Skrindo - You [NCS Release]
    #OperatingSystemByNeso #os #OperatingSystem #RemoteProcedureCalls

Komentáře • 80

  • @Mehraj_IITKGP
    @Mehraj_IITKGP Před rokem +61

    Here is what I learned from the video:
    RPC stands for Remote Procedure Call.
    - It is a communication protocol that allows a program running on one computer to execute code on a different computer over a network.
    - It is often used in distributed systems where different components of the system are running on other computers
    - For example, in a web application, the server might use RPC to communicate with a database server to retrieve data or to execute complex queries.
    - RPC abstracts away many of the low-level details of network communication, making it easier for developers to build distributed systems.
    - A client makes a remote procedure call to a server (RPC daemon), specifying the name (identifier) of a function to execute and any parameters that the function requires.
    - The server receives the request, executes the specified function, and sends the result back to the client.
    - The client can then continue executing its own code, using the result returned by the server.
    • STUB:
    - A stub is a piece of code that acts as a proxy (representative) for a remote procedure on the client side.
    - The stub serves as an interface between the client program and the RPC system.
    - It provides a way for the client program to make remote procedure calls to the server as if the procedure was a local function call.
    - The stub is responsible for marshaling (assembling and arranging in order) the input parameters of the procedure, making the remote procedure call over the network to the RPC server, and then unmarshalling the results returned by the server.
    • DAEMON*:
    - An RPC daemon (or RPC server) is a program that runs in the background on a server and receives incoming requests for remote procedure calls from clients.
    - The daemon is responsible for managing the communication between clients and the server, and for executing the requested procedures on the server.
    * The MIT programmers thought demon would be an appropriate name for a background process that worked tirelessly to perform system chores. But instead of using the term demon, they used daemon, which is an older form of the word.

    • @minhhoangcong9155
      @minhhoangcong9155 Před rokem +1

      Thank you

    • @safiturk313
      @safiturk313 Před rokem +5

      These notes were much more useful than listening to the lecture, dude.

    • @Viggen66
      @Viggen66 Před 8 měsíci +1

      Excellent summary of this class :)

    • @rar000000000
      @rar000000000 Před měsícem

      Great Summary

    • @DrJoySmithMaxwell
      @DrJoySmithMaxwell Před měsícem

      Thanks much for the summary. Far superior to the actual lecture, which was full of redundancy & irregular English.

  • @samuelkhongthaw9405
    @samuelkhongthaw9405 Před rokem +17

    RPC is a protocol that allows a program to request a service from a program in a different computer in a network. It is based on the message passing system as the processes are on separate computers. The message is composed of a function identifier and the corresponding parameters. This message is received by a RPC daemon listening on a specific port of the receiving computer. The result of the function call is passed back as a separate message to the requesting process.

  • @dannymasri2910
    @dannymasri2910 Před 4 lety +11

    Good job...was not expecting this to be this well-explained!

  • @melasonos6132
    @melasonos6132 Před rokem +1

    Your videos are the best.

  • @hoangminhchau2187
    @hoangminhchau2187 Před rokem +2

    RPC is for communication between processes that reside in different systems within a network. It abstract away the network details.
    The client and server have an RPC daemon listening to each other port.
    The client request to the server via a stub residing in the client side. It requests the server to do a service, in a form of a function. The server then sends back the result to the client.
    The message is more complicated than packets of data.
    The message contain the function identifier and the parameter of that function.
    The parameters are marshaled to be transmitted over the network.
    Messages are sent from the client stub to server stub by message passing.
    RPC stands for remote procedure call. It abstracts away network details, so that make it easier for developers to work with. It is used for distributed systems. For example, a server want to request to the database server to get or modify data.
    Stub acts as an interface between the client and the RPC system, so that the client can communicate with the server as is locally.
    Stub is responsibile for parameter marshaling (assemble and arrange parameters) for client and unmarshaling for the server.
    RPC daemon or RPC server is a program running in the background on the server. It receives incomming requests for RPC from the client and execute the request.

  • @eyambevictory
    @eyambevictory Před rokem +1

    Perfect explanation

  • @spyrex3988
    @spyrex3988 Před 4 lety +11

    Bro this complicated stuff is explained so well. My professor couldn't explained for shit

  • @farahmohamed2104
    @farahmohamed2104 Před 10 měsíci +1

    well explained appreciated

  • @dinushachathuranga7657
    @dinushachathuranga7657 Před 11 měsíci +1

    Thanks a lot . This is an amazing explanation♥♥

  • @youngchan9105
    @youngchan9105 Před 3 lety +3

    Many thanks. This video is really helpful

  • @Van_Verder
    @Van_Verder Před rokem +1

    Incredibly helpful, Thanks so Much!🙏

  • @michellephoebe
    @michellephoebe Před 2 lety +2

    Thank you so much
    was looking for a comprehnsive explanation and this was it!

  • @FloodPower
    @FloodPower Před 2 lety +1

    incredible video, much thanks

  • @narayanadhurti1603
    @narayanadhurti1603 Před 2 lety +1

    Simple and so clear great explanation.

  • @amanchaudhary8817
    @amanchaudhary8817 Před 2 lety +1

    Thank you 🙏🏼

  • @markkats5419
    @markkats5419 Před 2 lety +1

    thanks for the clear explanation :)

  • @shashwatisingh6381
    @shashwatisingh6381 Před 3 lety +1

    Thanks alot for the video.

  • @subee128
    @subee128 Před 7 měsíci +1

    Thank you so much

  • @sripriyansvbsbtskanchibhat9152

    awesomeeeeeeeeeeeeeeeeeee explanation.....thank you very much neso academy

  • @jeevapriya4853
    @jeevapriya4853 Před 4 lety +7

    As im from biology background ....so i felt very difficult to understand programing nd how the computer works i side.....bt u made my path easy sir ......tq u sm ....feeling so happy 😊😊make more videos sir ....

  • @nikky30100
    @nikky30100 Před 3 lety +50

    It would be more interesting to watch if you use more animation and less text. We've got books. All theory is there but we want explanation with simple animation so that we don't have to read all those big paragraphs

    • @shilashm5691
      @shilashm5691 Před 2 lety

      Yes😪

    • @digiliferandhawa4190
      @digiliferandhawa4190 Před rokem

      Hi

    • @bakeery
      @bakeery Před rokem

      You are right

    • @herp100
      @herp100 Před rokem +7

      yooo, this guy basically spent a bunch of time to put this together for free and you complaining? Go and create your own visual if you are not able to understand concepts like this just by text. 😂😂😂

    • @techbot2366
      @techbot2366 Před 8 měsíci

      Totally agree

  • @mohamedbarrous1152
    @mohamedbarrous1152 Před 3 lety +4

    Man!! your explanation is awesome. Keep it up

  • @reborn4612
    @reborn4612 Před 2 lety +1

    Thanks teacher :D

  • @enricosaccheggiani3192
    @enricosaccheggiani3192 Před 5 lety +4

    very well explained very compliments !!!!!!!!!!I tried so many times to find something that explains me so well but i didn't find it .
    Thanks so much

  • @xellworth7715
    @xellworth7715 Před 3 lety +1

    Impressive explanation, thanks a lot and greetings from argentina!

  • @zakariael9587
    @zakariael9587 Před 2 lety +1

    Great video, great explanation !!!

  • @brent7781
    @brent7781 Před 4 lety +1

    Very helpful. Thank you.

  • @quratraja7391
    @quratraja7391 Před 4 lety +4

    So, RPC are remote procedural calls. RCS is used for processes to communicate when they're residing in different systems. Procedures are involved. Stubs are allocated to processed at each end.

  • @superman6998
    @superman6998 Před 3 lety +1

    Thank you so much for great lecture.

  • @amargandhi1137
    @amargandhi1137 Před 5 lety +2

    Great working sir
    Please upload videos on posix multithreading

  • @UshaDevi-pc5gh
    @UshaDevi-pc5gh Před 5 lety +4

    Thank you for the info...

  • @dhanushsivajaya1356
    @dhanushsivajaya1356 Před 3 lety +1

    Thankyou sir

  • @oshadhaedirisinghe1455
    @oshadhaedirisinghe1455 Před 5 měsíci

    Thank you

  • @HuyTran-wv3tz
    @HuyTran-wv3tz Před 6 měsíci +1

    I love how he keeps repeating the statements, these lectures are not one of types of video you just take a peek on, you actually learn from it and shove it deep into your brain

  • @MasterSergius
    @MasterSergius Před 2 lety

    Thank you, sir. I've been searching a lot for something like this.

  • @shivamkhandelwal7261
    @shivamkhandelwal7261 Před 3 lety +1

    A good video for Intro to RPC, the intuition is strong, however, just a little repetitive (which helps to retain, though)

  • @SaileeShingare
    @SaileeShingare Před 2 lety

    You explain so well. Thank you so much

  • @startrek3779
    @startrek3779 Před 2 lety

    Excellent explanation! Thank you very much!

  • @ayushiyadav1
    @ayushiyadav1 Před 3 měsíci

    thnx

  • @user-do1tu3oy3s
    @user-do1tu3oy3s Před 4 lety +7

    Great lecture though a pic showing rpc would have been more helpful

  • @jeevapriya4853
    @jeevapriya4853 Před 4 lety +1

    Make videos on compiler design ,machine learning artificial inteñligence ,cloud computing ....nd abt more techies tutorial ....so that it will be very helpful for students like me ....i hope u teachers make best vídeos....

  • @rabiulsikder4569
    @rabiulsikder4569 Před 4 lety +1

    Sir, please make video on Computer Architecture.

  • @bouazizabdelkader6994
    @bouazizabdelkader6994 Před 3 lety

    شكرا جزيلا

  • @liotam8400
    @liotam8400 Před 6 měsíci

    Here is a summary of the video:
    Remote Procedure Calls (RPC) is a protocol that allows a program to request a service from a program located on another computer on a network without having to understand the network's details. In simpler terms, RPC enables communication between processes residing in different systems connected over a network.
    Here are the key differences between RPC and IPC:
    Communication scheme: RPC uses message-based communication, whereas IPC can use either shared memory or message passing.
    Messages: RPC messages are well-structured and contain an identifier of the function to execute and the parameters to pass to that function, while IPC messages are just packets of data.
    Stubs: RPC uses stubs on both the client and server sides to hide the details of communication from the processes. IPC does not use stubs.
    Here's how RPC works:
    Client invokes a remote procedure: The client process calls a local stub, passing it the parameters for the remote procedure.
    Stub marshals parameters: The stub marshals the parameters into a form that can be transmitted over the network.
    Stub transmits message to server: The stub transmits a message to the server using message passing.
    Server stub receives message: A similar stub on the server side receives the message and unmarshals the parameters.
    Server stub invokes procedure: The server stub invokes the remote procedure on the server, passing it the unmarshaled parameters.
    Procedure executes: The remote procedure executes on the server.
    Server stub marshals return values: If necessary, the server stub marshals the return values into a form that can be transmitted over the network.
    Server stub transmits message to client: The server stub transmits a message to the client using message passing.
    Client stub receives message: The client stub receives the message and unmarshals the return values.
    Client stub returns results: The client stub returns the results to the client process.

  • @ramahruday6219
    @ramahruday6219 Před 3 lety

    Thank you..😇

  • @HimanshuGupta-eb6vp
    @HimanshuGupta-eb6vp Před 4 lety +2

    But we use Message passing system for communicating between 2 procesess on different devices connected to network?

    • @alrashidtowmir1099
      @alrashidtowmir1099 Před 3 lety

      Yeah brother, RPC is itself a kind of message passing system. But the difference between the regular Message-passing and RPC is that, As RPC has to perform on two different systems, it needs to be processed in a way that the message passing can happen over the network. If both the processes resided in the same system, we can just send a message from the sender process to the kernel and then the receiver process gets that message through the kernel. But in RPC, the function related to the process resides in a different system, so certain parameter passing and processing of the parameters is necessary.

  • @user-me1ry6lg6d
    @user-me1ry6lg6d Před 9 měsíci

    could you bring out the difference between HTTP ans RPC ?

  • @JusdevTMG
    @JusdevTMG Před 5 lety

    Thanks

  • @avinashkr5980
    @avinashkr5980 Před 5 lety

    Nice

  • @shivamuttam9868
    @shivamuttam9868 Před 5 lety +1

    Hello sir
    I haive doubt
    What will be the output
    printf("%d","");
    Output is 173 but how
    This question was asked in my bca exam
    Plz help me sir

  • @saitejan4905
    @saitejan4905 Před 5 lety +1

    Yes NYC

  • @abhinayshrivastav8739
    @abhinayshrivastav8739 Před 5 lety +1

    Sir please upload the issues/limitations of RPC asap.

  • @mireflections2306
    @mireflections2306 Před 5 lety +2

    Your description should start with a link or put one of those clickable links in the video to the referenced video in the beginning. A tip for a tip :-). Another tip is to not pin your own comment to the top of the comments section. That section is for comments of your viewers.
    Wow you have a lot of videos! Thank you for all of them! I would give you $5/month if I had that kind of time and money to just give away and watch all your videos. But still, Thank YOU for putting them up. I don't understand what "Join" is or how it works. But if it was a one-time donation, tip, gift, or something like that I would definitely give you more than just $5.

    • @UshaDevi-pc5gh
      @UshaDevi-pc5gh Před 5 lety

      Every youtuber pins his or her cmnt giving info about this video or other more detail about it. I don't think u have any idea how to run a youtube channel..useless

    • @UshaDevi-pc5gh
      @UshaDevi-pc5gh Před 5 lety +1

      If you don't have this much time..how did you get this much time to write review and advices...llllooollllzzzz...double standard people

  • @jiwan88
    @jiwan88 Před 5 lety

    popular question !!!

  • @priyamvadasingh308
    @priyamvadasingh308 Před 4 lety

    What is time to do null RPC?

  • @Udaykumar-ed6qj
    @Udaykumar-ed6qj Před 5 lety

    Sir why your not uploading network theory

    • @pennyclearwaters5824
      @pennyclearwaters5824 Před 5 lety

      Give him a chance to make the video. Don't demand free content. Ask for it.

  • @kalpagarwal8291
    @kalpagarwal8291 Před 5 lety

    need file systems

  • @rabiulsikder4569
    @rabiulsikder4569 Před 4 lety

    Is the operating System course that easy? I am not a computer science student. Please someone answer.

  • @sharps8726
    @sharps8726 Před 4 lety

    :)

  • @charuagarwal2944
    @charuagarwal2944 Před 7 měsíci

    You have just copied the book as it is.

  • @peasant12345
    @peasant12345 Před rokem

    too wordy

  • @gdhbgsgsuhfg9048
    @gdhbgsgsuhfg9048 Před 4 lety

    Omg

  • @weihyac
    @weihyac Před rokem

    thank you