A distributed system is a collection of independent computers that appear to the users as a single coherent system.
These computers (called nodes) communicate and coordinate by passing messages.
The goal is to share resources, improve performance, reliability, and scalability.