亚洲成年人黄色一级片,日本香港三级亚洲三级,黄色成人小视频,国产青草视频,国产一区二区久久精品,91在线免费公开视频,成年轻人网站色直接看

一種硬件設(shè)備狀態(tài)自適應(yīng)的方法及裝置制造方法

文檔序號:6521122閱讀:177來源:國知局
一種硬件設(shè)備狀態(tài)自適應(yīng)的方法及裝置制造方法
【專利摘要】本發(fā)明提供了一種硬件設(shè)備狀態(tài)自適應(yīng)的方法及裝置。該方法在硬件設(shè)備中設(shè)置類標識信息,當設(shè)備驅(qū)動正常時系統(tǒng)通過加載設(shè)備驅(qū)動執(zhí)行,當設(shè)備驅(qū)動損壞或其他原因無法使用時,操作系統(tǒng)可以根據(jù)類標識將設(shè)備自動識別為支持的設(shè)備類并加載對應(yīng)的類驅(qū)動程序。通過本發(fā)明提供的方法,無需安裝驅(qū)動程序,無需人工操作,簡單方便,增加了設(shè)備使用的靈活性,便于使用。
【專利說明】一種硬件設(shè)備狀態(tài)自適應(yīng)的方法及裝置
【技術(shù)領(lǐng)域】
[0001]本發(fā)明涉及計算機驅(qū)動領(lǐng)域,特別涉及一種硬件設(shè)備狀態(tài)自適應(yīng)的方法及裝置。【背景技術(shù)】
[0002]驅(qū)動程序(Device Driver)全稱為“設(shè)備驅(qū)動程序”,是硬件的一部分,一般由硬件開發(fā)商提供,當安裝新硬件時,驅(qū)動程序是一項不可或缺的重要元件。凡是安裝一個原本不屬于電腦中的硬件設(shè)備時,系統(tǒng)會要求安裝對應(yīng)的驅(qū)動程序,將新的硬件與電腦系統(tǒng)連接起來。
[0003]驅(qū)動程序(Device Driver)全稱為“設(shè)備驅(qū)動程序”,是一種可以使計算機和設(shè)備通信的特殊程序,相當于硬件與操作系統(tǒng)的接口,操作系統(tǒng)只能通過這個接口,才能控制硬件設(shè)備的工作,假如某設(shè)備的驅(qū)動程序未能正確安裝,便不能正常工作。
[0004]設(shè)備驅(qū)動程序用來將硬件本身的功能告訴操作系統(tǒng),完成硬件設(shè)備電子信號與操作系統(tǒng)及軟件的高級編程語言之間的互相翻譯。當操作系統(tǒng)需要使用某個硬件時,比如:讓聲卡播放音樂,它會先發(fā)送相應(yīng)指令到聲卡驅(qū)動程序,聲卡驅(qū)動程序接收到后,馬上將其翻譯成聲卡才能聽懂的電子信號命令,從而讓聲卡播放音樂。驅(qū)動程序提供了硬件到操作系統(tǒng)的一個接口以及協(xié)調(diào)二者之間的關(guān)系,而因為驅(qū)動程序有如此重要的作用,驅(qū)動程序也被形象的稱為“硬件和系統(tǒng)之間的橋梁”。
[0005]無驅(qū)設(shè)備指系統(tǒng)默認支持的一些設(shè)備類,操作系統(tǒng)為支持的USB設(shè)備類提供類驅(qū)動程序,操作系統(tǒng)中包含了這些設(shè)備類的驅(qū)動程序及安裝文件,實現(xiàn)了設(shè)備類規(guī)范中所述的設(shè)備類通用功能。各類驅(qū)動程序均作為該類中所有設(shè)備的客戶端驅(qū)動程序。例如,如果所連接的USB設(shè)備屬于一個操作系統(tǒng)支持的類,則將自動加載類驅(qū)動程序,無需其他驅(qū)動程序即可保證設(shè)備正常工作。硬件供應(yīng)商無需再為支持的設(shè)備類編寫驅(qū)動程序。比如Microsoft支持的設(shè)備類包括藍牙類、人機接口設(shè)備(HID)類、智能卡類等。
[0006]HID (Human Interface Device,人機接口設(shè)備)主要指的是一些實現(xiàn)人與主機進行交互的設(shè)備,如鍵盤、鼠標、游戲桿等,但是HID設(shè)備不一定非要是這些人機交互設(shè)備,只要是符合HID設(shè)備級定義規(guī)范要求的都可以認為是HID設(shè)備。Windows操作系統(tǒng)自帶了 HID類的類驅(qū)動程序Hidclass.sys。
[0007]日常使用硬件的過程中,經(jīng)常存在因兼容性、其他軟件或驅(qū)動程序影響、沒有或沒有正確安裝驅(qū)動程序、驅(qū)動程序丟失或損壞以及病毒等因素的影響導(dǎo)致硬件無法正常使用,這給用戶的使用帶來了極大的困擾。
[0008]INF (Device INFormation File)是Microsoft公司為硬件設(shè)備制造商發(fā)布其驅(qū)動程序推出的一種描述設(shè)備安裝信息的文件格式,是Windows可以找到硬件設(shè)備的驅(qū)動并正確安裝的關(guān)鍵所在。INF文件中包含硬件設(shè)備的信息或腳本以控制硬件操作,它用特定語法的文字來說明要安裝的設(shè)備類型、生產(chǎn)廠商、型號、要拷貝的文件、拷貝到的目標路徑,以及要添加到注冊表中的信息等,通過讀取和解釋這些內(nèi)容,Windows便知道應(yīng)該如何安裝驅(qū)動程序,INF文件一般存儲在C:/Windows/INF文件夾中。[0009]USB協(xié)議為USB設(shè)備定義了一套描述設(shè)備功能和屬性的有固定結(jié)構(gòu)的描述符,包括標準的描述符即設(shè)備描述符、配置描述符、接口描述符和端點描述符,他們通常被保存在USB設(shè)備的固件程序中。USB設(shè)備通過描述符反映自己的設(shè)備特性。每個USB設(shè)備只有一個設(shè)備描述符,由一個或多個配置組成。設(shè)備描述符用于說明設(shè)備的總體信息(如制造商標識號ID、產(chǎn)品ID等),并指明其所含的配置的個數(shù)。一個USB設(shè)備可以包含一個或多個配置,每個配置對應(yīng)一個配置描述符,配置描述符用于說明USB設(shè)備中各個配置的特性,如配置所含接口的個數(shù)等。配置描述符中又定義了該配置里面有多少個接口,每個接口對應(yīng)一個接口描述符,接口描述符用于說明USB設(shè)備中各個接口的特性,如接口所屬的設(shè)備類及其子類等。端點是USB設(shè)備中的實際物理單元,用以描述端點的屬性以及各個端點的位置。端點作為通信管道的終點,有四種類型:批量(Bulk)、控制(Contorl)、中斷(Interrupt)和同步(Isochronous), HID類設(shè)備只有控制端點和中斷端點。
[0010]設(shè)備的接口描述符中描述了類標識信息,USB協(xié)議根據(jù)功能進行劃分,為不同的類定義不同的值(十六進制),如音頻類0x01、人機接口類(HID) 0x03、智能卡類OxOB等。

