Computer Software and Operating Systems (9hrs) · Computer Fundamentals & Emerging Technologies

Distributed

Watch lectures

Distributed

1. Definition

A distributed operating system (DOS) runs on a collection of independent computers (nodes) connected by a network and makes them appear to the user as one single coherent system. Each node has its own processor and local memory (there is no shared physical memory and no global clock), yet the system as a whole shares resources, balances load and survives partial failures.

Its distinguishing feature over a network OS is transparency: in a distributed OS the user does not know (or need to care) which machine holds a file or does the computation; in a network OS the user explicitly logs into a specific machine and copies files between them.

2. Goals and Advantages

  1. Resource sharing — a printer, disk, GPU or dataset attached to one node is usable from any node.
  2. Computation speed-up — one large job is split across many processors (parallel processing).
  3. Reliability and availability — if a node fails, replicas and the rest of the system continue; better fault tolerance.
  4. Scalability — capacity grows by adding nodes rather than buying one bigger machine.
  5. Communication — built-in message passing and remote services (mail, chat, shared data).
  6. Geographic distribution — users at different locations work on one logically unified system.
  7. Cost-effectiveness — many cheap machines can beat one large mainframe (Sun's "the network is the computer").

3. Forms of Transparency

Transparency What the user must not have to know
Access How to reach a resource (open a remote file like a local one)
Location Where the resource physically is
Migration That a process or file has moved
Replication That several copies exist
Concurrency That others are using the same resource — sharing is automatic
Parallelism That a computation runs on several nodes
Failure That part of the system has failed and a replica is serving the request

4. Design Challenges

  • No global clock — nodes cannot agree on a common time; ordering of events requires logical clocks (Lamport timestamps) or synchronised physical clocks (NTP).
  • No shared memory — communication is by message passing, with all the latency and unreliability that a network brings.
  • Partial failure — a node or link may die silently; the system must detect failure (timeouts, heartbeats) and recover.
  • Naming and location — a mechanism is needed to find resources whose address may change (name servers, directories).
  • Consistency and replication — keeping multiple copies of data consistent, given CAP-style trade-offs (consistency vs availability under partition).
  • Distributed mutual exclusion, deadlock and elections — classical algorithms (Ricart-Agrawala, Bully, Raft/Paxos consensus) are needed.
  • Security — authentication and encryption across an untrusted, open network.
  • Heterogeneity — nodes may run different hardware and OSs, requiring portable interfaces and standard protocols.

5. Architectures and Models

Model Description Examples
Client-server Clients request, servers provide Web, database, DNS servers
Three-tier Presentation → application → data layers separately distributed Enterprise web applications
Peer-to-peer All nodes are equal; both clients and servers BitTorrent, blockchain networks
Cluster Many machines in one location working as one system Beowulf clusters, Kubernetes node pools
Grid Federated, geographically distributed resources from many owners CERN WLCG grid
Cloud Elastic virtual resources distributed across data centres AWS, Azure, GCP

Tightly vs loosely coupled systems

Basis Tightly coupled (multiprocessor) Loosely coupled (distributed)
Memory Shared common memory Each node has its own private memory
Communication Through shared memory Through messages over a network
Clock Single common clock Independent clocks, need synchronisation
Delay Nanoseconds (bus access) Microseconds to milliseconds (network)
Failure Whole system may fail Individual nodes fail independently
Example SMP server with many cores Cluster of PCs / data centre

6. Distributed vs Network vs Centralised OS

Basis Centralised OS Network OS Distributed OS
Machines One Many, each with its own OS Many, one image to the user
Memory Shared Separate Separate
Source of transparency Not applicable Low — user knows the machine names High — user sees one system
Resource access Local Explicit remote login/copy Automatic and location independent
Example Windows on a PC Windows Server + mapped network drives Amoeba, Plan 9, Sprite, Mach, LOCUS

7. Examples and Modern Context

Classical DOS research systems: Amoeba, Mach, Sprite, LOCUS, Plan 9, Chorus. Distributed file systems and services built on the concept: NFS, AFS, HDFS, Google File System, distributed databases (Cassandra, MongoDB sharded), MapReduce/Hadoop, and container orchestration (Kubernetes) — where an application runs across many machines as if on one platform.

8. Exam Points

  • Define a distributed operating system and explain its goals/advantages — 5 marks, frequent.
  • Differentiate distributed OS, network OS and centralised OS — 5 marks, very frequent.
  • What is transparency? List any four types — 3-5 marks.
  • Explain the design issues of a distributed system (no global clock, no shared memory, partial failure, consistency) — 5-7 marks, frequent.
  • Differentiate tightly coupled and loosely coupled systems — 5 marks.
  • How is clock synchronisation and mutual exclusion handled in distributed systems? — 3-5 marks.
Official AppAndroid App

PYQDeck for Android

Solve BEU previous-year exam papers anywhere, anytime. Fast search, offline paper viewing, and step-by-step solutions designed specifically for your phone.

← All Computer Fundamentals & Emerging Technologies modules

Distributed — Computer Fundamentals & Emerging Technologies — PYQDeck