Message Queues are a standard form of IPC that resembles named pipes but allows for each block of data sent to be
associated with a type. The receiving process can then choose to
read the first message in the queue or the first message of a
specific type. This provides a simple mechanism for
sorting messages depending on priority before receiving them.