variants of Unix these days support a set of inter-process communications
methods, which are derived from Unix System V release 4, originating from
AT&T Bell laboratories. These mechanisms include message queues (used for
sending and receiving messages), shared memory (used to allow several processes
share data in memory) and semaphores (used to co-ordinate access by several
processes, to other resources). Each of these resource types is handled by the
system, and unlike anonymous pipes, may out-live the process that created it.
These resources also have some security support by the system, that allows one
to specify which processes may access a given message queue, for example.
Few Words About Sockets ipc mechanism
Various sockets-based mechanisms may be used to communicate amongst processes. The underlying communications protocol may be TCP, UDP, IP, or any other protocol from the TCP/IP protocols family. There is also a socket of type 'Unix-domain', which uses some protocol internal to the operating system to communicate between processes all residing on a single machine. Unix-domain sockets are similar to named pipes in that the communicating processes use a file in the system to connect to establish a connection. For more information about programming with sockets, please refer to our tutorial aboutinternetworking with Unix sockets.