Message queues, mailboxes, and pipes provide both synchronization between a producer and a consumer (sender and receiver) as well as temporary storage of data where necessary. Workqueues represent storage of requests for work to be done.
Underlying these mechanisms are data structures, algorithms, and APIs (Application Programming Interfaces).
In the case of a message queue, the maximum size of a message and the maximum number of messages the circular buffer ...