Q17Distributed Systems
Question
4 marks
What are the primary design issues of a Distributed OS?
Answer
An exhaustive breakdown of the Primary Design Issues in a Distributed OS. Details the catastrophic architectural challenges of Transparency, Scalability, Fault Tolerance, and mathematical Clock Synchronization.
Building a Distributed OS (like Plan 9 or Amoeba) is exponentially more difficult than a single-node OS (like Linux). The engineers must mathematically solve catastrophic problems related to network physics, latency, and hardware failure.
- 1. Transparency (The Grand Illusion): The OS must violently mask the distributed nature of the cluster. The user must be able to compile code without mathematically knowing that the OS split the compilation across 50 different physical CPUs.
- 2. Scalability Bottlenecks: Centralized algorithms fail catastrophically at scale. If a system relies on a single master node for naming or security, adding 10,000 new nodes will mathematically melt the master. The architecture must utilize decentralized, distributed hash tables (DHTs) or hierarchical trees to ensure or scaling.
- 3. Fault Tolerance and Reliability: The OS must assume the hardware is garbage. It must implement mathematical consensus algorithms (Paxos/Raft) and aggressive data replication so that if a rack loses power, the OS instantly redirects pointers to redundant nodes with zero user disruption.
- 4. Distributed Synchronization (Lack of Global Clock): Because there is no single physical clock, the OS cannot use standard timestamps to lock files. It must violently enforce Logical Clocks or complex Distributed Mutual Exclusion algorithms to prevent data corruption.
- 5. Security Architecture: In a single machine, the OS kernel trusts its own memory. In a distributed OS, messages traverse hostile physical networks. The OS must violently encrypt all IPC traffic and implement mathematical cryptographic tickets (like Kerberos) to guarantee node identity.