【發(fā)明內(nèi)容】

[0011]有鑒于此,本發(fā)明提供了一種自動加載設(shè)備驅(qū)動的方法。
[0012]一種自動加載設(shè)備驅(qū)動的方法,所述方法用于自適應(yīng)地在操作系統(tǒng)中加載設(shè)備驅(qū)動,所述方法至少包括如下步驟:
步驟1:將設(shè)置有類標識的硬件設(shè)備與主機電連接;
步驟2:操作系統(tǒng)自動檢測新接入的所述設(shè)置有類標識的硬件設(shè)備;
步驟3:操作系統(tǒng)讀取所述硬件設(shè)備內(nèi)的所述設(shè)備描述符獲取設(shè)備標識信息;
步驟4:操作系統(tǒng)根據(jù)所述設(shè)備標識信息查找注冊表中是否存在所述硬件設(shè)備的注冊表項,如果存在,則執(zhí)行步驟5,否則,執(zhí)行步驟6 ;
步驟5:操作系統(tǒng)動態(tài)地裝載所述硬件設(shè)備的驅(qū)動程序;
步驟6:操作系統(tǒng)根據(jù)所述設(shè)備標識信息查找INF目錄下是否存在所述硬件設(shè)備的INF文件,如果查找到與所述設(shè)備標識信息相符的所述硬件設(shè)備的INF,執(zhí)行步驟7,如果沒有找到,則執(zhí)行步驟8;
步驟1:操作系統(tǒng)根據(jù)所述INF文件中描述的安裝信息自動安裝驅(qū)動程序并填寫注冊
表;
步驟8:操作系統(tǒng)讀取所述硬件設(shè)備的接口描述符,獲取類標識信息;
步驟9:操作系統(tǒng)根據(jù)所述類標識信息,自動裝載類驅(qū)動程序。
[0013]所述步驟I中所述硬件設(shè)備中設(shè)置的類標識包括HID類標識、智能卡類標識。
[0014]根據(jù)本發(fā)明的一個方面,所述USB協(xié)議規(guī)定的HID類標識為0x03。
[0015]所述步驟3中獲取所述設(shè)備標識信息至少包括制造商標識號ID、和/或產(chǎn)品ID、和/或產(chǎn)品序列號、和/或所屬設(shè)備類號、和/或產(chǎn)品字符串。
[0016]所述步驟4中所述用于查找注冊表項的標識信息包括制造商標識號ID、和/或產(chǎn)品ID0
[0017]所述步驟9中所述的類驅(qū)動程序為操作系統(tǒng)默認支持的設(shè)備類對應(yīng)的類驅(qū)動程序。[0018]根據(jù)本發(fā)明的一個方面,所述操作系統(tǒng)中默認支持HID類,其對應(yīng)類驅(qū)動程序Hidclass.sys。
[0019]本發(fā)明通過在硬件設(shè)備中設(shè)置類標識,使得系統(tǒng)可以在設(shè)備驅(qū)動存在問題無法正常工作時,自動識別類標識,加載類驅(qū)動程序,在設(shè)備驅(qū)動沒有問題時,使用設(shè)備自有驅(qū)動。通過本發(fā)明提供的方法,無需人工操作,簡單方便,增加了設(shè)備使用的靈活性,便于使用。
【專利附圖】

