Part of this is planned obsolescence, where software companies like Microsoft stop supporting older code, and no longer updates code for older hardware.
Then you have hardware manufacturers who have to write drivers compatible with the kernel of Operating systems. After a spell, you stop supporting older OS’s and start moving toward newer OSs. (most of this revolves around MS)
Linux, until recently, hasn’t been supported by most hardware manufacturers.
Now, in terms of CPUs, there is nothing stopping them from a hardware perspective, from working with any of the OSs on the market. The OS developers (i.e. Microsoft) dictate what works with their OS.
When I was running Windows 2000 Pro, it didn’t have native support for WiFi. Wasn’t until XP that I used WiFi natively. Same hardware, different interface.
Fast forward. DX9 Works great on Windows XP, But DX10, 11, or 12 do not. That is strictly a decision made by MS. DX12 is only available on Windows 10. That’s all software. Windows 8.1 Would probably not care at all about TR if MS hadn’t told it no.
Linux, doesn’t care. That being said, you can’t get a 10 year old version of Debian to work on modern systems, because the hardware didn’t exist when the software was written. You have to use a newer version of the Kernel to take advantage of the newer hardware.
Though you could probably stick a Riva128 in a modern system if you have a PCI-Express -> PCI adapter (https://www.amazon.com/PCI-Express-Adapter-Card-Half-Height/dp/B0024CV3SA) Linux systems would probably recognize it and it would work without much of a problem.
I plugged a USB device I have into a Windows 7+ machine and it doesn’t work because no drivers were written for that version of the NTKRNL. Plug it into a Fedora 29 system, worked without any issues.
Something you said earlier,
I can’t tell if you are being serious or not. But I’ll share a little I.T. Advice: Those stickers mean nothing outside of marketing.