專(zhuān)利名稱(chēng):一種基于網(wǎng)絡(luò)的設(shè)備驅(qū)動(dòng)程序配置方法
技術(shù)領(lǐng)域:
本發(fā)明涉及設(shè)備驅(qū)動(dòng)程序配置技木,特別涉及一種基于網(wǎng)絡(luò)的設(shè)備驅(qū)動(dòng)程序配置方法。
背景技術(shù):
在學(xué)校機(jī)房或網(wǎng)吧等公共場(chǎng)所,數(shù)量龐大的客戶(hù)端的設(shè)備驅(qū)動(dòng)程序配置越來(lái)越受管理者所關(guān)注。按常規(guī)方法,設(shè)備驅(qū)動(dòng)程序的安裝升級(jí)等配置維護(hù)工作,通常需要在操作系統(tǒng)啟動(dòng)完畢后由用戶(hù)介入處理,并且在配置完畢后往往還需要重啟計(jì)算機(jī)才能生效?,F(xiàn)有技術(shù)中,一般會(huì)采用母盤(pán)復(fù)刻或部署無(wú)盤(pán)客戶(hù)端來(lái)實(shí)現(xiàn)驅(qū)動(dòng)程序配置,但這些方案在實(shí)際使用中也存在著不足。一方面,母盤(pán)復(fù)刻需要耗費(fèi)較長(zhǎng)的時(shí)間和較多的人力,甚至有可能比逐臺(tái)手工配置還要耗時(shí)耗カ;另ー方面,即使采用無(wú)盤(pán)客戶(hù)端,其設(shè)備驅(qū)動(dòng)程序的維護(hù)也難以通過(guò)單點(diǎn)集中配置就能實(shí)現(xiàn)全場(chǎng)可用,并且往往需要繁瑣的操作流程??梢?jiàn),對(duì)于維護(hù)大量電腦的機(jī)構(gòu)或營(yíng)業(yè)場(chǎng)所來(lái)說(shuō),上述問(wèn)題都會(huì)明顯增加系統(tǒng)的
管理成本。
發(fā)明內(nèi)容
有鑒于此,本發(fā)明提供了一種基于網(wǎng)絡(luò)的設(shè)備驅(qū)動(dòng)程序配置方法。通過(guò)該方法,可在客戶(hù)端操作系統(tǒng)加載前完成設(shè)備驅(qū)動(dòng)程序的配置,并且配置過(guò)程無(wú)需用戶(hù)介入、配置結(jié)果在操作系統(tǒng)加載完畢后即時(shí)生效。該設(shè)備驅(qū)動(dòng)程序配置方法至少包括以下步驟a、確定客戶(hù)端PCI總線上所連接的硬件設(shè)備,并生成設(shè)備識(shí)別ID ;b、判斷客戶(hù)端操作系統(tǒng)的加載模式;若為本機(jī)硬盤(pán)模式,則順序執(zhí)行步驟c和步驟d ;若為虛擬盤(pán)模式則執(zhí)行步驟e ;C、發(fā)送設(shè)備識(shí)別ID到服務(wù)端,請(qǐng)求服務(wù)端返回對(duì)應(yīng)的設(shè)備驅(qū)動(dòng)程序配置信息;d、在接收到服務(wù)端返回的對(duì)應(yīng)的設(shè)備驅(qū)動(dòng)程序配置信息后,在客戶(hù)端的本機(jī)硬盤(pán)設(shè)置對(duì)應(yīng)的設(shè)備驅(qū)動(dòng)程序配置信息;e、發(fā)送設(shè)備識(shí)別ID到服務(wù)端,請(qǐng)求服務(wù)端在配置于服務(wù)端的虛擬盤(pán)鏡像上設(shè)置對(duì)應(yīng)的設(shè)備驅(qū)動(dòng)程序配置信息、并等待服務(wù)端在虛擬盤(pán)鏡像設(shè)置對(duì)應(yīng)的設(shè)備驅(qū)動(dòng)程序配置信息。優(yōu)選地,上述方法還包括在客戶(hù)端的啟動(dòng)階段載入能執(zhí)行步驟a至步驟e的系統(tǒng)。優(yōu)選地,所述啟動(dòng)階段為客戶(hù)端操作系統(tǒng)尚未加載或尚未完全加載。
優(yōu)選地,所述步驟a包括枚舉客戶(hù)端PCI總線上所連接的硬件設(shè)備,并依據(jù)枚舉得到的PCI配置空間信息中的設(shè)備參數(shù)生成可供服務(wù)端進(jìn)行檢索的設(shè)備識(shí)別ID。優(yōu)選地,所述步驟d中在客戶(hù)端的本機(jī)硬盤(pán)設(shè)置對(duì)應(yīng)的設(shè)備驅(qū)動(dòng)程序配置信息包括解析客戶(hù)端的本機(jī)硬盤(pán)的文件系統(tǒng),并以該本機(jī)硬盤(pán)安裝操作系統(tǒng)的約定路徑和格式,在該本機(jī)硬盤(pán)的文件系統(tǒng)中設(shè)置和保存對(duì)應(yīng)的設(shè)備驅(qū)動(dòng)程序配置信息。優(yōu)選地,所述步驟e中服務(wù)端在虛擬盤(pán)鏡像設(shè)置對(duì)應(yīng)的設(shè)備驅(qū)動(dòng)程序配置信息包括服務(wù)端解析虛擬盤(pán)鏡像的文件系統(tǒng),并以該虛擬盤(pán)鏡像安裝操作系統(tǒng)的約定路徑和格式,在該虛擬盤(pán)鏡像的文件系統(tǒng)中設(shè)置和保存對(duì)應(yīng)的設(shè)備驅(qū)動(dòng)程序配置信息。優(yōu)選地,所述步驟d之后進(jìn)ー步包括步驟f、將控制客戶(hù)端運(yùn)行的控制權(quán)轉(zhuǎn)移到客戶(hù)端的本機(jī)硬盤(pán)安裝的操作系統(tǒng)。優(yōu)選地,所述步驟e之后進(jìn)ー步包括步驟g、將控制客戶(hù)端運(yùn)行的控制權(quán)轉(zhuǎn)移到服務(wù)端的虛擬盤(pán)鏡像安裝的操作系統(tǒng)。由上述技術(shù)方案可見(jiàn),本發(fā)明可在客戶(hù)端操作系統(tǒng)尚未加載或尚未完全加載時(shí),通過(guò)枚舉客戶(hù)端PCI總線上的硬件設(shè)備取得對(duì)應(yīng)設(shè)備的PCI配置空間信息,并且基于該信息中的設(shè)備參數(shù)生成可供服務(wù)端進(jìn)行檢索的設(shè)備識(shí)別ID??蛻?hù)端發(fā)送該設(shè)備識(shí)別ID到服務(wù)端,取決于客戶(hù)端操作系統(tǒng)的加載模式,如果為本機(jī)硬盤(pán)模式,服務(wù)端返回對(duì)應(yīng)的設(shè)備驅(qū)動(dòng)程序配置信息,客戶(hù)端保存該配置信息到本機(jī)硬盤(pán);如果為虛擬盤(pán)模式,服務(wù)端直接在虛擬盤(pán)鏡像上設(shè)置對(duì)應(yīng)的設(shè)備驅(qū)動(dòng)程序配置信息。通過(guò)本發(fā)明,可在客戶(hù)端操作系統(tǒng)加載前完成設(shè)備驅(qū)動(dòng)程序的配置,并且配置過(guò)程無(wú)需用戶(hù)介入、配置結(jié)果在操作系統(tǒng)加載完畢后即時(shí)生效。相比于現(xiàn)有技術(shù)中的母盤(pán)復(fù)刻方式,本發(fā)明能避免逐臺(tái)施工的不便,客戶(hù)端系統(tǒng)只需啟動(dòng)一次即可完成本機(jī)設(shè)備驅(qū)動(dòng)程序的配置;相比于現(xiàn)有技術(shù)中的無(wú)盤(pán)客戶(hù)端方式,本發(fā)明能避免繁瑣的操作流程,通過(guò)服務(wù)端集中配置就能實(shí)現(xiàn)全場(chǎng)可用。
圖I為本發(fā)明實(shí)施例中基于網(wǎng)絡(luò)的設(shè)備驅(qū)動(dòng)程序配置方法的一示例性交互流程圖。
具體實(shí)施例方式為使本發(fā)明的目的、技術(shù)方案及優(yōu)點(diǎn)更加清楚明白,以下參照附圖并舉實(shí)施例,對(duì)本發(fā)明進(jìn)一歩詳細(xì)說(shuō)明。盡管本發(fā)明不限于此,但作為本發(fā)明的ー個(gè)具體的實(shí)施例,可以是結(jié)合如下的應(yīng)用環(huán)境來(lái)實(shí)現(xiàn)的。在客戶(hù)端al、有一塊RTL8169 網(wǎng)卡,該網(wǎng)卡具有支持PXE (Preboot Execution Environment,預(yù)啟動(dòng)執(zhí)行環(huán)境)規(guī)范的B00TR0M芯片;a2、主板的BIOS設(shè)置為優(yōu)先從RTL8169網(wǎng)卡的支持PXE規(guī)范的B00TR0M芯片引導(dǎo)
啟動(dòng);a3、有一塊硬盤(pán),該硬盤(pán)安裝了 Windows XP操作系統(tǒng);其中,該硬盤(pán)可以?xún)H有ー個(gè)分區(qū)、且該分區(qū)的文件系統(tǒng)類(lèi)型為NTFS,但實(shí)際應(yīng)用中并不限于此。
在服務(wù)端b I、配置有能夠支持DHCP和TFTP服務(wù)的服務(wù)端程序DeviceConf igServer. exe,可響應(yīng)客戶(hù)端通過(guò)RTL8169網(wǎng)卡的BOOTROM從網(wǎng)絡(luò)引導(dǎo)啟動(dòng)的請(qǐng)求;b2、存放有ー份可供客戶(hù)端通過(guò)TFTP下載的客戶(hù)端程序DeviceConfigClient.Mn、并且該客戶(hù)端程序自身攜帯有客戶(hù)端操作系統(tǒng)加載模式的設(shè)置信息,即選擇本機(jī)硬盤(pán)加載模式還是虛擬盤(pán)加載模式;b3、存放有ー份適用于Windows XP的RTL8169網(wǎng)卡驅(qū)動(dòng)程序配置信息;b4、存放有一份安裝了 Windows XP的虛擬盤(pán)鏡像。圖I為本發(fā)明實(shí)施例中基于網(wǎng)絡(luò)的設(shè)備驅(qū)動(dòng)程序配置方法的一示例性交互流程圖。如圖I所示的交互流程基于如前所述的應(yīng)用環(huán)境來(lái)實(shí)現(xiàn)的。首先,客戶(hù)端可預(yù)先通過(guò)RTL8169網(wǎng)卡,將服務(wù)端存放的客戶(hù)端程序DeviceConfigClient. bin通過(guò)TFTP下載至客戶(hù)端主內(nèi)存,通常情況下該下載存放的內(nèi)存起始地址為0:7C00h。接著,客戶(hù)端程序DeviceConfigClient. bin將自動(dòng)從上述內(nèi)存地址開(kāi)始執(zhí)行,即獲得客戶(hù)端系統(tǒng)控制權(quán)。然后,如圖I所示,即可由在客戶(hù)端運(yùn)行的客戶(hù)端程序DeviceConfigClient. bin、以及在服務(wù)端運(yùn)行的服務(wù)端程序DeviceConfigServer. exe執(zhí)行如下步驟步驟100,客戶(hù)端程序DeviceConfigClient. bin截獲客戶(hù)端啟動(dòng)階段的系統(tǒng)控制權(quán)。本步驟是基于將客戶(hù)端主板的BIOS設(shè)置為優(yōu)先從RTL8169網(wǎng)卡引導(dǎo)系而實(shí)現(xiàn)的。并且在本步驟中,所述的啟動(dòng)階段通常為客戶(hù)端的支持PXE規(guī)范的BOOTROM已經(jīng)就緒、并且Windows XP尚未加載時(shí)。步驟101,客戶(hù)端程序DeviceConfigClient. bin枚舉客戶(hù)端的PCI總線上的硬件設(shè)備,生成設(shè)備識(shí)別ID。本步驟中,客戶(hù)端程序DeviceConfigClient. bin通過(guò)訪問(wèn)客戶(hù)端專(zhuān)用于枚舉PCI總線設(shè)備的I/O端ロ CF8h和CFCh,枚舉本機(jī)PCI總線上的硬件設(shè)備,取得對(duì)應(yīng)設(shè)備的PCI配置空間信息,并且基于該P(yáng)CI配置空間信息中的設(shè)備參數(shù)生成一個(gè)可供服務(wù)端程序DeviceConfigServer. exe進(jìn)行檢索的設(shè)備識(shí)別ID。在本實(shí)施例中,由于RTL8169網(wǎng)卡連接在PCI總線上,因此,客戶(hù)端可取得本機(jī)RTL8169網(wǎng)卡的設(shè)備參數(shù),并生成一個(gè)形式為VEN_10EC&DEV_8169的設(shè)備識(shí)別ID。步驟102,客戶(hù)端程序DeviceConfigClient. bin即將發(fā)送上述設(shè)備識(shí)別ID到服務(wù)端,但如何發(fā)送取決于客戶(hù)端操作系統(tǒng)的加載模式,因此,客戶(hù)端程序DeviceConfigClient. bin根據(jù)其自身攜帶的設(shè)置來(lái)判斷客戶(hù)端操作系統(tǒng)的加載模式如果為本機(jī)硬盤(pán)模式,客戶(hù)端需要請(qǐng)求服務(wù)端返回對(duì)應(yīng)的設(shè)備驅(qū)動(dòng)程序配置信息,即選擇執(zhí)行步驟103至步驟105 ;如果為虛擬盤(pán)模式,客戶(hù)端需要請(qǐng)求服務(wù)端直接在虛擬盤(pán)鏡像上設(shè)置對(duì)應(yīng)的設(shè)備驅(qū)動(dòng)程序配置信息,即選擇執(zhí)行步驟106至步驟107。步驟103,客戶(hù)端程序DeviceConfigClient. bin將設(shè)備識(shí)別ID發(fā)送到服務(wù)端,請(qǐng) 求其返回對(duì)應(yīng)的設(shè)備驅(qū)動(dòng)程序配置信息。本步驟中,客戶(hù)端通過(guò)本機(jī)PXE網(wǎng)絡(luò)訪問(wèn)接ロ發(fā)送形式為VEN_10EC&DEV_8169的設(shè)備識(shí)別ID到服務(wù)端,請(qǐng)求其返回RTL8169網(wǎng)卡的設(shè)備驅(qū)動(dòng)程序配置信息。
步驟104,服務(wù)端程序DeviceConfigServer. exe響應(yīng)上述請(qǐng)求,并依據(jù)來(lái)自客戶(hù)端的設(shè)備識(shí)別ID返回對(duì)應(yīng)的設(shè)備驅(qū)動(dòng)程序配置信息。本步驟中,服務(wù)端使用來(lái)自客戶(hù)端的設(shè)備識(shí)別ID檢索對(duì)應(yīng)的設(shè)備驅(qū)動(dòng)程序配置信息,然后將檢索到的RTL8169網(wǎng)卡的設(shè)備驅(qū)動(dòng)程序配置信息通過(guò)網(wǎng)絡(luò)發(fā)送回客戶(hù)端。步驟105,客戶(hù)端程序DeviceConfigClient. bin在通過(guò)本機(jī)PXE網(wǎng)絡(luò)訪問(wèn)接ロ接收到從服務(wù)端返回的設(shè)備驅(qū)動(dòng)程序配置信息后,在本機(jī)硬盤(pán)設(shè)置對(duì)應(yīng)的設(shè)備驅(qū)動(dòng)程序配置信息,然后結(jié)束本流程。本步驟中,客戶(hù)端解析本機(jī)硬盤(pán)上的文件系統(tǒng),將設(shè)備驅(qū)動(dòng)程序配置信息中的驅(qū)動(dòng)文件保存到C: \Windows\System32\Drivers\目錄下,將設(shè)備驅(qū)動(dòng)程序配置信息中的注冊(cè)■表參數(shù)合并到 C: \Windows\System32\Conf ig\System 文件中。 完成本步驟后,客戶(hù)端程序DeviceConfigClient. bin將系統(tǒng)的控制權(quán)轉(zhuǎn)移到本機(jī)硬盤(pán)安裝的操作系統(tǒng),即從本機(jī)硬盤(pán)開(kāi)始引導(dǎo)Windows XP。步驟106,客戶(hù)端程序DeviceConfigClient. bin將設(shè)備識(shí)別ID發(fā)送到服務(wù)端,請(qǐng)求其在服務(wù)端虛擬盤(pán)鏡像上設(shè)置對(duì)應(yīng)的設(shè)備驅(qū)動(dòng)程序配置信息。本步驟中,客戶(hù)端通過(guò)本機(jī)PXE網(wǎng)絡(luò)訪問(wèn)接ロ發(fā)送形式為VEN_10EC&DEV_8169的設(shè)備識(shí)別ID到服務(wù)端,請(qǐng)求其在服務(wù)端虛擬盤(pán)鏡像上設(shè)置RTL8169網(wǎng)卡的設(shè)備驅(qū)動(dòng)程序配
置信息。步驟107,服務(wù)端DeviceConfigServer. exe響應(yīng)上述請(qǐng)求,在虛擬盤(pán)鏡像上設(shè)置對(duì)應(yīng)的設(shè)備驅(qū)動(dòng)程序配置信息,然后結(jié)束本流程。本步驟中,服務(wù)端使用客戶(hù)端提交的設(shè)備識(shí)別ID檢索對(duì)應(yīng)的設(shè)備驅(qū)動(dòng)程序配置信息,得到RTL8169網(wǎng)卡的設(shè)備驅(qū)動(dòng)程序配置信息,然后解析虛擬盤(pán)鏡像上的文件系統(tǒng),將設(shè)備驅(qū)動(dòng)程序配置信息中的驅(qū)動(dòng)文件保存到鏡像的C: \Windows\System32\Drivers\目錄下,將設(shè)備驅(qū)動(dòng)程序配置信息中的注冊(cè)表參數(shù)合并到鏡像的C:\Windows\System32\Conf ig\System 文件中。完成本步驟后,客戶(hù)端程序DeviceConfigClient. bin將系統(tǒng)的控制權(quán)轉(zhuǎn)移到服務(wù)端虛擬盤(pán)鏡像安裝的操作系統(tǒng),即從網(wǎng)絡(luò)虛擬盤(pán)開(kāi)始引導(dǎo)Windows XP。至此,上述流程結(jié)束。以上所述僅為本發(fā)明的較佳實(shí)施例而已,并非用于限定本發(fā)明的保護(hù)范圍。凡在本發(fā)明的精神和原則之內(nèi),所作的任何修改、等同替換以及改進(jìn)等,均應(yīng)包含在本發(fā)明的保護(hù)范圍之內(nèi)。
權(quán)利要求
1.一種基于網(wǎng)絡(luò)的設(shè)備驅(qū)動(dòng)程序配置方法,其特征在于,該方法至少包括以下步驟a、確定客戶(hù)端PCI總線上所連接的硬件設(shè)備,并生成設(shè)備識(shí)別ID;b、判斷客戶(hù)端操作系統(tǒng)的加載模式;若為本機(jī)硬盤(pán)模式,則順序執(zhí)行步驟c和步驟d; 若為虛擬盤(pán)模式則執(zhí)行步驟e ;c、發(fā)送設(shè)備識(shí)別ID到服務(wù)端,請(qǐng)求服務(wù)端返回對(duì)應(yīng)的設(shè)備驅(qū)動(dòng)程序配置信息;d、在接收到服務(wù)端返回的對(duì)應(yīng)的設(shè)備驅(qū)動(dòng)程序配置信息后,在客戶(hù)端的本機(jī)硬盤(pán)設(shè)置 對(duì)應(yīng)的設(shè)備驅(qū)動(dòng)程序配置信息;e、發(fā)送設(shè)備識(shí)別ID到服務(wù)端,請(qǐng)求服務(wù)端在配置于服務(wù)端的虛擬盤(pán)鏡像上設(shè)置對(duì)應(yīng) 的設(shè)備驅(qū)動(dòng)程序配置信息、并等待服務(wù)端在虛擬盤(pán)鏡像設(shè)置對(duì)應(yīng)的設(shè)備驅(qū)動(dòng)程序配置信 肩、O
2.如權(quán)利要求1所述的方法,其特征在于還包括在客戶(hù)端的啟動(dòng)階段載入能執(zhí)行步 驟a至步驟e的系統(tǒng)。
3.如權(quán)利要求2所述的方法,其特征在于,所述啟動(dòng)階段為客戶(hù)端操作系統(tǒng)尚未加載 或尚未完全加載。
4.如權(quán)利要求1所述的方法,其特征在于,所述步驟a包括枚舉客戶(hù)端PCI總線上所 連接的硬件設(shè)備,并依據(jù)枚舉得到的PCI配置空間信息中的設(shè)備參數(shù)生成可供服務(wù)端進(jìn)行 檢索的設(shè)備識(shí)別ID。
5.如權(quán)利要求1所述的方法,其特征在于,所述步驟d中在客戶(hù)端的本機(jī)硬盤(pán)設(shè)置對(duì)應(yīng) 的設(shè)備驅(qū)動(dòng)程序配置信息包括解析客戶(hù)端的本機(jī)硬盤(pán)的文件系統(tǒng),并以該本機(jī)硬盤(pán)安裝 操作系統(tǒng)的約定路徑和格式,在該本機(jī)硬盤(pán)的文件系統(tǒng)中設(shè)置和保存對(duì)應(yīng)的設(shè)備驅(qū)動(dòng)程序配置信息。
6.如權(quán)利要求1所述的方法,其特征在于,所述步驟e中服務(wù)端在虛擬盤(pán)鏡像設(shè)置對(duì)應(yīng) 的設(shè)備驅(qū)動(dòng)程序配置信息包括服務(wù)端解析虛擬盤(pán)鏡像的文件系統(tǒng),并以該虛擬盤(pán)鏡像安 裝操作系統(tǒng)的約定路徑和格式,在該虛擬盤(pán)鏡像的文件系統(tǒng)中設(shè)置和保存對(duì)應(yīng)的設(shè)備驅(qū)動(dòng) 程序配置信息。
7.如權(quán)利要求1至3中任意一項(xiàng)所述的方法,其特征在于,所述步驟d之后進(jìn)一步包 括步驟f、將控制客戶(hù)端運(yùn)行的控制權(quán)轉(zhuǎn)移到客戶(hù)端的本機(jī)硬盤(pán)安裝的操作系統(tǒng)。
8.如權(quán)利要求1至3中任意一項(xiàng)所述的方法,其特征在于,所述步驟e之后進(jìn)一步包 括步驟g、將控制客戶(hù)端運(yùn)行的控制權(quán)轉(zhuǎn)移到服務(wù)端的虛擬盤(pán)鏡像安裝的操作系統(tǒng)。
全文摘要
本發(fā)明公開(kāi)了一種基于網(wǎng)絡(luò)的設(shè)備驅(qū)動(dòng)程序配置方法。本發(fā)明可在客戶(hù)端操作系統(tǒng)尚未加載或尚未完全加載時(shí),通過(guò)枚舉客戶(hù)端PCI總線上的硬件設(shè)備取得對(duì)應(yīng)設(shè)備的PCI配置空間信息,并且基于該信息中的設(shè)備參數(shù)生成可供服務(wù)端進(jìn)行檢索的設(shè)備識(shí)別ID。客戶(hù)端發(fā)送該設(shè)備識(shí)別ID到服務(wù)端,取決于客戶(hù)端操作系統(tǒng)的加載模式,如果為本機(jī)硬盤(pán)模式,服務(wù)端返回對(duì)應(yīng)的設(shè)備驅(qū)動(dòng)程序配置信息,客戶(hù)端保存該配置信息到本機(jī)硬盤(pán);如果為虛擬盤(pán)模式,服務(wù)端直接在虛擬盤(pán)鏡像上設(shè)置對(duì)應(yīng)的設(shè)備驅(qū)動(dòng)程序配置信息。應(yīng)用本發(fā)明,可集中維護(hù)客戶(hù)端的設(shè)備驅(qū)動(dòng)程序配置,提高管理效率。
文檔編號(hào)G06F13/10GK102662884SQ20121010993
公開(kāi)日2012年9月12日 申請(qǐng)日期2012年4月16日 優(yōu)先權(quán)日2012年4月16日
發(fā)明者何闖, 鄺耀華 申請(qǐng)人:湖北盛天網(wǎng)絡(luò)技術(shù)股份有限公司