News for hackers. Stuff that matters.
Re:Your computer is a distributed system by StillBored on Wednesday March 30, 2022 @01:10PM (#30857991)
There have been machines tolerant to CPU and Mem failures, and to a certain extent this sorta works on some of the higher end machines that support ram/cpu hotplug. (historically see hp/tandem/nonstop, sunos/imp, etc).

The problem is linux's monolithic model, doesn't work well for kernel checkpoint/restore despite it actually supporting hotplug cpu/ram it they have to be gracefully removed.

So, this is less about the machine being distributed, and more about the fact that linux is the opposite of a microkernel/etc that can isolate and restart its subsystems in the face of failure. Its also sorta funny that while these types of operations tend to need to be designed into the system, the last major OS's designed this way were done in the 1980's.

Re:Your computer is a distributed system by dwohnitmok on Wednesday March 30, 2022 @01:54PM (#30858533)
I know of no OSes that are resilient to CPU cores producing wrong results (or incorrect mem results: I consider ECC a lower level concern that is not part of the OS), whereas a lot of distributed consensus algorithms have this built into their requirements. EDIT: I have heard through the grapevine that something like this might be done for aerospace, but I have no personal experience with that.

I agree with parent. The major reason why programming on a single computer is easier than a distributed system is that we assume total resilience of various components that we cannot for a distributed system.

From the article:

> This offers hope that it is possible to some day abstract away the distributed nature of larger-scale systems.

To do this is not a question of software abstractions, but hardware resilience. If we have a network which we can reasonably assume to have 100% uptime and absolutely no corruption between all its components then we can program distributed systems as single computers.

Re:Your computer is a distributed system by catern on Wednesday March 30, 2022 @02:04PM (#30858657)
Most distributed consensus algorithms, or distributed systems in general, are not resilient to nodes producing arbitrary wrong results. That's the realm of systems like Bitcoin, which achieve such resilience by paying big performance costs.

So it shouldn't be surprising that computers have the same lack of resilience.

Re:Your computer is a distributed system by anonymousDan on Wednesday March 30, 2022 @06:47PM (#30861795)
Sorry what? That is exactly the purpose of Byzantine fault tolerant consensus algorithms, which have been around for many years.
Re:Your computer is a distributed system by catern on Thursday March 31, 2022 @08:13AM (#30866299)
Sure, that doesn't contradict what I said. They have been around for years, and they are very expensive and almost all systems do not use them.
Re:Your computer is a distributed system by anonymousDan on Thursday March 31, 2022 @06:09PM (#30872765)
They are a lot more efficient than bitcoin. But agreed, not cheap.
Re:Your computer is a distributed system by StillBored on Wednesday March 30, 2022 @02:07PM (#30858701)
The tandems I listed above, originally used lock stepped processors, along with stratus/etc.

edit: Googling yields few results that aren't actual books, Try this

https://books.google.com/books?id=wBuy0oLXEuQC&pg=PA218&lpg=...

Re:Your computer is a distributed system by dwohnitmok on Wednesday March 30, 2022 @05:46PM (#30861213)
Ah well there you go. Had no idea they used lock stepping!
Re:Your computer is a distributed system by gnufx on Wednesday March 30, 2022 @02:40PM (#30859122)
It doesn't count as resilient in the mainframe sense, but in an effort to encourage system management, I ran the Node Health Check system on our "commodity" HPC cluster and found multiple failed DIMMs and a failed socket no-one had noticed. (I'd had enough alerts from that on a cluster I managed.)