← New search

Other meanings of Distributed operating system

OPERATING SYSTEMS

Distributed operating system

A distributed operating system is an operating system that manages a group of independent computers as a single system. It coordinates processors, memory, storage, communication, and processes across networked machines while attempting to hide their physical separation from users and applications.

1960s–1990s
formative research period
Distributed operating systems emerged from early network and multiprocessor research.
Single-system image
central design goal
Users interact with shared services rather than managing every machine separately.
Process migration
characteristic capability
A running process may be moved between computers to balance load or follow data.
1

Definition and operating model

A distributed operating system presents multiple networked computers as one coherent computing environment. Unlike a conventional operating system, which normally controls one computer, it maintains system-wide mechanisms for naming, communication, scheduling, resource allocation, and failure handling.1 The machines remain physically independent, with their own processors and memory, but users may access remote files, devices, and processes through interfaces resembling local ones.

The central idea is a single-system image: location should be hidden when transparency is useful, while the system still exploits parallel hardware. Interprocess communication, remote procedure calls, distributed shared memory, and network file systems provide the basic abstractions. This model differs from a network operating system, where each host is usually administered and experienced as a distinct computer, and from a cluster manager, which may coordinate jobs without replacing the host operating systems.

2

Architecture and core mechanisms

Distributed operating systems combine local kernels with system-wide services that coordinate work across machines. A naming service maps logical objects to locations; a communication layer moves messages or invokes operations remotely; and distributed schedulers place processes according to processor load, data locality, or policy.

Several mechanisms define the architecture. Process migration can move computation to an underused processor or closer to its files. Distributed file services provide location-independent names and may replicate data for availability. Synchronization primitives, leases, clocks, and consensus-related protocols help coordinate concurrent actions, although no distributed clock is perfectly shared. Systems must also distinguish communication failure from machine failure, making retries, replication, checkpointing, and recovery central design concerns.2

3

History and representative systems

Research distributed operating systems became prominent as computer networks and inexpensive processors made collections of machines practical. Early projects investigated whether an operating system could offer transparent access to remote resources rather than treating the network as an external utility.

LOCUS explored transparent distributed file access and replication. The Amoeba project, developed at Vrije Universiteit Amsterdam and elsewhere, pursued a pool of processors managed through a uniform microkernel-based environment, with capabilities used to name and protect objects. The University of California, Berkeley’s Sprite examined network-wide process migration and distributed file caching. Plan 9 from Bell Labs extended the idea that resources could be represented through a uniform file interface, including resources on remote machines, though it is more accurately described as a distributed system environment than a fully transparent distributed operating system.3

4

Lesser-known aspects

The hardest problem is not sending messages but preserving useful transparency when components fail independently. A local operation may be fast and predictable, whereas a remote operation can be delayed, duplicated, or interrupted; consequently, distributed operating systems often expose failure, consistency, or performance trade-offs even when their interfaces appear uniform.

Some systems separated policy from mechanism through microkernels, moving file servers, process servers, and device services into user-level components. Capability-based protection, used notably in Amoeba, identified access rights with unforgeable tokens rather than relying solely on global user identities. Other projects used distributed shared memory to make remote memory resemble a common address space, but coherence traffic and false sharing could erase the advantages of distribution. The broad model also influenced later middleware, distributed file systems, virtual machines, and cluster operating environments, even though general-purpose commercial systems generally retained separate host kernels.4

Glossary

Single-system image
An abstraction in which several computers appear to users and programs as one integrated computing system.
Process migration
Moving a process, together with relevant execution state, from one computer to another.
Distributed shared memory
A mechanism that presents physically separate memories through a shared-memory programming abstraction.
Capability
A protected token or reference that conveys authority to access a particular object or service.
Transparency
The degree to which location, replication, migration, or other distributed details are hidden from users and applications.

The term is used here in its operating-systems sense: an operating system that manages a group of independent computers as a single system. Networked applications, distributed databases, and ordinary cluster software are related but are not themselves necessarily distributed operating systems.