国产精品1024永久观看,大尺度欧美暖暖视频在线观看,亚洲宅男精品一区在线观看,欧美日韩一区二区三区视频,2021中文字幕在线观看

  • <option id="fbvk0"></option>
    1. <rt id="fbvk0"><tr id="fbvk0"></tr></rt>
      <center id="fbvk0"><optgroup id="fbvk0"></optgroup></center>
      <center id="fbvk0"></center>

      <li id="fbvk0"><abbr id="fbvk0"><dl id="fbvk0"></dl></abbr></li>

      一種電腦設(shè)備驅(qū)動程序的升級方法

      文檔序號:6558611閱讀:210來源:國知局
      專利名稱:一種電腦設(shè)備驅(qū)動程序的升級方法
      技術(shù)領(lǐng)域
      本發(fā)明涉及一種電腦設(shè)備驅(qū)動程序的升級方法,具體說是一種在微軟數(shù)字簽名制度下對電腦設(shè)備驅(qū)動程序升級的簡便方法。
      背景技術(shù)
      微軟公司W(wǎng)indows操作系統(tǒng)對所有驅(qū)動程序都使用數(shù)字簽名來驗證它們是否已被Windows硬件質(zhì)量實驗室(WHQL)測試過。沒有微軟數(shù)字簽名的驅(qū)動程序可能會對Windows系統(tǒng)造成威脅,甚至導(dǎo)致系統(tǒng)崩潰。這種簽名制度規(guī)范了驅(qū)動程序,保證用戶系統(tǒng)安裝第三方驅(qū)動程序的安全性。
      然而驅(qū)動程序一旦通過簽名后就不能被隨意改動,驅(qū)動程序?qū)?yīng)設(shè)備的屬性也被固定。如果想要增加或修改其設(shè)備的功能,就不得不修改驅(qū)動程序,被改動后的驅(qū)動程序勢必還要通過微軟的簽名,這樣的方式消耗金錢、時間和人力。
      WDM(Win32 Driver Mode,Win32驅(qū)動模型)是微軟公司為Windows的驅(qū)動程序設(shè)計的一種通用的驅(qū)動程序模型。隨著系統(tǒng)的升級,WDM已經(jīng)成為Windows系統(tǒng)驅(qū)動程序開發(fā)的主流。WDM體系結(jié)構(gòu)實行分層處理,即設(shè)備驅(qū)動被分成多層驅(qū)動程序,即過濾驅(qū)動程序、功能驅(qū)動程序和總線驅(qū)動程序。每層驅(qū)動程序把I/O請求劃分成更簡單的請求,以傳給下層的驅(qū)動程序執(zhí)行??偩€驅(qū)動程序最后收到I/O請求后,通過硬件抽象層,與硬件發(fā)生作用,從而完成I/O請求操作。
      每一個產(chǎn)品的設(shè)備描述符必須有一個銷售商ID和由制造商指定的產(chǎn)品ID,主機(jī)中設(shè)備的INF文件也包含了這兩個值,Windows使用這兩個值來幫助決定為這個設(shè)備載入哪個驅(qū)動。

      發(fā)明內(nèi)容
      本發(fā)明的發(fā)明目的為提供一種電腦設(shè)備驅(qū)動程序的升級方法,具體的說是一種進(jìn)行一次微軟數(shù)字簽名,對電腦設(shè)備驅(qū)動程序進(jìn)行無限次修改、升級的方法。
      實現(xiàn)上述發(fā)明目的的技術(shù)方案如下一種電腦設(shè)備驅(qū)動程序的升級方法,其特征在于過濾驅(qū)動程序為驅(qū)動程序的升級部分,設(shè)備連接主機(jī)后,應(yīng)用程序發(fā)送的請求包首先通過過濾驅(qū)動程序處理,根據(jù)具體請求內(nèi)容決定返回系統(tǒng)或通過功能驅(qū)動程序再返回系統(tǒng)。
      所述設(shè)備的功能驅(qū)動程序,用于驅(qū)動一個單獨的設(shè)備,控制并實現(xiàn)該設(shè)備的主要功能,它是設(shè)備的主要驅(qū)動程序,也是必不可少的。對于本發(fā)明所述的方法,所述設(shè)備的功能驅(qū)動程序是具有微軟簽名的部分。
      在上述方法中,所述設(shè)備的過濾驅(qū)動程序是不需要申請微軟簽名,可以根據(jù)需要由開發(fā)人員自行規(guī)定或修改的驅(qū)動程序部分,這部分驅(qū)動程序可以實現(xiàn)設(shè)備功能的修改或增加,即可對驅(qū)動程序進(jìn)行升級。
      所述過濾驅(qū)動程序?qū)φ埱蟀奶幚戆ㄏ铝惺马?
      1)所述請求包經(jīng)過過濾驅(qū)動程序處理,過濾驅(qū)動程序通過對請求包的內(nèi)容進(jìn)行修改或者重新組裝新的請求包發(fā)給功能驅(qū)動程序。
      2)如果完成所述請求包的請求不需要發(fā)給功能驅(qū)動程序,請求包在過濾驅(qū)動程序中通過處理后直接返回系統(tǒng)。
      3)所述請求包經(jīng)過過濾驅(qū)動程序,過濾驅(qū)動程序不需要對請求包做任何處理直接傳給功能驅(qū)動程序。
      在上述方法中,所述設(shè)備驅(qū)動程序的升級方法適用于USB設(shè)備。
      從本發(fā)明的技術(shù)方案可以看出,在WDM架構(gòu)下,本發(fā)明通過編寫過濾驅(qū)動程序可以在不更改現(xiàn)有驅(qū)動程序的情況下,方便地修改、增加現(xiàn)有驅(qū)動程序的功能。通過編寫過濾驅(qū)動程序,可以以較小的代價擴(kuò)展硬件現(xiàn)有的功能,因此具有很強(qiáng)的實際應(yīng)用價值。


      圖1為本發(fā)明電腦USB設(shè)備驅(qū)動程序升級方法的框圖;圖2為本發(fā)明電腦USB設(shè)備驅(qū)動程序升級方法的流程圖。
      具體實施例方式
      下面結(jié)合附圖和具體實施例對本發(fā)明作進(jìn)一步說明。
      本發(fā)明利用現(xiàn)有WDM驅(qū)動程序模型的過濾驅(qū)動技術(shù),能夠?qū)崿F(xiàn)對所有電腦設(shè)備驅(qū)動程序的升級。本發(fā)明以USB設(shè)備為例進(jìn)行說明。
      如圖1所示,當(dāng)USB設(shè)備105連接主機(jī)后,系統(tǒng)可以通過USB設(shè)備的銷售商ID和產(chǎn)品ID識別USB設(shè)備,將USB設(shè)備驅(qū)動程序的過濾驅(qū)動程序106加載到過濾驅(qū)動程序?qū)?02,激活過濾驅(qū)動程序?qū)?02,激活的過濾驅(qū)動層102接收應(yīng)用程序101的請求,對請求包進(jìn)行處理加工并發(fā)送到下層驅(qū)動程序即功能驅(qū)動程序103和總線驅(qū)動程序104。最后總線驅(qū)動程序通過硬件抽象層同USB設(shè)備交互,USB設(shè)備響應(yīng)請求,實現(xiàn)與硬件的交互,完成請求。
      本發(fā)明所述的功能驅(qū)動程序103用于驅(qū)動一個單獨的設(shè)備,控制并實現(xiàn)該設(shè)備的主要功能,過濾驅(qū)動程序106實現(xiàn)設(shè)備功能的修改或增加,即可對驅(qū)動程序進(jìn)行升級,能夠完成功能驅(qū)動程序103不具備的功能,當(dāng)過濾驅(qū)動程序?qū)?02沒有加載過濾驅(qū)動程序106的情況下,應(yīng)用程序101下發(fā)的請求發(fā)送至功能驅(qū)動程序103,此時USB設(shè)備105只能完成其基本的功能,只有當(dāng)過濾驅(qū)動程序?qū)?02被激活后USB設(shè)備105才能完成其擴(kuò)展升級的功能。
      本發(fā)明電腦USB設(shè)備驅(qū)動程序升級方法的具體流程如圖2所示,當(dāng)USB設(shè)備連接主機(jī)后,步驟201應(yīng)用程序調(diào)用Win32子系統(tǒng)提供的API來同USB設(shè)備進(jìn)行交互,發(fā)送請求,步驟202當(dāng)請求傳遞到I/O管理器時,I/O管理器對請求進(jìn)行必要的參數(shù)匹配和操作安全檢查,然后由這個請求構(gòu)造出合適的I/O請求包并把請求包發(fā)送到適當(dāng)?shù)尿?qū)動程序去。
      步驟203檢查請求是否有效,如果請求無效,則步驟204返回錯誤,如果請求有效,則步驟205檢測是否存在過濾驅(qū)動程序,如果過濾驅(qū)動程序存在則步驟206通過USB設(shè)備的銷售商ID和產(chǎn)品ID加載過濾驅(qū)動程序。步驟207由激活的過濾驅(qū)動程序處理請求包并傳遞到下一層驅(qū)動程序去。步驟208功能驅(qū)動程序處理請求包并將處理后的請求包傳遞到總線驅(qū)動程序。
      在步驟205如果檢測過濾驅(qū)動程序不存在,則請求包直接被傳遞到功能驅(qū)動程序,由步驟208功能驅(qū)動程序處理請求包并傳遞到總線驅(qū)動程序。
      在步驟209總線驅(qū)動程序?qū)φ埱蟀鱿鄳?yīng)的處理后,步驟210通過硬件抽象層同USB設(shè)備交互,USB設(shè)備響應(yīng)請求,完成USB設(shè)備的功能,此時USB設(shè)備的功能由于增加了過濾驅(qū)動而得到改善。如果在步驟205檢測不不到過濾驅(qū)動程序,最后USB設(shè)備的功能就只具有功能驅(qū)動程序中定義的基礎(chǔ)功能。
      權(quán)利要求
      1.一種電腦設(shè)備驅(qū)動程序的升級方法,其特征在于過濾驅(qū)動程序為驅(qū)動程序的升級部分,設(shè)備連接主機(jī)后,應(yīng)用程序發(fā)送的請求包首先通過過濾驅(qū)動程序處理,根據(jù)具體請求內(nèi)容決定返回系統(tǒng)或通過功能驅(qū)動程序再返回系統(tǒng)。
      2.如權(quán)利要求1所述的升級方法,其特征在于所述設(shè)備的功能驅(qū)動程序是具有微軟簽名的部分。
      3.如權(quán)利要求1所述的升級方法,其特征在于所述設(shè)備的過濾驅(qū)動程序不需要經(jīng)過微軟簽名,可以根據(jù)需要由開發(fā)商規(guī)定或修改。
      4.如權(quán)利要求1所述的升級方法,其特征在于所述過濾驅(qū)動程序?qū)φ埱蟀奶幚戆ㄏ铝惺马?)所述請求包經(jīng)過過濾驅(qū)動程序處理,過濾驅(qū)動程序通過對請求包的內(nèi)容進(jìn)行修改或者重新組裝新的請求包發(fā)給功能驅(qū)動程序。2)如果完成所述請求包的請求不需要發(fā)給功能驅(qū)動程序,請求包在過濾驅(qū)動程序中通過處理后直接返回系統(tǒng)。3)所述請求包經(jīng)過過濾驅(qū)動程序,過濾驅(qū)動程序不需要對請求包做任何處理直接傳給功能驅(qū)動程序。
      5.如權(quán)利要求1所述的升級方法,其特征在于所述設(shè)備驅(qū)動程序的升級方法適用于USB設(shè)備。
      全文摘要
      本發(fā)明公開了一種電腦設(shè)備驅(qū)動程序的升級方法,利用現(xiàn)有WDM驅(qū)動程序模型的過濾驅(qū)動技術(shù),實現(xiàn)對電腦設(shè)備驅(qū)動程序的升級,本發(fā)明中只有功能驅(qū)動程序是得到微軟簽名的部分,功能驅(qū)動程序用于控制并實現(xiàn)該設(shè)備的主要功能,過濾驅(qū)動程序是沒有申請微軟簽名的,可以根據(jù)需要由開發(fā)人員自行修改的驅(qū)動程序部分,這部分驅(qū)動程序可以實現(xiàn)設(shè)備功能的修改或增加,最后總線驅(qū)動程序收到I/O請求后,通過硬件抽象層,與硬件發(fā)生作用,從而完成I/O請求操作,電腦設(shè)備驅(qū)動程序升級完成。本發(fā)明通過編寫過濾驅(qū)動程序在不更改現(xiàn)有驅(qū)動程序的情況下,方便地修改、增加現(xiàn)有驅(qū)動程序的功能,以較小的代價擴(kuò)展硬件現(xiàn)有的功能,因此具有很強(qiáng)的實際應(yīng)用價值。
      文檔編號G06F21/00GK1845071SQ200610080489
      公開日2006年10月11日 申請日期2006年5月17日 優(yōu)先權(quán)日2006年5月17日
      發(fā)明者陸舟, 于華章 申請人:北京飛天誠信科技有限公司
      網(wǎng)友詢問留言 已有0條留言
      • 還沒有人留言評論。精彩留言會獲得點贊!
      1