Home  >  Article  >  Operation and Maintenance  >  What does rpc mean in linux

What does rpc mean in linux

WBOY
WBOYOriginal
2022-05-07 16:48:153073browse

In Linux, rpc means remote procedure call, which is the abbreviation of Remote Procedure Call. It specifically refers to an IPC method that hides the actual communication details during procedure calls; in Linux, RPC can make full use of non-shared Memory-based multi-processor environment improves system resource utilization.

What does rpc mean in linux

#The operating environment of this tutorial: linux7.3 system, Dell G3 computer.

What does rpc mean in linux

RPC: (Reomote Procedure Call) Remote Procedure Call

RPC (Remote Procedure Call) Chinese full name remote procedure Call, there is rpcbind software in Linux, which is a simple application example of rpc. It is software related to network storage NFS. If users want to find NFS storage, they must first access RPCBIND.

Specifically refers to an IPC method that hides the actual communication details when a procedure is called. The client will call a local method, and this local method is responsible for transparent inter-procedural communication with the remote server. This local method will pack the relevant parameters into a message in sequence, and then send the message to the method provided by the server. The server method will extract the serialized parameters from the message, and then execute them. Finally, the same method will be used. method to send the return value of the method to the client.

Through RPC we can make full use of non-shared memory multi-processor environments (such as multiple workstations connected through a LAN), so that your application can be easily distributed on multiple workstations. The application is like Same as running on a multi-processor computer. You can easily realize process code sharing and improve the utilization of system resources. You can also run a large number of numerical processing operations on a system with strong processing capabilities, thereby reducing the burden on the front-end machine.

Extended knowledge:

IPC: (Inter Process Communication) Cross-process communication

This The concept generally refers to any form of communication behavior between processes, and it is a term that can be used everywhere. It not only includes various forms of message passing, but can also refer to shared resources, as well as synchronization objects [mutex or other similar things, that is, ensuring safe concurrent access to shared resources (that is, preventing two or more objects from collaborating on the same resource). A data member is modified, causing the data to be destroyed, or a race condition occurs when colleagues read/write data and cause an error to occur)]].

LPC(Local Procedure Call)

LPC is the abbreviation of "Local Procedure Call". The so-called "local procedure call" is relative to "remote procedure call", that is, RPC. RPC is broad. RPC can occur between different hosts or on the same host. If it occurs on the same host, it is LPC. Therefore, there is no such thing as LPC in the Unix context. Even if it occurs on the same host, it is called RPC.

Historically, RPC is a standard designed and proposed by the "Open Software Foundation (OSF)" to implement the "Unix Distributed Computing Environment (Unix DCE)". In fact, Microsoft's DCOM technology is based on RPC. Win2000's RPC can use TCP/IP, SPX, NetBIOS, named pipes, and "local" as the underlying communication method. This "local" is LPC.

On the other hand, Windows is an operating system with many microkernel system features (although its kernel is not a microkernel). There are many "system-level" service processes in the system, such as everyone is already familiar with csrss, the "Local Security Authentication Service" process LSASS that manages user logins, etc. User processes and system tool software provided by Microsoft often need to call services provided by these service processes, and LPC plays an important role here.

The basis of LPC is an inter-process communication mechanism called "Port", which is similar to a local (Unix domain) Socket. This Port mechanism provides inter-process communication oriented to message passing, and LPC is a high-level mechanism built on this basis to provide cross-process procedure calls. Note that the so-called "cross-process procedure call" here is different from the "cross-process operation" mentioned before. The former is a controlled service provision that has been agreed upon by both parties and follows certain procedures. The callee is independent in terms of what services are provided to the outside world, that is, which function calls are provided, while the latter can be done unknowingly. Being used and manipulated. The former is benign, while the latter can be malignant.

Related recommendations: "Linux Video Tutorial"

The above is the detailed content of What does rpc mean in linux. For more information, please follow other related articles on the PHP Chinese website!

Statement:
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn