Memoria compartida
La forma más rápida de comunicación entre procesos: dos procesos mapean las mismas páginas físicas de memoria y leen los datos del otro sin copiar nada.
Las alternativas — pipes, sockets, colas de mensajes — pasan por el kernel y copian al menos una vez. La memoria compartida solo cuesta un mapeo; después el acceso es tan rápido como el de variables normales. El precio es que hay que sincronizar uno mismo: ninguna llamada al kernel te protege, así que hacen falta mutexes o semáforos dentro de la propia región compartida, y las condiciones de carrera pasan a ser problema tuyo. En sistemas POSIX se usa shm_open seguido de mmap; en Linux también /dev/shm como archivos normales. Lo usan bases de datos (PostgreSQL guarda aquí todo su buffer pool), pilas gráficas y cachés compartidas. La variante más antigua de System V con shmget sigue viva pero con una gestión del ciclo de vida más torpe.