I think a lot of it depends on the speed of innovation in a particular market niche. For your VMS example, what other forms of hardware changed in the meantime, and how quickly did they emerge? Did VMS have to negotiate other, more fundamental hardware changes like a change of bus structure, a change of memory mapping or memory type, a transition of peripheral card or drive bus design, etc?
In the 13 years since Windows XP was first released, we've had:
- A transition from AGP to PCI Express, which in turn has had two improvements on top of it.
- GPU has evolved from a dedicated side processor to a more general-purpose processor that can be used advantageously for certain tasks, meaning heterogeneous computing: something relatively novel in the PC world.
- A transition from USB 1.0 to 3.0, with corresponding changes in the command structure to account for the new SuperSpeed bus.
- A move from 32-bit to 64-bit as well as the mainstream acceptance of multiple-core CPUs.
- A shift from Parallel to Serial ATA, and along with it a different address mode that isn't necessarily legacy-compatible.
- Solid-state drives became mainstream, ranging from bus-mounted to slot-mounted, and each with its own quirks concerning optimal performance and service life.
- The new Extensible Firmware Interface (EFI) to supplant the BIOS.
- Hard drives so big they basically REQUIRE said EFI to function properly (you can bodge it, yes, but your mileage may vary).
- At least two jumps in major motherboard architecture (brought about due to competing CPU manufacturers), which also signalled the shift of memory controller from motherboard to CPU.
- Memory tech has kept moving on, from DDR to DDR2 to DDR3 on the mainstream RAM font with even more exotic solutions appearing in the enterprise.
I probably missed a few things here, but the main point here is that a lot's been going on in the meantime, and given the breadth of those changes, it can be tricky to be able to handle ALL of them relatively smoothly (because you never know when one of these will change a low-level function).