Limitation of Distributed System
Distributed System is a collection of self-governing computer systems efficient of transmission and cooperation among each other by the means of interconnections between their hardware and software. It is a collection of loosely coupled processor that appears to its users a single systematic system. Distributed systems has various limitations such as in distributed system there is not any presence of a global state. This differentiates distributed system computing from databases in which a steady global state is maintained.
Distributed system limitations has the impact on both design and implementation of distributed systems. There are mainly two limitations of the distributed system which are as following:
Attention reader! Don’t stop learning now. Get hold of all the important CS Theory concepts for SDE interviews with the CS Theory Course at a student-friendly price and become industry ready.
1. Absence of a Global Clock 2. Absence of Shared Memory
The above two limitations of the distributed system are explained as following below:
1. Absence of a Global Clock:
In a distributed system there are a lot of systems and each system has its own clock. Each clock on each system is running at a different rate or granularity leading to them asynchronous. In starting the clocks are regulated to keep them consistent, but only after one local clock cycle they are out of the synchronization and no clock has the exact time.
Time is known for a certain precision because it is used for the following in distributed system:
- Temporal ordering of events
- Collecting up-to-date information on the state of the integrated system
- Scheduling of processes
There are restrictions on the precision of time by which processes in a distributed system can synchronize their clocks due to asynchronous message passing. Every clock in distributed system is synchronize with a more reliable clock, but due to transmission and execution time lapses the clocks becomes different. Absence of global clock make more difficult the algorithm for designing and debugging of distributed system.
2. Absence of Shared Memory:
Distributed systems have not any physically shared memory, all computers in the distributed system have their own specific physical memory. As computer in the distributed system do not share the common memory, it is impossible for any one system to know the global state of the full distributed system. Process in the distributed system obtains coherent view of the system but in actual that view is partial view of the system.
As in distributed system there is an absence of a global state, it is challenging to recognize any global property of the system. The global state in distributed system is divided by many number of computers into smaller entities.