Skip to main content

Distribution of hardware, data, control

Short answer

A distributed system is independent computers connected by a network with middleware, appearing as one system. Hardware is spread across networked sites; data is partitioned or replicated; control is cooperative through message passing, avoiding a single point of failure.

How do you define Distributed System? Explain with the model how hardware, data and controls are distributed in the distributed system environment.

Definition

A distributed system is a collection of independent computers, connected by a network and running distribution middleware, that appears to its users as a single coherent system. Its components communicate and coordinate their actions only by passing messages (Tanenbaum; Coulouris).

Distribution of hardware, data and control

A distributed system distributes three things over its nodes.

   Site A              Site B              Site C
 +---------+         +---------+         +---------+
 | CPU/mem |         | CPU/mem |         | CPU/mem |
 | disk    |         | disk    |         | disk    |
 | data D1 |         | data D2 |         | D1 copy |
 | control |         | control |         | control |
 +----+----+         +----+----+         +----+----+
      |                   |                   |
 =====+===================+===================+==== network
  1. Distribution of hardware: processors, memory, disks and I/O devices are located at separate sites, linked by a network. Each node is an independent computer with private memory and no shared clock. Hardware can be added or removed easily, and devices such as printers are shared.
  2. Distribution of data: data is spread over nodes by partitioning (fragmentation), where different parts are kept at different sites, and replication, where copies are kept at several sites to give speed and availability. A distributed file system or database gives the user a single view, and consistency protocols keep copies in step.
  3. Distribution of control: there is no single controller. Decisions (scheduling, resource allocation, mutual exclusion, commit) are made co-operatively by many nodes using message passing. This avoids a single point of failure and bottleneck, but needs agreement algorithms and synchronisation.

Together, the distribution is kept hidden by the middleware so that the user sees one system.

✓ Answer checked by Claude Opus 5.5 (high effort)

All Distributed System chapter 1 questions →