【附圖說明】
[0020]圖1為按照本發(fā)明的一種設(shè)備狀態(tài)自適應(yīng)的一個優(yōu)選實施方式的流程示意圖。
[0021]圖2為按照本發(fā)明的一種設(shè)備狀態(tài)自適應(yīng)的實施例1的流程示意圖。
[0022]圖3為按照本發(fā)明的一種設(shè)備狀態(tài)自適應(yīng)的實施例2的流程示意圖。
【具體實施方式】
[0023]為使本發(fā)明的目的、技術(shù)方案及優(yōu)點更加清楚明白,以下參照附圖并舉實施例,對本發(fā)明進一步詳細說明。
[0024]本發(fā)明的增加類標識的方法適用于所有可設(shè)置類標識的硬件設(shè)備,如數(shù)碼相機、USB Key 等。
[0025]設(shè)置類標識的設(shè)備接入系統(tǒng)時,系統(tǒng)會獲取設(shè)備的描述符信息,并判斷該設(shè)備是否已經(jīng)安裝過驅(qū)動,如果已經(jīng)成功安裝過驅(qū)動,則直接裝載驅(qū)動,如果沒有安裝過,則查找設(shè)備的驅(qū)動并安裝設(shè)備驅(qū)動,如果找不到設(shè)備驅(qū)動程序,則自動讀取設(shè)備內(nèi)的類標識,自動加載類驅(qū)動程序。
[0026]根據(jù)本發(fā)明的一種方法,如圖1所示,包括如下步驟:
步驟1:將設(shè)置有類標識的硬件設(shè)備與主機電連接;
步驟2:操作系統(tǒng)自動檢測新接入的硬件設(shè)備;
步驟3:操作系統(tǒng)讀取硬件設(shè)備內(nèi)的設(shè)備描述符獲取設(shè)備標識信息;
步驟4:操作系統(tǒng)根據(jù)標識信息查找注冊表中是否存在該設(shè)備的注冊表項,如果存在,則執(zhí)行步驟5,否則,執(zhí)行步驟6 ;
步驟5:操作系統(tǒng)動態(tài)地裝載硬件設(shè)備的驅(qū)動;
步驟6:操作系統(tǒng)根據(jù)標識信息查找INF目錄下是否存在該設(shè)備的INF文件,如果查找到與標識信息相符的INF,執(zhí)行步驟7,如果沒有找到,則執(zhí)行步驟8 ;
步驟7:操作系統(tǒng)根據(jù)INF文件中描述的安裝信息自動安裝驅(qū)動程序并填寫注冊表; 步驟8:操作系統(tǒng)讀取設(shè)備的接口描述符,獲取類標識信息;
步驟9:操作系統(tǒng)根據(jù)類標識,自動裝載類驅(qū)動程序。
[0027]所述步驟I中硬件設(shè)備中設(shè)置的類標識包括但不限于HID類標識、智能卡類標識。根據(jù)一個【具體實施方式】,USB協(xié)議規(guī)定的HID類標識為0x03。
[0028]所述步驟3中獲取設(shè)備標識信息包括制造商標識號ID、產(chǎn)品ID、產(chǎn)品序列號、所屬設(shè)備類號、產(chǎn)品字符串等信息。
[0029]步驟4中所述用于查找注冊表項的標識信息包括制造商標識號ID、產(chǎn)品ID。
[0030]步驟9中所述的類驅(qū)動程序為系統(tǒng)默認支持的設(shè)備類對應(yīng)的類驅(qū)動程序。根據(jù)一個【具體實施方式】,系統(tǒng)中默認支持HID類,其對應(yīng)類驅(qū)動程序Hidclass.sys。[0031]實施例一
本實施例中,所述硬件設(shè)備為信息安全設(shè)備,比如加密鎖。其中,根據(jù)該實施例,加密鎖具有驅(qū)動程序,且為初次使用,所述主機為計算機。加密鎖內(nèi)部接口描述符中設(shè)置HID類標識,以便于在加密鎖接入主機使用時,當找不到驅(qū)動時,通過讀取HID類標識,加載HID類驅(qū)動程序,從而以HID設(shè)備方式運行加密鎖設(shè)備。
[0032]設(shè)置HID類標識主要包括:HID描述符(HID描述符中包括報告描述符和物理描述符),HID描述符與接口描述符關(guān)聯(lián),設(shè)備描述符中設(shè)置:bDeViceClaSS字段值為0,該字段為設(shè)備類碼,設(shè)為O表明一個設(shè)置下每個接口指出它自己的類,各個接口各自獨立工作;bDeviceSubClass (子類碼)和bDeviceProtocol (協(xié)議碼)字段值設(shè)置為O,接口描述符中blnterfaceClass (即設(shè)備類標識)的值設(shè)置為0x03(0x03為USB協(xié)議規(guī)定的HID設(shè)備類標識碼)、bInterfaceSubClass (子類碼)和 blnterfaceProtocol (協(xié)議碼)設(shè)置為 O。
[0033]根據(jù)本發(fā)明的一個【具體實施方式】,一種設(shè)備狀態(tài)自適應(yīng)的方法,如圖2所示,具體步驟包括:
1.將設(shè)置HID類標識的加密鎖設(shè)備通過接口與計算機主機電連接;
2.操作系統(tǒng)自動檢測加密鎖設(shè)備的設(shè)備描述符信息從而獲取制造商ID、產(chǎn)品ID等標識息;
3.操作系統(tǒng)根據(jù)標識信息查找注冊表中是否存在該設(shè)備的注冊表項,如果存在,執(zhí)行步驟4,否則,執(zhí)行步驟5;
4.操作系統(tǒng)動態(tài)地裝載所述加密鎖設(shè)備的驅(qū)動程序;
5.操作系統(tǒng)根據(jù)標識信息尋找加密鎖設(shè)備的INF文件,自動安裝所述加密設(shè)備的驅(qū)動程序并填寫注冊表;
6.正常使用加密鎖的操作功能。
[0034]本實施例通過讀取硬件設(shè)備描述符獲取標識信息,并自動檢查該設(shè)備的INF文件,根據(jù)INF文件安裝設(shè)備驅(qū)動程序,進而支持加密鎖的使用,本實施例通過USB設(shè)備批量傳輸端點進行通信,具有速度快的優(yōu)勢,可以提高效率。
[0035]實施例二
本實施例與實施例一類似,其區(qū)別在于,假定用戶沒有安裝加密鎖驅(qū)動或者加密鎖驅(qū)動丟失或損壞,根據(jù)本發(fā)明的一個實施方式,一種設(shè)備狀態(tài)自適應(yīng)的方法,如圖3所示,具體步驟包括:
1.將加密鎖設(shè)備通過接口與計算機主機電連接;
2.操作系統(tǒng)檢測加密鎖設(shè)備的設(shè)備描述符信息獲取制造商ID、產(chǎn)品ID等標識信息;
3.操作系統(tǒng)根據(jù)標識信息查找注冊表中是否存在該設(shè)備的注冊表項,如果存在,執(zhí)行步驟4,否則,執(zhí)行步驟5;
4.操作系統(tǒng)自動裝載所述加密鎖設(shè)備的驅(qū)動程序;
5.操作系統(tǒng)根據(jù)標識信息查找加密鎖的INF文件,如果查找到相符的INF文件,則執(zhí)行步驟6,否則執(zhí)行步驟7;
6.操作系統(tǒng)根據(jù)INF文件自動安裝所述加密鎖設(shè)備的驅(qū)動程序并填寫注冊表;
7.操作系統(tǒng)讀取加密鎖接口描述符獲取類標識0x03(HID類標識);
8.操作系統(tǒng)自動加載HID類驅(qū)動程序Hidclass.sys。[0036]本發(fā)明在硬件設(shè)備中增加類標識,使得當設(shè)備驅(qū)動無法正常使用時,可以根據(jù)類標識將設(shè)備識別為無驅(qū)類設(shè)備,無需安裝驅(qū)動即可正常使用。本發(fā)明無需人工操作,簡單方便,增加了設(shè)備使用的靈活性,提升用戶體驗,具有很大的實用性。
[0037]以上所述僅為本發(fā)明的較佳實施例而已,并非用于限定本發(fā)明的保護范圍。凡在本發(fā)明的精神和原則之內(nèi),所作的任何修改、等同替換以及改進等,均應(yīng)包含在本發(fā)明的保護范圍之內(nèi)。
【權(quán)利要求】
1.一種自動加載設(shè)備驅(qū)動的方法,所述方法用于自適應(yīng)地在操作系統(tǒng)中加載設(shè)備驅(qū)動,其特征在于,所述方法至少包括如下步驟: 步驟1:將設(shè)置有類標識的硬件設(shè)備與主機電連接; 步驟2:操作系統(tǒng)自動檢測新接入的所述設(shè)置有類標識的硬件設(shè)備; 步驟3:操作系統(tǒng)讀取所述硬件設(shè)備內(nèi)的所述設(shè)備描述符獲取設(shè)備標識信息; 步驟4:操作系統(tǒng)根據(jù)所述設(shè)備標識信息查找注冊表中是否存在所述硬件設(shè)備的注冊表項,如果存在,則執(zhí)行步驟5,否則,執(zhí)行步驟6 ; 步驟5:操作系統(tǒng)動態(tài)地裝載所述硬件設(shè)備的驅(qū)動程序; 步驟6:操作系統(tǒng)根據(jù)所述設(shè)備標識信息查找INF目錄下是否存在所述硬件設(shè)備的INF文件,如果查找到與所述設(shè)備標識信息相符的所述硬件設(shè)備的INF,執(zhí)行步驟7,如果沒有找到,則執(zhí)行步驟8; 步驟1:操作系統(tǒng)根據(jù)所述INF文件中描述的安裝信息自動安裝驅(qū)動程序并填寫注冊表; 步驟8:操作系統(tǒng)讀取所述硬件設(shè)備的接口描述符,獲取類標識信息; 步驟9:操作系統(tǒng)根據(jù)所述類標識信息,自動裝載類驅(qū)動程序。
2.根據(jù)權(quán)利要求1所述的一種自動加載設(shè)備驅(qū)動的方法,其特征在于,所述步驟I中所述硬件設(shè)備中設(shè)置的類標識包括HID類標識、智能卡類標識。
3.根據(jù)權(quán)利要求2所述的一種自動加載設(shè)備驅(qū)動的方法,其特征在于,USB協(xié)議規(guī)定的HID類標識為0x03。
4.根據(jù)權(quán)利要求1-3所述的一種自動加載設(shè)備驅(qū)動的方法,其特征在于,所述步驟3中獲取所述設(shè)備標識信息至少包括制造商標識號ID、和/或產(chǎn)品ID、和/或產(chǎn)品序列號、和/或所屬設(shè)備類號、和/或產(chǎn)品字符串。
5.根據(jù)權(quán)利要求1-4所述的一種自動加載設(shè)備驅(qū)動的方法,其特征在于,步驟4中所述用于查找注冊表項的標識信息包括制造商標識號ID、和/或產(chǎn)品ID。
6.根據(jù)權(quán)利要求1-5所述的一種自動加載設(shè)備驅(qū)動的方法,其特征在于,步驟9中所述的類驅(qū)動程序為操作系統(tǒng)默認支持的設(shè)備類對應(yīng)的類驅(qū)動程序。
7.根據(jù)權(quán)利要求1-6所述的一種自動加載設(shè)備驅(qū)動的方法,其特征在于,操作系統(tǒng)中默認支持HID類。
【文檔編號】G06F9/44GK103677812SQ201310620356
【公開日】2014年3月26日 申請日期:2013年11月29日 優(yōu)先權(quán)日:2013年11月29日
【發(fā)明者】孫吉平, 韓勇 申請人:北京深思數(shù)盾科技有限公司
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點贊!
1