Cooperating Processes
Processes can be independent or they can be cooperating to accomplish a single job.
Cooperating processes can be used:
- to gain speedup by overlapping activities or performing work in parallel
- to better structure an application as a small set of cooperating processes
- to share information between jobs
Sometimes processes are structured as a pipeline where each produces work for the next stage that consumes it, and so on.