3 ms·
I think there’s a big difference which is that your computer is allowed to crash when one component breaks whereas a distributed system is typically more fault
by sesuximo 5y ago
I think there’s a big difference which is that your computer is allowed to crash when one component breaks whereas a distributed system is typically more fault tolerant.
- uvdn7 5y agoThis is actually what makes handling the distributed system in a single computer easier – everything crashing together makes it an easier problem. E.g. you have multiple CPU cachelines, caching different values of a main memory location. And there are different cache coherence protocols to keep them sane. But cache coherence protocols never need to worry about the failure mode when one cacheline is temporarily unavailable but the others are. So yes, there's a distributed system in each multi-core computer, but it's a distributed system with an easier failure mode. If you like more analogies between CPU caches and distributed systems, https://blog.the-pans.com/cpp-memory-model-as-a-distributed-system/ https://blog.the-pans.com/cpp-memory-model-as-a-distributed-... :p
- harperlee 5y agoIdeally a peripheral crashing should not crash the whole system.
- catern 5y agoAnd indeed it does not: Modern operating systems like Linux can perfectly well deal with all kinds of devices crashing or disappearing at runtime. Just like in larger distributed systems.
- zerohp 5y agoThat's not entirely true. There's usually some level of fault recovery built in but it doesn't extend to the level of allowing any component to fail at any time.