How about spare parts? Sure, IDE disk drives (aka the thing that fails the most often) can be replaced by CF cards, but if your software hasn't been touched in 20 years, good luck getting it to run on a "modern" embedded board. You'd have an easier time if you had invested into keeping the embedded OS, the build environment and the boards reasonably up-to-date.
There are two industries the are leading in obsolescense managememt: Aerospace and railways. But yes, this is a seriousbissue if service love of your product is measured in multiple decades.
At least in Europe, railways got the hint (or rather, the EU forced their hand)... they are switching over to ETCS and digital signalling control based on standardised interfaces. Will take a few decades to fully roll out, though.
Hence obsolescence management to litterally keep the trains running, sometimes even on time. And no, regardless of what smart phones do, you do not update a running, and certified, piece of equipment with a real technical need to do so. One of the reasons rail, and air, travel are as safe as they are.
And it is not just signaling, it is rail car and engine systeks as well, down to the last mechanical and electronic component.