Understanding Linux Message Queues

Introduction Message queues are message-passing mechanisms that facilitate the implementation of Inter-Process Communication in modern Operating Systems. As message queues are local-only, messages cannot be exchanged over a network, only between processes running under the same address space. Linux, being POSIX-compliant, implements two variants of message queues — System V and POSIX. System V Message Queue API is older, dating back to the original System V Unix in 1983. POSIX, on the other hand, is a more modern reinterpretation of the Message Queue, and supports features such as message notification, out-of-the-box thread-safety, and has a more Linux/BSD-compliant file-descriptor-based queue identifier. However, POSIX queues are often unavailable in multiple systems, while System V is almost guaranteed to be available.
Read more