Hay varias razones para permitir la cooperación entre procesos en los sistemas operativos, incluyendo compartir información entre usuarios y acelerar cálculos mediante la división de tareas en subtareas paralelas que se ejecutan simultáneamente en múltiples elementos de procesamiento como CPUs o canales E/S.