Los procesos independientes no pueden afectar o ser afectados por la ejecución de otros procesos.
- Los procesos cooperativos pueden afectar o ser afectados por la ejecución de otros procesos.
- Ventajas de cooperación entre procesos
- Se comparte información
- Agiliza los cálculos
- Modularidad
- Conveniencia
PROBLEMA DE CONSUMIDORES Y PRODUCTORES
El problema de productores y consumidores es un paradigma de los procesos cooperativos, los productores producen información que es consumida por los procesos consumidores
- Buffer ilimitado no establece un límite práctico para el tamaño del buffer

El buffer limitado asume que hay un tamaño fijo de buffer

BUFFER LIMITADO – SOLUCIÓN CON MEMORIA COMPARTIDA
Datos compartidos
N tamaño del buffer;
item = … dato a producir/consumir;
buffer = arreglo [0…n-1] de item;
entra, sale : 0…n-1;
Proceso productor
While (true){
/* produzca un item */
while (((entra=(entra +1)%n)==sale)
/* no haga nada – el buffer está lleno */
buffer [entra] = item;
entra = (entra+1)%n;
}