13.4. Choosing an Inter-Process Communication (IPC) Mechanism
The use of different types of inter-process communication can have a significant impact on performance. Every application model naturally lends itself to using a certain IPC mechanism. For example:
A producer/consumer application model with coarse-level synchronization would probably use pipes and messages.
A database disk cache would be implemented with shared memory.
An application requiring synchronization could use semaphores or shared memory (using spinlocks).
When considering which IPC mechanism is right for your application, recall that copying data on a RISC-architecture system consumes a lot of CPU, and may cause page faults and cache and TLB misses. Also remember that system ...