為什麼Windows自帶的很多驅動,日期都是2006年6月21日?
今天跟朋友扯UASP的時候發現的……
按理說06年應該還沒這個協議,於是我看了下其他的(還有很多都是這個日期 那麼這個日期有什麼特別的呢?
這個日期是在所有的系統內置驅動的INF文件里定義的。所以實際上驅動程序文件的時間可能很新,但是驅動日期的標註會是2006/06/21。
這個日期的由來就很簡單了…
他們都是這一天生成的。應該是隨著Vista的生產,RTM用的驅動都是這一天生成的INF文件。之後只要INF文件不需要更新,就只更新.sys驅動文件。至於UASP這麼新的協議為什麼驅動文件還是如此標註?還是很簡單,UASP只是一種新的SCSI Adapter,所以只是複製了一個INF,把內容改為了UASPStor.sys相應的內容。驅動日期沒有動,大概是因為流程上沒有要求去更新。
Vista的RTM時間是2006年11月,所以很可能6月21號是個milestone。
貌似是硬體ID匹配的情況下會優先使用日期更新的驅動,Windows不更新驅動日期是為了避免覆蓋掉廠商提供的驅動。
來源:Is Windows 10 still a polished Vista kernel? ? /r/windows官方的在Reddit的回復是
當PNP(即插即用)排列驅動優先順序的時候,它首先查看和驅動程序匹配的硬體ID。如果出現兩個驅動都匹配硬體,那麼篩選條件就是驅動日期。如果你有一台可以使用內置驅動的設備,但是你需要在設備上安裝某些定製/OEM驅動之後,每次當微軟需要更新驅動的時候,由於這個日期要比定製日期更新,因此都會重複覆蓋你的定製驅動。
那麼我們應該如何避免這種情況呢?不管該驅動何時更新的(驅動版本號會進行更新,如果日期相同那麼版本號則是下個篩選因素),我們發布的每個驅動都會採用Vista系統RTM的日期。因此自Vista系統發布以來的所有驅動都能兼容最新的Windows版本,而你所安裝的驅動都比Vista RTM更新,從而確保用戶安裝的驅動排在首位。
為了統一格式吧,你去WindowsSystem32里看看,根據日期排序,會有發現的
事實上證明直到現在的Windows還相對於十年前的Vista沒動多少.....
推薦閱讀:
※Windows 中如何創建一個指向某相對路徑的快捷方式(即快捷方式的目標路徑為某相對路徑) ?如果不能,為什麼?
※「記事本」程序的BUG?
※為什麼 Windows 的命令行這麼難用?
※筆記本設置了永不睡眠還是進入睡眠狀態怎麼破?
※有沒有適合win10的非國產殺毒軟體?
TAG:MicrosoftWindows | 冷知識 | 驅動程序 |