为什么很多驱动程序的日期都是 2006 年 6 月 21 日?

局长
 局长
发布于 2017年02月12日
收藏 13

如果你比较关注Windows设备驱动程序,可能会注意到这样一个奇怪的现象:很多由微软提供的系统级驱动程序,生成日期都是 2006 年 6 月 21 日,无论是 Windows 7 里还是 Windows 10 里都是如此。

难道这些驱动已经 10 多年没有更新了吗?

显然不是。

微软开发人员曾在知名社区 Reddit 里详细解释过这个现象,实际上这样做是有意义的:

“当 PnP (即插即用)排列驱动优先级的时候,它会首先查看和驱动程序匹配的硬件 ID。如果有两个驱动都匹配硬件,那么筛选条件就是驱动日期谁更新。如果你有的设备可以使用内置驱动,但又需要在设备上安装某些定制或者 OEM 驱动,那么当微软再次更新相关驱动的时候,由于新驱动的日期要肯定要比你手动安装的驱动的日期更新,就会覆盖掉你的驱动。”

“那么我们应该如何避免这种情况呢?不管该驱动何时更新的,我们都会采用 Windows Vista 系统 RTM (正式版开发完成)的日期(也就是 2006 年 6 月 21 日),因此自 Vista 系统发布以来的所有驱动都能兼容最新的 Windows 版本,而你所安装的驱动都比 Vista RTM 更新,从而确保用户安装的驱动排在首位。

所以呢,不要瞧不起 Vista,它可是有特殊历史地位的呢,Windows 7/8/10 都是在它奠定的基础上发展而来。

来自:驱动之家

本站文章除注明转载外,均为本站原创或编译。欢迎任何形式的转载,但请务必注明出处,尊重他人劳动共创开源社区。
转载请注明:文章转载自 开源中国社区 [http://www.oschina.net]
本文标题:为什么很多驱动程序的日期都是 2006 年 6 月 21 日?
加载中

精彩评论

w
weapon张
原来这么有趣啊,笨办法解决问题的典范啊
struct
struct

引用来自“sizeof”的评论

办法太垃圾了,不能多弄个字段吗
你当编写操作系统的也是对着数据库,增删改查呀!
就算能加个字段,那原来的旧驱动程序没有这个字段,该如何筛选,如何保证兼容?
kidfruit
kidfruit
说了多少遍7 8 10都是以vista为基础,内核没有太大变化,咋总有人认为vista是坨屎,7开始才是革命性的。

最新评论(8

sizeof
sizeof
真有捧臭脚的,WINDOWS吃屎去吧,可恶的微软害惨了一代人。
sizeof
sizeof
那么较真干啥😂VERSION FIELD这次看起来舒服点了吗,广义下😜
seakingii
seakingii
这应该是不好升级底层数据定义下的一个折衷方案
struct
struct

引用来自“sizeof”的评论

办法太垃圾了,不能多弄个字段吗
你当编写操作系统的也是对着数据库,增删改查呀!
就算能加个字段,那原来的旧驱动程序没有这个字段,该如何筛选,如何保证兼容?
kidfruit
kidfruit
说了多少遍7 8 10都是以vista为基础,内核没有太大变化,咋总有人认为vista是坨屎,7开始才是革命性的。
sizeof
sizeof
办法太垃圾了,不能多弄个字段吗
w
weapon张
原来这么有趣啊,笨办法解决问题的典范啊
返回顶部
顶部