Inter-Process Communication (IPC)

Definition - What does Inter-Process Communication (IPC) mean?

Inter-Process communication (IPC) is a mechanism whereby many computer processes communicate with each other to exchange data as per instructions. IPC uses different techniques to communicate processes with the processes running on the same local computer or on remote computers in a network. For this purpose, IPC uses various methods to perform jobs such as synchronization and shared-memory.

An example of a microprocessor can illustrate IPC: A microprocessor executes more than one process at a time, from a local or remote computer. Among these, one process might be very common and easy to execute while another may consist of complex instructions.

Techopedia explains Inter-Process Communication (IPC)

In computing, the Windows OS uses IPC as a management technique where different processes are allowed to communicate with each other, either before or during the execution process. IPC is categorized into two basic degrees:

1. Server: A process (or application) responding to a client request
2. Client: A process (or application) sending or requesting from other processes (or applications)

For example, a Microsoft Access Database is trying to import data from Microsoft Excel spreadsheet. In this case, Microsoft Access acts as the client and Microsoft Excel acts as the server. Excel responds to the Microsoft Access process by manipulating the requested query.

After deciding which application is suitable for an IPC, the second requirement is to check which application would be compatible with which IPC mechanism. The following should be considered:

  1. Is the application able to communicate with other applications running remotely on other computers?
  2. Is the application able to communicate with locally running applications?
  3. Is the application able to interact with other applications running on other computers with different OSs?
  4. Can an application communicate with other applications in a general and simple way?

The following are major IPC methods considered during inter-process communication:

1. IPC Window-Socket
2. Component-Object Model (COM)
3. IPC Data-Copy
4. Dynamic Data Exchange (DDE)

Popular White Papers

Techopedia Newsletter Sign-Up

Get Techopedia delivered to your inbox!