Hacker Newsnew | past | comments | ask | show | jobs | submitlogin

A friend works for an airline as a flight simulator tech. Their entire software stack, including the compiler and OS, is FAA-certified.

Then their ancient Honeywell(?) mainframes reached end-of-life they scouted for compatible hardware, of which there was none. The cost of certifying new software, plus the time involved, was astronomical. So, after consulting with the FAA, they paid a hardware company to clone the ancient mainframes in modern silicon. The FAA signed off on it, and they had all-new computers - much smaller than the originals - running the old stack.

 help



It's _very_ hard to believe some company to simply "clone the mainframe" into chip. Mind sharing any link to this effort?

Custom chips aren't as expensive as you think. About a few million dollars for the design and a hundred thousand chips, way out of reach for a hobbyist, but accessible to large enough companies. Just because it's opaque to us software people doesn't mean it's not a real industry you can buy things from.

And all that expensive engineering is still less costly AND faster (!!) than a new software certification.

Cannot refrain myself from asking why ...


Situation: Software-1 on Platform-1, both certified.

Time-evolution: P1 is deprecated, replaced by uncertified P2, but S1 remains certified.. just nowhere certified to run yet.

Solution: There's another software S2 which originally vouched for P1, itself still certified, which can still be used to certify P2.

Counterfactual?: If S1 were deprecated in favor of new S3.. there'd be no plan to certify it!

The problem: None of this actually makes any sense! But we're trying to fake due diligence. Everyone knows the hardware/platforms kinda need to be certified with respect to each other anyway, but if we did it that way it would all be even more expensive an time-consuming.


Doesn't seem crazy to me. Which one do you suppose needs more proof of correctness: a cake recipe, or the oven you bake the cake in? The recipe has to be correct or the cake won't work, but the oven just has to hold a temperature.

Ovens vary greatly. There is no consistency in how even the heat is in the space, the airflow through the space, how much and how fast the temperature varies around the set temperature, etc. These things all do affect how things bake up and often people have to tweak recipes for their specific oven.

In a case where something is safety critical the computer is super important as very subtle errors could cause catastrophic consequences. This is why you get into things like running software on 3+ computers concurrently depending on how fail-safe something has to be.


That "just" is quite the load-bearing seam ...

Particularly when the task here is "just" to measure some rod positions in a constrained 3D space ...


When Xerox established PARC, they asked the assembled scientists what computer they wanted. The majority view was a DEC PDP-10 KA10, with the BBN memory management unit that let it run Tenex (the ancestor of DEC TOPS-20). Xerox couldn't really buy a competitor's mainframe, so they built MAXC (maximum access computer), which was a complete emulation of the Tenex machines.

very apt that xerox parc was full of tenex engineers!

>MAXC (maximum access computer), which was a complete emulation of the Tenex machines.

Compuserve also had a software dependency on the PDP-10 and Decsystem 20, and when those machines were no longer available they bought a company making clones so they could continue to manufacture them for themselves. The company they bought, Microsolutions, was Mark Cuban's first startup.

making clones of mainframes (IBM's) had been a big area of intellectual property litigation, but also facing monopolization investigations, IBM had to allow them. They were referred to as "plug compatibles".


It could be an FPGA. Given enough gates, and the know-how to program them, you can make an FPGA emulate anything. Speed and efficiency could be better or worse, but if you're targeting old hardware, better is likely.

I mean...there's some precedent. The XKL TOAD ("Ten On A Desk") implements the PDP-10 instruction set, and will happily run TOPS-10/TOPS-20. LCM had one doing just that.

https://www.computerhistory.org/collections/catalog/10277383... https://www.twenex.org/?network


It's tempting to write a PDP-10 emulator for the Atari ST called TOAST.

FWIW I'm developing "tiny-titan", a stand-in for Cambridge's Titan mainframe that talks to Heinz Lemke's 1972 PIXIE program over an emulated version of Neil Wiseman's PDP-7 <=> Titan link. It doesn't emulate Titan itself, just the conversation PIXIE had with it, so the unmodified 1972 PDP-7 code dials home and uploads its drawings.

https://en.wikipedia.org/wiki/Titan_(1963_computer)

>Titan was the prototype of the Atlas 2 computer developed by Ferranti and the University of Cambridge Mathematical Laboratory in Cambridge, England. It was designed starting in 1963, and in operation from 1964 to 1973.

https://news.ycombinator.com/item?id=49407938

https://news.ycombinator.com/item?id=40617894

https://www.youtube.com/watch?v=jDrqR9XssJI

https://cucps.soc.srcf.net/titan/supplan/pd10.htm

Here is a photo of Heinz Lemke operating the light pen and 340 display on the PDP-7 (also seen in the video above):

https://www.facebook.com/groups/779220482206901/posts/629772...


XKL is still in business (https://xkl.com/)

as far as i know the control plane on their equipment is still a pdp-10 compatible


Meh, old architectures are relatively simple and you can get 95% of those via fpga softcores (some freely available, some paid) and run them on fpga. The rest can be implemented by a proper ee team.

That's interesting. That means there are fewer checks for hardware than software?

Hardware is more amenable to static analysis than running programs which may receive an arbitrary number of inputs and express an arbitrary number of possible intermediate states.

I am interested in how firmware is treated, since perhaps in the case of these old machines it's small enough to be analyzable or at least cloned bit-for-bit.


Software "engineers" like to abstract things. This doesn't pay well e with reliability.

You have inspired a blog post. World, be warned!

>Then their ancient Honeywell(?) mainframes...

https://en.wikipedia.org/wiki/GE-600_series from the 36-bit era which turned out to be a sweet-spot for Lisp; also "famous" for running Multics (old joke flipped: "which was many of whatever unix is one of")

GE sold it's division to Honeywell, and from there to Group Bull (French) and then to NEC (Japan)




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: