This document discusses inter-process communication (IPC) between cooperating processes. It describes two main models of IPC - shared memory and message passing. In shared memory, processes communicate by reading and writing shared memory regions in their address spaces. In message passing, processes communicate by sending and receiving messages without sharing memory. It provides an example of the producer-consumer problem to illustrate shared memory IPC, where a producer puts items in a shared buffer for a consumer to retrieve.