Why are all Windows drivers dated June 21, 2006? Don’t you ever update drivers?

Raymond Chen

Why are all Windows drivers dated June 21, 2006? Don’t you ever update drivers? Are you just a bunch of slackers?

What’s more, the date of June 21, 2006 applies even to drivers like Storage Spaces, which didn’t even exist in 2006! Has the Research division been using their time machine again?

The dates on all Windows drivers are set to June 21, 2006. The version number increases over time, but the timestamp stays put.

My colleague Zac explains: When the system looks for a driver to use for a particular piece of hardware, it ranks them according to various criteria. If a driver provides a perfect match to the hardware ID, then it becomes a top candidate. And if more than one driver provides a perfect match, then the one with the most recent timestamp is chosen. If there is still a tie, then the one with the highest file version number is chosen.

Suppose that the timestamp on the driver matched the build release date. And suppose you had a custom driver provided by the manufacturer. When you installed a new build, the driver provided by Windows will have a newer timestamp than the one provided by the manufacturer. Result: When you install a new build, all your manufacturer-provided drivers get replaced by the Windows drivers. Oops.

Intentionally backdating the drivers avoids this problem. It means that if you have a custom manufacturer-provided driver, it will retain priority over the Windows-provided driver. On the other hand, if your existing driver was the Windows-provided driver from an earlier build, then the third-level selection rule will choose the one with the higher version number, which is the one from the more recent build.

It all works out in the end, but it does look a bit funny.

Zac told me, “It’s an awesome example of something that seems stupid and insignificant turning out to have a profound purpose.”

0 comments

Discussion is closed.

Feedback usabilla icon