What is a Distributed System?
Put quite simply, a distributed system is a number of pieces of hardware and software that communicate with each other, but use different processors. They can communicate over a network such as Local Area Network (LAN), or the Internet (WAN). Distributed systems are subject to a number of problems, however, such as variable latency – which is when 2 identical messages sent between 2 identical computers may now take the same amount of time to arrive. This can cause unpredictable failures, such as messages not being sent.
Definition of a Distributed System
The definition of a distributed system is one which has independent and self-sufficient – often heterogeneous or autonomous – spatially-separated components which must us a common interconnect to exchange information in order to coordinate information, and to make the whole system appear to its user as a single coherent system.
To further this more a distributed system is the result of collaboration between separate, independent processes. In order for separate, independent processes to collaborate, then they must interact.
If this interaction is by means of message passing then each component must be aware of the mechanisms for interprocess communication (IPC), as well as the protocols for using these mechanisms.
This definition is described over a number of posts under the category “Distributed Systems”: http://badgerati.wordpress.com/category/revision/distributed-systems/