Allowing two processes that are executing together to communicate (share memory, send messages )with eachother. Used for:

  • Information sharing
  • Computation speedup. Split a task into subtasks
  • Modularity. Build the system into modules
  • Convenience. User can delete a task without larger effect

Methods