With software, and by extension the hardware it requires, the lifespan is incredibly short compared with almost every other product out there. I'd like to see more companies release the software, code, etc. to the public domain as a formal way of walking away from it, but leaving customers with something more than "gee, must suck to be you" for support.
Borland released old versions of tools like Turbo C when it was no longer relevant commercially. Even though I paid for those tools when they were commercially relevant, I always liked the spirit of giving away old software. There's no cost to releasing it to the public domain. There are plenty of third world countries learning on and using technology that we throw away. There's a benefit to those people having software and learning technology but there's absolutely no money in it.
There are fringe cases where ongoing support is needed for really old systems. For example, I've been in machine shops with computers that drive CNC machines that run on 386's under DOS. As long as the machines keep working, it's a valuable part of running their business. Today it's nearly impossible to find replacement parts, but smarter shop owners bought extra pieces when they were disappearing from the market long ago. If something breaks, these people are willing to pay a premium to people who can help them. They know it's not a great situation, but it's much better than spending hundreds of thousands to replace everything that depends on old systems.
Proprietary interfaces, boards and drivers that integrate machinery with computers are the legacy components that makes it hard to replace these old systems. If they used an RS232 interface for low bandwidth data and Ethernet for higher bandwidth, it wouldn't be hard to reverse engineer what's going on and write software that runs on modern systems that could serve as a replacement. But a proprietary interface that requires an ISA slot and custom cables means there is no way to modernize that doesn't require new custom hardware.
The space shuttle is another good example of what happens when something is decades into its service life, but has components that were never expected to live that long. NASA can't just load everything on an iPad and hope each crew member bringing their own is enough fault tolerance and stands up to the extreme environment of space.
XP isn't all that old, as evidenced by the number of users who don't want to get off of it. It makes sense that Microsoft wants to get rid of it - there's no price for a support contract that would make it mutually beneficial to keep tech support trained on it and developers dedicated to working on it. But at the same time, Microsoft is not the kind of company that is likely to release it to the public domain either. The last thing they would want is an open source community picking it up, keeping it current with security patches and making it work on new hardware. That's the antithesis of the forced upgrade model.