一種網(wǎng)卡設(shè)備及其實(shí)現(xiàn)方法
【技術(shù)領(lǐng)域】
[0001]本發(fā)明涉及嵌入式開發(fā)和通信技術(shù),尤指一種通用串行總線(USB,UniversalSerial Bus)網(wǎng)卡設(shè)備及其實(shí)現(xiàn)方法。
【背景技術(shù)】
[0002]目前,免驅(qū)功能已成為通用串行總線(USB, Universal Serial Bus)網(wǎng)卡設(shè)備的一種實(shí)現(xiàn)趨勢(shì),這種具有免驅(qū)功能的USB網(wǎng)卡設(shè)備簡(jiǎn)單快捷。為了實(shí)現(xiàn)無線數(shù)據(jù)卡的免驅(qū)動(dòng)啟用,開發(fā)人員針對(duì)不同的操作系統(tǒng),也提出了相應(yīng)的解決方案,舉個(gè)例子來說,網(wǎng)絡(luò)驅(qū)動(dòng)接口規(guī)范(RNDIS, Remote Network Driver Interface Specificat1n)是微軟提出的基于USB的網(wǎng)絡(luò)接口規(guī)范,符合RNDIS的無線數(shù)據(jù)卡在Windows操作系統(tǒng)上啟用時(shí),會(huì)自動(dòng)安裝操作系統(tǒng)的RNDIS驅(qū)動(dòng),不需要安裝廠商提供的驅(qū)動(dòng),就可以直接進(jìn)行網(wǎng)絡(luò)連接和上網(wǎng)。同樣的,以太網(wǎng)控制規(guī)范(ECM,Ethernet Control Model)是USB通信設(shè)備類(CDC,Communicat1n Devices Class)規(guī)范規(guī)定的基于USB的網(wǎng)絡(luò)接口規(guī)范,符合ECM的無線數(shù)據(jù)卡在Linux操作系統(tǒng)、及MAC操作系統(tǒng)上啟用時(shí),會(huì)自動(dòng)安裝操作系統(tǒng)自帶的驅(qū)動(dòng),不需要安裝廠商提供的驅(qū)動(dòng),就可以直接進(jìn)行網(wǎng)絡(luò)連接和上網(wǎng)。在實(shí)際應(yīng)用中,具有免驅(qū)功能的USB網(wǎng)卡設(shè)備只需要在網(wǎng)卡設(shè)備中配置免安裝驅(qū)動(dòng)子設(shè)備,當(dāng)網(wǎng)卡設(shè)備插入計(jì)算機(jī)并上電后,啟動(dòng)免安裝驅(qū)動(dòng)子設(shè)備,并自動(dòng)安裝操作系統(tǒng)中對(duì)應(yīng)的驅(qū)動(dòng)文件。但是,ECM協(xié)議主要針對(duì)較低速率的網(wǎng)絡(luò),而隨著4G網(wǎng)絡(luò)的普及,ECM設(shè)備已經(jīng)成為網(wǎng)卡設(shè)備,尤其是低成本的USB網(wǎng)卡設(shè)備速率提升的一個(gè)瓶頸。
[0003]為了提升USB網(wǎng)卡設(shè)備的速率,現(xiàn)有的方法是通過采用更高成本的直接內(nèi)存存取(DMA, Direct Memory Access)和更強(qiáng)處理能力的CPU來實(shí)現(xiàn)。
[0004]上述方法能夠?qū)崿F(xiàn)完全的免驅(qū)功能,但需要增加硬件成本,對(duì)于低成本的網(wǎng)卡設(shè)備來講是很難接受的。
【發(fā)明內(nèi)容】
[0005]為了解決上述問題,本發(fā)明提出了一種網(wǎng)卡設(shè)備及其實(shí)現(xiàn)方法,能夠在提高網(wǎng)卡設(shè)備的速率的同時(shí),不增加硬件成本。
[0006]為了達(dá)到上述目的,本發(fā)明提出了一種網(wǎng)卡設(shè)備的實(shí)現(xiàn)方法,預(yù)先在網(wǎng)卡設(shè)備中配置安裝驅(qū)動(dòng)子設(shè)備和免安裝驅(qū)動(dòng)子設(shè)備;在所述網(wǎng)卡設(shè)備插入計(jì)算機(jī)并上電后,該方法包括:
[0007]檢測(cè)所述計(jì)算機(jī)當(dāng)前操作系統(tǒng);
[0008]當(dāng)檢測(cè)到當(dāng)前操作系統(tǒng)為第一系統(tǒng)時(shí),啟動(dòng)所述安裝驅(qū)動(dòng)子設(shè)備,安裝所述安裝驅(qū)動(dòng)子設(shè)備中的驅(qū)動(dòng)文件;
[0009]當(dāng)檢測(cè)到當(dāng)前操作系統(tǒng)為第二系統(tǒng)時(shí),啟動(dòng)所述免安裝驅(qū)動(dòng)子設(shè)備,自動(dòng)安裝當(dāng)前操作系統(tǒng)中的驅(qū)動(dòng)文件。
[0010]優(yōu)選地,所述弟一系統(tǒng)為L(zhǎng)INUX系統(tǒng)或MAC系統(tǒng);
[0011]所述啟動(dòng)所述安裝驅(qū)動(dòng)子設(shè)備,安裝所述安裝驅(qū)動(dòng)子設(shè)備中的驅(qū)動(dòng)文件包括:
[0012]所述安裝驅(qū)動(dòng)子設(shè)備上報(bào)所述網(wǎng)卡設(shè)備為光盤設(shè)備,并安裝所述安裝驅(qū)動(dòng)子設(shè)備中的驅(qū)動(dòng)文件。
[0013]優(yōu)選地,所述安裝驅(qū)動(dòng)子設(shè)備安裝驅(qū)動(dòng)文件完成后,該方法還包括:
[0014]將所述網(wǎng)卡設(shè)備枚舉為非ECM設(shè)備。
[0015]優(yōu)選地,所述非ECM設(shè)備為移動(dòng)寬帶接口模塊MBM設(shè)備或網(wǎng)絡(luò)驅(qū)動(dòng)接口規(guī)范RNDIS設(shè)備。
[0016]優(yōu)選地,所述免安裝驅(qū)動(dòng)子設(shè)備包括RNDIS設(shè)備;所述第二系統(tǒng)為WINDOWS系統(tǒng);所述啟動(dòng)所述免安裝驅(qū)動(dòng)子設(shè)備,自動(dòng)安裝當(dāng)前操作系統(tǒng)中的驅(qū)動(dòng)文件包括:
[0017]將所述網(wǎng)卡設(shè)備枚舉為RNDIS設(shè)備;
[0018]確定所述當(dāng)前操作系統(tǒng)支持RNDIS設(shè)備,自動(dòng)安裝當(dāng)前操作系統(tǒng)中的驅(qū)動(dòng)文件。
[0019]優(yōu)選地,所述免安裝驅(qū)動(dòng)子設(shè)備還包括MBM設(shè)備;所述第二系統(tǒng)為WIN8系統(tǒng);所述啟動(dòng)所述免安裝驅(qū)動(dòng)子設(shè)備,自動(dòng)安裝當(dāng)前操作系統(tǒng)中的驅(qū)動(dòng)文件包括:
[0020]將所述網(wǎng)卡設(shè)備枚舉為MBM設(shè)備;
[0021]確定所述當(dāng)前操作系統(tǒng)支持MBIM設(shè)備,自動(dòng)安裝當(dāng)前操作系統(tǒng)中的驅(qū)動(dòng)文件。
[0022]本發(fā)明還提出了一種網(wǎng)卡設(shè)備,至少包括:
[0023]配置模塊,用于預(yù)先配置安裝驅(qū)動(dòng)子設(shè)備和免安裝驅(qū)動(dòng)子設(shè)備;
[0024]檢測(cè)模塊,用于檢測(cè)網(wǎng)卡設(shè)備插入的計(jì)算機(jī)當(dāng)前操作系統(tǒng);
[0025]安裝驅(qū)動(dòng)子設(shè)備啟動(dòng)模塊,用于檢測(cè)到所述操作系統(tǒng)為第一系統(tǒng),啟動(dòng)所述安裝驅(qū)動(dòng)子設(shè)備,安裝所述安裝驅(qū)動(dòng)子設(shè)備中的驅(qū)動(dòng)文件;
[0026]免安裝驅(qū)動(dòng)子設(shè)備啟動(dòng)模塊,用于檢測(cè)到當(dāng)前操作系統(tǒng)為第二系統(tǒng),啟動(dòng)所述免安裝驅(qū)動(dòng)子設(shè)備,自動(dòng)安裝當(dāng)前操作系統(tǒng)中的驅(qū)動(dòng)文件。
[0027]優(yōu)選地,所述安裝驅(qū)動(dòng)子設(shè)備啟動(dòng)模塊,具體用于:
[0028]檢測(cè)到當(dāng)前操作系統(tǒng)為L(zhǎng)INUX系統(tǒng)或MAC系統(tǒng),所述安裝驅(qū)動(dòng)子設(shè)備上報(bào)所述網(wǎng)卡設(shè)備為光盤設(shè)備,并安裝所述安裝驅(qū)動(dòng)子設(shè)備中的驅(qū)動(dòng)文件。
[0029]優(yōu)選地,所述安裝驅(qū)動(dòng)子設(shè)備啟動(dòng)模塊,還用于:
[0030]所述安裝驅(qū)動(dòng)子設(shè)備安裝驅(qū)動(dòng)文件完成后,將所述網(wǎng)卡設(shè)備枚舉為非ECM設(shè)備。[0031 ] 優(yōu)選地,所述非ECM設(shè)備為移動(dòng)寬帶接口模塊MBM設(shè)備或網(wǎng)絡(luò)驅(qū)動(dòng)接口規(guī)范NDIS設(shè)備。
[0032]優(yōu)選地,所述免安裝驅(qū)動(dòng)子設(shè)備啟動(dòng)模塊,具體用于:
[0033]檢測(cè)到當(dāng)前操作系統(tǒng)為WINDOWS系統(tǒng);將所述網(wǎng)卡設(shè)備枚舉為RNDIS設(shè)備;確定所述當(dāng)前操作系統(tǒng)支持RNDIS設(shè)備,自動(dòng)安裝當(dāng)前操作系統(tǒng)中的驅(qū)動(dòng)文件。
[0034]優(yōu)選地,所述免安裝驅(qū)動(dòng)子設(shè)備啟動(dòng)模塊,還用于:
[0035]檢測(cè)到當(dāng)前操作系統(tǒng)為WIN8系統(tǒng);將所述網(wǎng)卡設(shè)備枚舉為MBIM設(shè)備;確定所述當(dāng)前操作系統(tǒng)支持MBIM設(shè)備,自動(dòng)安裝當(dāng)前操作系統(tǒng)中的驅(qū)動(dòng)文件。
[0036]與現(xiàn)有技術(shù)相比,本發(fā)明包括:檢測(cè)所述計(jì)算機(jī)當(dāng)前操作系統(tǒng);當(dāng)檢測(cè)到當(dāng)前操作系統(tǒng)為第一系統(tǒng)時(shí),啟動(dòng)所述安裝驅(qū)動(dòng)子設(shè)備,安裝所述安裝驅(qū)動(dòng)子設(shè)備中的驅(qū)動(dòng)文件;當(dāng)檢測(cè)到當(dāng)前操作系統(tǒng)為第二系統(tǒng)時(shí),啟動(dòng)所述免安裝驅(qū)動(dòng)子設(shè)備,自動(dòng)安裝當(dāng)前操作系統(tǒng)中的驅(qū)動(dòng)文件。通過本發(fā)明的方案,在第一系統(tǒng)中采用非免驅(qū)的方式,在第二系統(tǒng)中采用免驅(qū)的方式,能夠在提高網(wǎng)卡設(shè)備的速率的同時(shí),不增加硬件成本。
【附圖說明】
[0037]下面對(duì)本發(fā)明實(shí)施例中的附圖進(jìn)行說明,實(shí)施例中的附圖是用于對(duì)本發(fā)明的進(jìn)一步理解,與說明書一起用于解釋本發(fā)明,并不構(gòu)成對(duì)本發(fā)明保護(hù)范圍的限制。
[0038]圖1為本發(fā)明網(wǎng)卡設(shè)備的實(shí)現(xiàn)方法的流程圖;
[0039]圖2為本發(fā)明網(wǎng)卡設(shè)備的組成結(jié)構(gòu)示意圖。
【具體實(shí)施方式】
[0040]為了便于本領(lǐng)域技術(shù)人員的理解,下面結(jié)合附圖對(duì)本發(fā)明作進(jìn)一步的描述,并不能用來限制本發(fā)明的保護(hù)范圍。
[0041]參見圖1,本發(fā)明提出了一種網(wǎng)卡設(shè)備的實(shí)現(xiàn)方法,預(yù)先在網(wǎng)卡設(shè)備中配置安裝驅(qū)動(dòng)子設(shè)備和免安裝驅(qū)動(dòng)子設(shè)備。具體可以采用現(xiàn)有技術(shù)進(jìn)行配置,并不用于限定本發(fā)明的保護(hù)范圍。
[0042]在網(wǎng)卡設(shè)備插入計(jì)算機(jī)并上電后,該方法包括:
[0043]步驟100、檢測(cè)計(jì)算機(jī)當(dāng)前操作系統(tǒng)。
[0044]步驟101、當(dāng)檢測(cè)到當(dāng)前操作系統(tǒng)為第一系統(tǒng)時(shí),啟動(dòng)安裝驅(qū)動(dòng)子設(shè)備,安裝安裝驅(qū)動(dòng)子設(shè)備中的驅(qū)動(dòng)文件。
[0045]本步驟中,第一系統(tǒng)為L(zhǎng)INUX系統(tǒng)或蘋果(MAC,Macintosh)系統(tǒng)。
[0046]本步驟中,需要手動(dòng)安裝所述安裝驅(qū)動(dòng)子設(shè)備中的驅(qū)動(dòng)文件。
[0047]本步驟中,安裝驅(qū)動(dòng)子設(shè)備上報(bào)網(wǎng)卡設(shè)備為光盤設(shè)備并安裝安裝驅(qū)動(dòng)子設(shè)備中的驅(qū)動(dòng)文件。
[0048]安裝驅(qū)動(dòng)子設(shè)備安裝驅(qū)動(dòng)文件完成后,將網(wǎng)卡設(shè)備枚舉為非ECM設(shè)備。