Un sistema distribuido es una colección de computadoras independientes que funcionan juntas como una sola computadora. Los sistemas distribuidos permiten compartir recursos entre computadoras conectadas en red, son escalables, tolerantes a fallos y permiten la concurrencia de procesos. Un ejemplo simple es un sistema multiprocesador donde los procesos de software se distribuyen entre procesadores diferentes.