Interprocess communication is the mechanism provided by the operating system that allows processes to communicate with each other. This communication could involve a process letting another process know that some event has occurred or transferring of data from one process to another.
A diagram that illustrates interprocess communication is as follows −
The models of interprocess communication are as follows −
Shared memory is the memory that can be simultaneously accessed by multiple processes. This is done so that the processes can communicate with each other. All POSIX systems, as well as Windows operating systems use shared memory.
Memory communication is faster on the shared memory model as compared to the message passing model on the same machine.
Some of the disadvantages of shared memory model are as follows −
Multiple processes can read and write data to the message queue without being connected to each other. Messages are stored on the queue until their recipient retrieves them. Message queues are quite useful for interprocess communication and are used by most operating systems.
The message passing model is much easier to implement than the shared memory model.
The message passing model has slower communication than the shared memory model because the connection setup takes time.
A diagram that demonstrates the shared memory model and message passing model is given as follows −