微軟宣布在MIT許可證下開源Windows驅(qū)動程序框架,源代碼托管在GitHub上。微軟最新的開源舉動可能有助于開源項(xiàng)目Wine的開發(fā)。Windows Driver Frameworks (WDF)是一組庫文件,幫助開發(fā)者為設(shè)備開發(fā)高質(zhì)量的驅(qū)動程序。微軟表示他們的目標(biāo)是讓W(xué)DF的內(nèi)部工作原理對開發(fā)者盡可能的透明。
WDF團(tuán)隊(duì)的代表 J M Rossy在博客里是這樣講述開源WDF的主要目標(biāo):昨天我們在 WinHEC 很激動的對外宣布將Windows Driver Frameworks (WDF)的源代碼最大化的開放在GitHub上。
WDF 開源的主要目標(biāo)
開源WDF的最主要的目標(biāo)就是為了更加直接的開發(fā)高質(zhì)量的驅(qū)動器。該框架提取了底層操作系統(tǒng)的核心部分,當(dāng)需要的時候還不犧牲掉靈活性。同時它也集成了世界級開發(fā)環(huán)境,包括 Visual Studio和Windows Driver Kit (WDK)。不管怎么說,這對于Windows10的驅(qū)動開發(fā)者都是一次極好的開發(fā)經(jīng)驗(yàn)。
當(dāng)然,我們理解目前還沒有可替代的OS源碼,這也就是為什么我們要開放WDF的源代碼,以此幫助所有人挖掘和調(diào)試他們的驅(qū)動器。這幫助開發(fā)者更加透明的理解框架和驅(qū)動程序之間是如何互動的。
適用范圍
這一次公開代碼之后,我們會發(fā)布更多的源代碼,尤其是在KMDF和UMDF v2之后,你會發(fā)現(xiàn)大量的源代碼隨之也會公布出來。用一個統(tǒng)一的模式來驅(qū)動框架的發(fā)展是WDF團(tuán)隊(duì)最主要的一個優(yōu)勢。
正如你對WDF所期待的那樣,你可能會遇到一些沒有正式文件的行為和API,我們強(qiáng)烈建議不要依賴于那樣的行為,因?yàn)樵谖磥戆l(fā)型的版本里可能會做一些改變。如果你在源碼里看到有被人添加的或是可能存在的BUG,我們希望你們能在GitHub里面提交報告。雖然現(xiàn)在不能接受來自貢獻(xiàn)者的修改,但是在未來可能會做出這方面的改進(jìn)。
相關(guān)案例
我們同樣很高興的宣布,像WDF那樣的驅(qū)動程序示例項(xiàng)目收集現(xiàn)在已經(jīng)放在GitHub上了,在MSDN Code Gallery上的 Windows 8.1全套案例將會一直保持更新。我們相信開放WDF源碼對于任何人來說都是很有意義的一步,說明Windows硬件實(shí)現(xiàn)這一塊又前進(jìn)了一步。
Windows中驅(qū)動程序是干什么用的大家都知道吧?電腦硬件要是沒了驅(qū)動程序和廢品沒啥區(qū)別。在Win10 1803版后,實(shí)測只要是硬件不太奇葩,基本上都可以直接通過Windows Update自動安裝,省事啊,之前小編準(zhǔn)備的那些驅(qū)動包基本上都可以下崗了。
自動更新好處大家知道了,壞處是什么你知道嗎?其實(shí)每個硬件對廠商來說都是有生命周期的,就拿顯卡舉例吧,上市之初配套的驅(qū)動程序基本上只能發(fā)揮60%~70%的性能(坊間傳聞),在上市6個月~8個月后,會有某個版本的驅(qū)動能夠發(fā)揮100%的硬件性能,也算是這款產(chǎn)品的“終極”驅(qū)動了,之后的驅(qū)動除了增加新功能、優(yōu)化針對某個游戲的體驗(yàn)外,裝來裝去除了版本號好看外,并沒有太多用處。放在其他硬件上也是同理。既然驅(qū)動已經(jīng)安裝,電腦用著還行,我們就別讓“自動更新驅(qū)動”來添亂了,畢竟新版驅(qū)動可能還有另外一個風(fēng)險,不夠穩(wěn)定。
So,小編今天想和大家介紹的,就是保持Win10正常更新,但屏蔽掉驅(qū)動更新。來吧,Win+R組合鍵后輸入regedit,定位到
HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Microsoft\Windows\DriverSearching
把右側(cè)的“DriverUpdateWizardWuSearchEnabled”,將默認(rèn)的數(shù)值數(shù)據(jù)從“1”修改成“0”后注銷當(dāng)前賬戶或重啟電腦,就可以禁止當(dāng)前電腦所有的硬件在Windows Update中獲取驅(qū)動更新。
上面這個一刀切的方法可能有些不近人情,畢竟有的小伙伴希望某些硬件驅(qū)動可以更新,有的則被禁止掉。沒關(guān)系,這樣的需求小編也是有辦法滴。
Win+R組合鍵后輸入gpedit.msc進(jìn)入組策略編輯器,依次進(jìn)入“計(jì)算機(jī)配置-管理模板-系統(tǒng)-設(shè)備安裝-設(shè)備安裝限制”。之后雙擊右側(cè)的“阻止使用與下列設(shè)備安裝程序類相似匹配的驅(qū)動程序安裝設(shè)備”,選擇“已啟用”后,會讓我們填入需要禁止設(shè)備的GUID。
這個設(shè)備的GUID在哪兒找?進(jìn)入“設(shè)備管理器”,找到對應(yīng)的硬件,右鍵選擇屬性。進(jìn)入到“詳細(xì)信息”的選項(xiàng)卡下,“屬性”的下拉菜單中找到“類 Guid”的選項(xiàng),系統(tǒng)就會顯示出該硬件的GUID了,復(fù)制到組策略中,就可以自定義屏蔽掉某些硬件的驅(qū)動更新。
看,各種方法都備齊了,用哪個,就看你想怎么使用Windows Update的驅(qū)動更新功能了。