At least MS isn't as bad as Apple where the literally force you to buy new hardware along with the new O/S (Ipad 1 anyone?)
You seem to be under the impression that backward and forward hardware compatibility are easy things:
1) That an arbitrary OS could be expected to run well on hardware made many years in the past and many years in the future, and
2) That arbitrary hardware can easily support ancient software.
Suppose you'd said this about DOS. Microsoft should support it in perpetuity! OK, then, but where are you going to buy a mouse today that supports the hardware ports that DOS knows how to handle (or would you think mouse makers would spend the effort to write MTRACKPAD.SYS so that a new Apple Magic Trackpad would work on it)? And it's not exactly free or cheap for a modern i7 to maintain 100% 8088 compatibility.
Conversely, should iOS 9 be expected to run on an original iPhone, with CPUs and GPUs many times slower, an eighth the RAM, a fraction of the storage, and utterly obsolete in many other ways? Even if the minimal core could be made to run, so many features would have to be stripped out (at great development and testing expense) that it'd be pointless.
There are good reasons for dropping compatibility. Software isn't easily made to scale down to ancient predecessors, and hardware leaves stuff behind regularly - I don't have serial ports or ISA slots on this motherboard. It's not plausible for Apple to carry iOS all the way back to hardware that almost no one is using, and it's not realistic for Microsoft to drag Windows 7 all the way forward to hardware that hasn't even been conceived yet. At some point, you just have to let go.