專利名稱:數(shù)據(jù)卡設(shè)備網(wǎng)絡(luò)接口聯(lián)網(wǎng)的方法和裝置的制作方法
技術(shù)領(lǐng)域:
本發(fā)明涉及通信技術(shù)領(lǐng)域,尤其涉及一種數(shù)據(jù)卡設(shè)備網(wǎng)絡(luò)接口聯(lián)網(wǎng)的方法和裝置。
背景技術(shù):
在信息技術(shù)不斷發(fā)展的今天,對無線數(shù)據(jù)終端設(shè)備提出了更高的要求,不僅對 語音、短信及一些附加功能要求越來越多,而且對聯(lián)網(wǎng)的上下行速率要求越來越高,速 率是無線數(shù)據(jù)卡設(shè)備最重要的性能指標(biāo)。
無線數(shù)據(jù)卡設(shè)備在計算機(jī)上面聯(lián)網(wǎng)有兩種方式,一種是傳統(tǒng)的虛擬成串口的方 式聯(lián)網(wǎng),另一種是虛擬成網(wǎng)絡(luò)接口 EthemetAdaptor的方式聯(lián)網(wǎng)。傳統(tǒng)的虛擬串口的方式 在Windows、Mac、Linux多平臺上面都已經(jīng)實現(xiàn),但存在上網(wǎng)寬帶和速率上的瓶頸,上 下行速率已經(jīng)遠(yuǎn)不能滿足用戶的需求。為了提高數(shù)據(jù)卡的速率,現(xiàn)在越來越傾向于第二 種方式。在Windows上面虛擬網(wǎng)絡(luò)接口進(jìn)行聯(lián)網(wǎng)已經(jīng)實現(xiàn),而在Mac、Linux其它操作 系統(tǒng)上面還沒有實現(xiàn)這種聯(lián)網(wǎng)方式,在很大程度上制約了相關(guān)產(chǎn)品的發(fā)展。但在全球電 腦用戶中,Mac用戶占有不小的市場份額,越來越多的無線數(shù)據(jù)卡設(shè)備明確要求需支持 Mac電腦。
因此,有必要提供一種在Mac電腦上面通過無線數(shù)據(jù)卡設(shè)備網(wǎng)絡(luò)接口聯(lián)網(wǎng)的方 法或裝置。發(fā)明內(nèi)容
本發(fā)明的主要目的在于提供一種數(shù)據(jù)卡設(shè)備網(wǎng)絡(luò)接口聯(lián)網(wǎng)方法和裝置,旨在實 現(xiàn)Mac系統(tǒng)與數(shù)據(jù)卡設(shè)備進(jìn)行數(shù)據(jù)交互以及聯(lián)網(wǎng)等操作。
本發(fā)明提供一種數(shù)據(jù)卡設(shè)備網(wǎng)絡(luò)接口聯(lián)網(wǎng)的方法,包括以下步驟
在配置Mac操作系統(tǒng)的計算機(jī)中加載用戶應(yīng)用模塊、控制指令庫以及數(shù)據(jù)卡設(shè) 備驅(qū)動程序;所述控制指令庫可提供應(yīng)用程序接口 API;所述用戶應(yīng)用模塊包括瀏覽器 及指令發(fā)送模塊;
當(dāng)數(shù)據(jù)卡設(shè)備與計算機(jī)相連且驅(qū)動程序加載成功時,根據(jù)數(shù)據(jù)卡設(shè)備上報的設(shè) 備屬性創(chuàng)建與其匹配的虛擬網(wǎng)絡(luò)接口;
用戶應(yīng)用模塊將控制指令通過API發(fā)送至控制指令庫;所述控制指令包括USB 協(xié)議通信指令及高通芯片接口指令;
控制指令庫對所述控制指令進(jìn)行初步打包處理,并通過計算機(jī)中的用戶輸入輸 出類接口輸出;
上層驅(qū)動解析控制指令庫輸入的包含控制指令的數(shù)據(jù)包,按通信控制協(xié)議格式 對控制指令進(jìn)行封裝并轉(zhuǎn)發(fā);
下層驅(qū)動將包含控制指令的數(shù)據(jù)包通過通信管道發(fā)送至數(shù)據(jù)卡設(shè)備。
優(yōu)選地,所述下層驅(qū)動將包含控制指令的數(shù)據(jù)包通過通信管道發(fā)送至數(shù)據(jù)卡設(shè)備中包括
將控制指令和數(shù)據(jù)流進(jìn)行分類,分別通過控制管道、數(shù)據(jù)流進(jìn)/出管道與數(shù)據(jù) 卡設(shè)備進(jìn)行數(shù)據(jù)交互。
優(yōu)選地,在執(zhí)行所述下層驅(qū)動將包含控制指令的數(shù)據(jù)包通過通信管道發(fā)送至數(shù) 據(jù)卡設(shè)備之后包括
聯(lián)網(wǎng)后,用戶應(yīng)用模塊通過Mac操作系統(tǒng)中的TCP/UDP傳輸層和網(wǎng)絡(luò)層與上層 驅(qū)動進(jìn)行通信,將網(wǎng)絡(luò)中的數(shù)據(jù)流通過網(wǎng)絡(luò)層傳輸至上層驅(qū)動;
上層驅(qū)動將通過Mac操作系統(tǒng)網(wǎng)絡(luò)層傳送的網(wǎng)絡(luò)數(shù)據(jù)流打包后轉(zhuǎn)發(fā)至下層驅(qū) 動。
優(yōu)選地,上述方法還包括
在用戶界面中顯示聯(lián)網(wǎng)控制標(biāo)識及數(shù)據(jù)流量統(tǒng)計標(biāo)識,接受用戶的聯(lián)網(wǎng)操作并 在數(shù)據(jù)交互過程中統(tǒng)計數(shù)據(jù)流量。
優(yōu)選地,在執(zhí)行所述當(dāng)數(shù)據(jù)卡設(shè)備與計算機(jī)相連且驅(qū)動程序加載成功時,根據(jù) 數(shù)據(jù)卡設(shè)備上報的設(shè)備屬性創(chuàng)建與其匹配的虛擬網(wǎng)絡(luò)接口之前包括
根據(jù)數(shù)據(jù)卡設(shè)備上報的設(shè)備屬性判斷是否加載驅(qū)動;若是,則為數(shù)據(jù)卡設(shè)備加 載驅(qū)動程序。
本發(fā)明提供一種數(shù)據(jù)卡設(shè)備網(wǎng)絡(luò)接口聯(lián)網(wǎng)的裝置,其包括
UI用戶界面,用于在配置Mac操作系統(tǒng)的計算機(jī)中加載用戶應(yīng)用模塊、控制指 令庫以及數(shù)據(jù)卡設(shè)備驅(qū)動程序;所述控制指令庫可提供應(yīng)用程序接口 API;所述用戶應(yīng) 用模塊包括瀏覽器及指令發(fā)送模塊;
上層驅(qū)動,用于當(dāng)數(shù)據(jù)卡設(shè)備與計算機(jī)相連且驅(qū)動程序加載成功時,根據(jù)數(shù)據(jù) 卡設(shè)備上報的設(shè)備屬性創(chuàng)建與其匹配的虛擬網(wǎng)絡(luò)接口 ;所述上層驅(qū)動還用于解析控制指 令庫輸入的包含控制指令的數(shù)據(jù)包,按通信控制協(xié)議格式對控制指令進(jìn)行封裝并轉(zhuǎn)發(fā);
用戶應(yīng)用模塊,用于將控制指令通過API發(fā)送至控制指令庫;
控制指令庫,用于對所述控制指令進(jìn)行初步打包處理,并通過計算機(jī)中的用戶 輸入輸出類接口輸出;
下層驅(qū)動,用于將控制指令通過控制管道發(fā)送至數(shù)據(jù)卡設(shè)備。
優(yōu)選地,所述下層驅(qū)動進(jìn)一步用于
將控制指令和數(shù)據(jù)流進(jìn)行分類,分別通過控制管道、數(shù)據(jù)流進(jìn)/出管道與數(shù)據(jù) 卡設(shè)備進(jìn)行數(shù)據(jù)交互。
優(yōu)選地,所述用戶應(yīng)用模塊還用于聯(lián)網(wǎng)后,通過Mac操作系統(tǒng)中的TCP/UDP傳 輸層和網(wǎng)絡(luò)層與上層驅(qū)動進(jìn)行通信,將網(wǎng)絡(luò)中的數(shù)據(jù)流通過網(wǎng)絡(luò)層傳輸至上層驅(qū)動;
所述上層驅(qū)動還用于將通過所述網(wǎng)絡(luò)中的數(shù)據(jù)流打包后轉(zhuǎn)發(fā)至下層驅(qū)動。
優(yōu)選地,上述裝置還包括
網(wǎng)絡(luò)處理模塊,用于在用戶界面中顯示聯(lián)網(wǎng)控制標(biāo)識及數(shù)據(jù)流量統(tǒng)計標(biāo)識,接 受用戶的聯(lián)網(wǎng)操作并在數(shù)據(jù)交互過程中統(tǒng)計數(shù)據(jù)流量。
優(yōu)選地,所述下層驅(qū)動還用于
根據(jù)數(shù)據(jù)卡設(shè)備上報的設(shè)備屬性判斷是否加載驅(qū)動;若是,則為數(shù)據(jù)卡設(shè)備加 載驅(qū)動程序。
本發(fā)明所提供的數(shù)據(jù)卡設(shè)備網(wǎng)絡(luò)接口聯(lián)網(wǎng)方法或裝置,通過設(shè)置上述上層驅(qū) 動、下層驅(qū)動并在Mac操作系統(tǒng)中加載上述控制指令庫、用戶應(yīng)用模塊及數(shù)據(jù)卡驅(qū)動程 序,可實現(xiàn)與無線數(shù)據(jù)卡設(shè)備進(jìn)行數(shù)據(jù)交互,并通過無線數(shù)據(jù)卡設(shè)備進(jìn)行聯(lián)網(wǎng)操作,填 補(bǔ)了現(xiàn)有技術(shù)的空白。本發(fā)明通過數(shù)據(jù)卡設(shè)備的網(wǎng)絡(luò)接口進(jìn)行聯(lián)網(wǎng),相比原來通過串口 的方式聯(lián)網(wǎng),下行速率有了很大的提高,能夠更好的滿足用戶的需求。另外,上下層驅(qū) 動分離,構(gòu)造的系統(tǒng)穩(wěn)定性較高,復(fù)雜性也較低,容錯性較好,功能分離程度較高,方 便以后USB協(xié)議相關(guān)控制指令新功能的添加。
圖1為本發(fā)明一實施方式中數(shù)據(jù)卡設(shè)備網(wǎng)絡(luò)接口聯(lián)網(wǎng)的方法流程圖2為本發(fā)明一實施例中聯(lián)網(wǎng)后數(shù)據(jù)交互的流程圖3為本發(fā)明一實施方式中數(shù)據(jù)卡設(shè)備網(wǎng)絡(luò)接口聯(lián)網(wǎng)的裝置的結(jié)構(gòu)示意圖4為本發(fā)明一實施例中數(shù)據(jù)卡設(shè)備網(wǎng)絡(luò)接口聯(lián)網(wǎng)的裝置聯(lián)網(wǎng)的流程圖5為本發(fā)明一實施例中數(shù)據(jù)卡設(shè)備網(wǎng)絡(luò)接口聯(lián)網(wǎng)的裝置進(jìn)行數(shù)據(jù)交互的流程 圖。
本發(fā)明目的的實現(xiàn)、功能特點及優(yōu)點將結(jié)合實施例,參照附圖做進(jìn)一步說明。
具體實施方式
應(yīng)當(dāng)理解,此處所描述的具體實施例僅僅用以解釋本發(fā)明,并不用于限定本發(fā) 明。
圖1示出了本發(fā)明的一個實施方式中數(shù)據(jù)卡設(shè)備網(wǎng)絡(luò)接口聯(lián)網(wǎng)的方法流程,該 流程包括以下步驟
步驟S10,在配置Mac操作系統(tǒng)的計算機(jī)中加載用戶應(yīng)用模塊、控制指令庫以及 數(shù)據(jù)卡設(shè)備驅(qū)動程序;所述控制指令庫可提供應(yīng)用程序接口 API (Application ProgrammingInterface);所述用戶應(yīng)用模塊包括瀏覽器及指令發(fā)送模塊。用戶應(yīng)用模塊可以是用戶應(yīng) 用程序,可發(fā)送聯(lián)網(wǎng)、斷網(wǎng)、統(tǒng)計數(shù)據(jù)流、瀏覽網(wǎng)頁等控制指令。在計算機(jī)中加載用戶 應(yīng)用程序及數(shù)據(jù)庫為本領(lǐng)域技術(shù)人員所周知,在此不作贅述。
步驟幻0,當(dāng)數(shù)據(jù)卡設(shè)備與計算機(jī)相連且驅(qū)動程序加載成功時,根據(jù)數(shù)據(jù)卡設(shè) 備上報的設(shè)備屬性創(chuàng)建與其匹配的虛擬網(wǎng)絡(luò)接口;在一實施例中,當(dāng)數(shù)據(jù)卡設(shè)備與計算 機(jī)相連時,可判斷其是否需要加載驅(qū)動程序,若需要,則加載驅(qū)動程序,以便計算機(jī)與 數(shù)據(jù)卡設(shè)備進(jìn)行數(shù)據(jù)交互。虛擬網(wǎng)絡(luò)接口可以是Ethernet Adaptor,并在用戶可配置的 Network里面顯示出來。
步驟S30,用戶應(yīng)用模塊將控制指令通過API發(fā)送至控制指令庫;所述控制指令 包括USB協(xié)議通信指令及高通芯片接口指令;通過USB協(xié)議通信指令可實現(xiàn)計算機(jī)與數(shù) 據(jù)卡設(shè)備之間的數(shù)據(jù)交互;通過高通芯片接口(QUALCOMM MSM biterface,QMI)指令可實現(xiàn)與網(wǎng)絡(luò)連接。
步驟S40,控制指令庫對所述控制指令進(jìn)行初步打包處理,并通過計算機(jī)中的用 戶輸入輸出類接口輸出;控制指令庫可以是一函數(shù)庫,其中包含多個控制指令,此外, 控制指令庫還可為Mac操作系統(tǒng)提供API,以接受用戶應(yīng)用模塊發(fā)送的指令,并將指令打包轉(zhuǎn)發(fā)。
步驟S50,上層驅(qū)動解析控制指令庫輸入的包含控制指令的數(shù)據(jù)包,按通信控制 協(xié)議格式對控制指令進(jìn)行封裝并轉(zhuǎn)發(fā);上層驅(qū)動需實現(xiàn)兩方面功能,一方面繼承系統(tǒng)的 用戶輸入輸出(IOUserClient)類,負(fù)責(zé)與用戶界面UI通信并處理控制指令(例如高通芯 片接口 QMI指令)相關(guān)的數(shù)據(jù)流,另一方面繼承系統(tǒng)的網(wǎng)絡(luò)控制(IOEthemetController) 類,處理網(wǎng)絡(luò)相關(guān)數(shù)據(jù)流。
步驟S60,下層驅(qū)動將包含控制指令的數(shù)據(jù)包通過通信管道發(fā)送至數(shù)據(jù)卡設(shè)備。 下層驅(qū)動可提供通信管道,以供上層驅(qū)動與數(shù)據(jù)卡設(shè)備進(jìn)行通信,在一實施例中,下層 驅(qū)動可分別通過控制管道、數(shù)據(jù)輸入/輸出管道與數(shù)據(jù)卡設(shè)備進(jìn)行數(shù)據(jù)交互,以實現(xiàn)計 算機(jī)與數(shù)據(jù)卡設(shè)備進(jìn)行通信的目的。
應(yīng)當(dāng)說明的是,本發(fā)明實施例中,數(shù)據(jù)卡設(shè)備為具有網(wǎng)絡(luò)接口的無線數(shù)據(jù)卡設(shè) 備,其可通過網(wǎng)絡(luò)接口連接到計算機(jī),Mac操作系統(tǒng)中所有與網(wǎng)絡(luò)接口相關(guān)的控制指令 和網(wǎng)絡(luò)數(shù)據(jù)都通過此接口與數(shù)據(jù)卡設(shè)備進(jìn)行交互。
本發(fā)明實施方式通過設(shè)置上述上層驅(qū)動、下層驅(qū)動并在Mac操作系統(tǒng)中加載上 述控制指令庫、用戶應(yīng)用模塊及數(shù)據(jù)卡驅(qū)動程序,可實現(xiàn)與無線數(shù)據(jù)卡設(shè)備進(jìn)行數(shù)據(jù)交 互,并通過無線數(shù)據(jù)卡設(shè)備進(jìn)行聯(lián)網(wǎng)操作,填補(bǔ)了現(xiàn)有技術(shù)的空白。并且,相比原來通 過串口的方式聯(lián)網(wǎng),下行速率有了很大的提高。其中一款高速數(shù)據(jù)卡支持下行速率可達(dá) 到21Mb/s,用原串口聯(lián)網(wǎng)方法下載速率則只能達(dá)到9.5Mb/s,在同樣的前提下用本發(fā)明 的方法,下載速率可以達(dá)到19Mb/s,基本達(dá)到設(shè)備能夠達(dá)到的速率要求,能夠很好的滿 足用戶的需求。
在一實施例中,若通過控制指令,數(shù)據(jù)卡設(shè)備已與網(wǎng)絡(luò)連接,則上述步驟S60 中可具體包括
步驟S61,聯(lián)網(wǎng)后,用戶應(yīng)用模塊通過Mac操作系統(tǒng)中的TCP/UDP傳輸層和網(wǎng) 絡(luò)層與上層驅(qū)動進(jìn)行通信,將網(wǎng)絡(luò)中的數(shù)據(jù)流通過網(wǎng)絡(luò)層傳輸至上層驅(qū)動;
步驟S62,上層驅(qū)動將通過所述網(wǎng)絡(luò)中的數(shù)據(jù)流打包后轉(zhuǎn)發(fā)至下層驅(qū)動;
步驟S63,將控制指令和數(shù)據(jù)流進(jìn)行分類,分別通過控制管道、數(shù)據(jù)流進(jìn)/出管 道與數(shù)據(jù)卡設(shè)備進(jìn)行數(shù)據(jù)交互。
上述方法流程中,還可包括在用戶界面中顯示聯(lián)網(wǎng)控制標(biāo)識及數(shù)據(jù)流量統(tǒng)計標(biāo) 識,接受用戶的聯(lián)網(wǎng)操作并在數(shù)據(jù)交互過程中統(tǒng)計數(shù)據(jù)流量的步驟??稍赨I用戶界面 中為用戶提供可操作、圖形化的界面,在一實施例中,可在UI用戶界面增設(shè)網(wǎng)絡(luò)聯(lián)網(wǎng)控 制和數(shù)據(jù)統(tǒng)計的功能模塊,以提供聯(lián)網(wǎng)操作,并可獲得統(tǒng)計信息,對參數(shù)設(shè)置,狀態(tài)顯 示,以及通過Mac操作系統(tǒng)應(yīng)用程序進(jìn)行聯(lián)網(wǎng)等操作。
此外,本發(fā)明上述方法流程中,還可包括利用電源、線程、數(shù)據(jù)同步管理等模 塊對無線數(shù)據(jù)卡進(jìn)行電源管理和對Mac操作系統(tǒng)與無線數(shù)據(jù)卡交互的數(shù)據(jù)流進(jìn)行同步和 線程調(diào)度管理等,其中電源管理可包括正常使用時的上電模式和休眠狀態(tài)時的低電模式寸。
本發(fā)明提供一種數(shù)據(jù)卡設(shè)備網(wǎng)絡(luò)接口聯(lián)網(wǎng)的裝置,可用以實現(xiàn)上述方法流程。 參照圖3,該數(shù)據(jù)卡設(shè)備網(wǎng)絡(luò)接口聯(lián)網(wǎng)的裝置包括
UI用戶界面10,用于在配置Mac操作系統(tǒng)的計算機(jī)中加載用戶應(yīng)用模塊30、控制指令庫40以及數(shù)據(jù)卡設(shè)備驅(qū)動程序;所述控制指令庫40可提供應(yīng)用程序接口 API;所 述用戶應(yīng)用模塊30包括瀏覽器及指令發(fā)送模塊;用戶應(yīng)用模塊30可以是用戶應(yīng)用程序, 可發(fā)送聯(lián)網(wǎng)、斷網(wǎng)、統(tǒng)計數(shù)據(jù)流、瀏覽網(wǎng)頁等控制指令。在計算機(jī)中加載用戶應(yīng)用程序 及數(shù)據(jù)庫為本領(lǐng)域技術(shù)人員所周知,在此不作贅述。
上層驅(qū)動20,用于當(dāng)數(shù)據(jù)卡設(shè)備50與計算機(jī)相連且驅(qū)動程序加載成功時,根據(jù) 數(shù)據(jù)卡設(shè)備50上報的設(shè)備屬性創(chuàng)建與其匹配的虛擬網(wǎng)絡(luò)接口 ;所述上層驅(qū)動20還用于解 析控制指令庫輸入的包含控制指令的數(shù)據(jù)包,按通信控制協(xié)議格式對控制指令進(jìn)行封裝 并轉(zhuǎn)發(fā);在一實施例中,當(dāng)數(shù)據(jù)卡設(shè)備50與計算機(jī)相連時,可判斷其是否需要加載驅(qū)動 程序,若需要,則加載驅(qū)動程序,以便計算機(jī)與數(shù)據(jù)卡設(shè)備50進(jìn)行數(shù)據(jù)交互。虛擬網(wǎng)絡(luò) 接口可以是Ethernet Adaptor,并在用戶可配置的Network里面顯示出來。
用戶應(yīng)用模塊30,用于將控制指令通過API發(fā)送至控制指令庫40 ;所述控制指 令包括USB協(xié)議通信指令及高通芯片接口指令;通過USB協(xié)議通信指令可實現(xiàn)計算機(jī)與 數(shù)據(jù)卡設(shè)備50之間的數(shù)據(jù)交互;通過高通芯片接口(QUALCOMMMSMbiterface,QMI) 指令可實現(xiàn)與網(wǎng)絡(luò)連接。
控制指令庫40,用于對所述控制指令進(jìn)行初步打包處理,并通過計算機(jī)中的 用戶輸入輸出類接口輸出;控制指令庫40可以是一函數(shù)庫,且可提供應(yīng)用程序接口 API (Application Programming Interface);所述用戶應(yīng)用模塊30包括瀏覽器及指令發(fā)送模塊??刂浦噶顜?0可以是一函數(shù)庫,其中包含多個控制指令,此外,控制指令庫40還 可為Mac操作系統(tǒng)提供API,以接受用戶應(yīng)用模塊30發(fā)送的指令,并將指令打包轉(zhuǎn)發(fā)。
下層驅(qū)動60,用于將包含控制指令的數(shù)據(jù)包通過通信管道發(fā)送至數(shù)據(jù)卡設(shè)備 50。下層驅(qū)動60可提供通信管道,以供上層驅(qū)動20與數(shù)據(jù)卡設(shè)備50進(jìn)行通信,在一實 施例中,下層驅(qū)動60可分別通過控制管道、數(shù)據(jù)輸入/輸出管道與數(shù)據(jù)卡設(shè)備50進(jìn)行數(shù) 據(jù)交互,以實現(xiàn)計算機(jī)與數(shù)據(jù)卡設(shè)備50進(jìn)行通信的目的。
在一實施例中,用戶應(yīng)用模塊30還用于聯(lián)網(wǎng)后,通過Mac操作系統(tǒng)中的TCP/ UDP傳輸層和網(wǎng)絡(luò)層與上層驅(qū)動進(jìn)行通信,將網(wǎng)絡(luò)中的數(shù)據(jù)流通過網(wǎng)絡(luò)層傳輸至上層驅(qū) 動20。上層驅(qū)動20還用于將通過所述網(wǎng)絡(luò)中的數(shù)據(jù)流打包后轉(zhuǎn)發(fā)至下層驅(qū)動60。下層 驅(qū)動60進(jìn)一步用于將控制指令和數(shù)據(jù)流進(jìn)行分類,分別通過控制管道、數(shù)據(jù)流進(jìn)/出管 道與數(shù)據(jù)卡設(shè)備50進(jìn)行數(shù)據(jù)交互。
在一實施例中,上述裝置還可包括網(wǎng)絡(luò)處理模塊,用于在用戶界面中顯示聯(lián)網(wǎng) 控制標(biāo)識及數(shù)據(jù)流量統(tǒng)計標(biāo)識,接受用戶的聯(lián)網(wǎng)操作并在數(shù)據(jù)交互過程中統(tǒng)計數(shù)據(jù)流 量。可在UI用戶界面增設(shè)網(wǎng)絡(luò)處理模塊以提供聯(lián)網(wǎng)操作,并獲得統(tǒng)計信息,對參數(shù)設(shè) 置,狀態(tài)顯示,以及通過Mac操作系統(tǒng)應(yīng)用程序進(jìn)行聯(lián)網(wǎng)等操作。
此外,上述裝置還可包括電源、線程、數(shù)據(jù)同步管理等模塊,用以對無線數(shù)據(jù) 卡進(jìn)行電源管理和對Mac操作系統(tǒng)與無線數(shù)據(jù)卡交互的數(shù)據(jù)流進(jìn)行同步和線程調(diào)度管理 等,其中電源管理可包括正常使用時的上電模式和休眠狀態(tài)時的低電模式等。
參照圖4,為本發(fā)明一實施例中數(shù)據(jù)卡設(shè)備網(wǎng)絡(luò)接口聯(lián)網(wǎng)的裝置進(jìn)行聯(lián)網(wǎng)操作的 流程圖。該流程包括以下步驟
步驟S101,數(shù)據(jù)卡設(shè)備插入計算機(jī);在此之前,網(wǎng)絡(luò)接口驅(qū)動、函數(shù)庫和用戶 應(yīng)用程序都已經(jīng)安裝到計算機(jī),當(dāng)具有網(wǎng)絡(luò)接口功能的數(shù)據(jù)卡設(shè)備插入安裝有Mac操作系統(tǒng)的計算機(jī)時,網(wǎng)絡(luò)接口驅(qū)動根據(jù)上報的設(shè)備判斷是否加載驅(qū)動,經(jīng)判斷且驅(qū)動能夠 加載成功則轉(zhuǎn)到步驟S102,如果驅(qū)動不能成功加載則轉(zhuǎn)步驟S106。
步驟S102,判斷設(shè)備驅(qū)動是否加載成功;若驅(qū)動成功加載,并根據(jù)數(shù)據(jù)卡設(shè)備 的上報情況虛擬一個網(wǎng)絡(luò)接口 Ethernet Adaptor,并在用戶可配置的Network里面顯示出 來,同時轉(zhuǎn)到步驟S103。
步驟S103,用戶應(yīng)用模塊通過控制指令庫發(fā)送控制指令至數(shù)據(jù)卡設(shè)備,并判 斷聯(lián)網(wǎng)是否成功;例如,用戶應(yīng)用程序通過函數(shù)庫與上層驅(qū)動通信,進(jìn)而訪問數(shù)據(jù)卡設(shè) 備,進(jìn)行聯(lián)網(wǎng)操作,如果通過控制指令能夠聯(lián)上網(wǎng)則繼續(xù)往下轉(zhuǎn)到步驟S105,如果聯(lián)網(wǎng) 失敗轉(zhuǎn)到步驟S104。
步驟S104,檢查設(shè)備及使用的網(wǎng)絡(luò)是否異常,如果異常進(jìn)行合適的配置和修 復(fù),轉(zhuǎn)到步驟S103繼續(xù)進(jìn)行聯(lián)網(wǎng)。
步驟S105,用戶應(yīng)用模塊通過上層驅(qū)動和下層驅(qū)動與數(shù)據(jù)卡設(shè)備進(jìn)行數(shù)據(jù)交 互,滿足用戶上網(wǎng)的各種需求。如果用戶進(jìn)行斷網(wǎng)和從計算機(jī)中拔出數(shù)據(jù)卡設(shè)備操作, 則轉(zhuǎn)到步驟S106。
步驟S106,設(shè)備驅(qū)動自動釋放,且虛擬出來的網(wǎng)絡(luò)接口自動消失,結(jié)束。
參照圖5,為本發(fā)明一實施例中數(shù)據(jù)卡設(shè)備網(wǎng)絡(luò)接口聯(lián)網(wǎng)的裝置數(shù)據(jù)卡網(wǎng)絡(luò)接口 數(shù)據(jù)交互的流程,圖中箭頭只標(biāo)出了數(shù)據(jù)從計算機(jī)向數(shù)據(jù)卡設(shè)備的流出方向,其流入的 方向如流出的方向相反,可以逆向理解,包括如下具體步驟
步驟幻01,用戶應(yīng)用模塊發(fā)送控制指令至API;例如用戶應(yīng)用程序調(diào)用與控制 指令相關(guān)的API,例如包括聯(lián)網(wǎng)和數(shù)據(jù)統(tǒng)計等函數(shù)接口,發(fā)送QMI聯(lián)網(wǎng)指令至控制指令 庫庫,轉(zhuǎn)到步驟幻02。
步驟S202,控制指令庫對控制指令進(jìn)行初步打包處理;例如與數(shù)據(jù)卡設(shè)備交互 的控制指令進(jìn)入函數(shù)庫,函數(shù)庫把需要交互的指令進(jìn)行初步的打包,并調(diào)用系統(tǒng)輸入輸 出庫(IOKtlib)接口訪問驅(qū)動上層,轉(zhuǎn)到步驟S203。
步驟幻03,上層驅(qū)動解析包含控制指令的數(shù)據(jù)包,將其封裝后轉(zhuǎn)發(fā)至下層驅(qū) 動;上層驅(qū)動其中一部分繼承了 IOUserClient類,接收控制指令函數(shù)庫里面到來的數(shù) 據(jù),并控制協(xié)議格式進(jìn)行封裝,繼續(xù)往下傳到驅(qū)動下層,轉(zhuǎn)到步驟S204。
步驟S204,下層驅(qū)動對從上層驅(qū)動送來的數(shù)據(jù),按照控制指令和網(wǎng)絡(luò)數(shù)據(jù)流進(jìn) 行分類,分別通過控制管道、hi/Out管道與無線數(shù)據(jù)卡設(shè)備進(jìn)行數(shù)據(jù)交互,以實現(xiàn)計算 機(jī)與數(shù)據(jù)卡設(shè)備進(jìn)行通信的目的。如果通過控制指令數(shù)據(jù)卡設(shè)備已經(jīng)聯(lián)上網(wǎng),則轉(zhuǎn)到步 驟 S205。
步驟幻05,用戶應(yīng)用模塊通過Mac操作系統(tǒng)中TCP/UDP傳輸層IP網(wǎng)絡(luò)層傳送 數(shù)據(jù)流;系統(tǒng)中的應(yīng)用程序如瀏覽器通過Mac OS中的TCP/UDP傳輸層及網(wǎng)絡(luò)層與驅(qū)動 上層通信,轉(zhuǎn)到步驟幻06。
步驟幻06,上層驅(qū)動對網(wǎng)絡(luò)數(shù)據(jù)流進(jìn)行處理。從網(wǎng)絡(luò)層到來的網(wǎng)絡(luò)相關(guān)數(shù)據(jù) 流,上層驅(qū)動其中一部分繼承了 IOEthemetController類,負(fù)責(zé)處理網(wǎng)絡(luò)相關(guān)數(shù)據(jù)流,并 把數(shù)據(jù)打包后交與下層驅(qū)動處理,轉(zhuǎn)到步驟S204。
以上僅為本發(fā)明的優(yōu)選實施例,并非因此限制本發(fā)明的專利范圍,凡是利用本 發(fā)明說明書及附圖內(nèi)容所作的等效結(jié)構(gòu)或等效流程變換,或直接或間接運用在其他相關(guān)的技術(shù)領(lǐng)域,均同理包括在本發(fā)明的專利保護(hù)范圍內(nèi),
權(quán)利要求
1.一種數(shù)據(jù)卡設(shè)備網(wǎng)絡(luò)接口聯(lián)網(wǎng)的方法,其特征在于,包括以下步驟在配置Mac操作系統(tǒng)的計算機(jī)中加載用戶應(yīng)用模塊、控制指令庫以及數(shù)據(jù)卡設(shè)備驅(qū) 動程序;所述控制指令庫可提供應(yīng)用程序接口 API;所述用戶應(yīng)用模塊包括瀏覽器及指 令發(fā)送模塊;當(dāng)數(shù)據(jù)卡設(shè)備與計算機(jī)相連且驅(qū)動程序加載成功時,根據(jù)數(shù)據(jù)卡設(shè)備上報的設(shè)備屬 性創(chuàng)建與其匹配的虛擬網(wǎng)絡(luò)接口;用戶應(yīng)用模塊將控制指令通過API發(fā)送至控制指令庫;所述控制指令包括USB協(xié)議 通信指令及高通芯片接口指令;控制指令庫對所述控制指令進(jìn)行初步打包處理,并通過計算機(jī)中的用戶輸入輸出類 接口輸出;上層驅(qū)動解析控制指令庫輸入的包含控制指令的數(shù)據(jù)包,按通信控制協(xié)議格式對控 制指令進(jìn)行封裝并轉(zhuǎn)發(fā);下層驅(qū)動將包含控制指令的數(shù)據(jù)包通過通信管道發(fā)送至數(shù)據(jù)卡設(shè)備。
2.如權(quán)利要求1所述的數(shù)據(jù)卡設(shè)備網(wǎng)絡(luò)接口聯(lián)網(wǎng)的方法,其特征在于,所述下層驅(qū)動 將包含控制指令的數(shù)據(jù)包通過通信管道發(fā)送至數(shù)據(jù)卡設(shè)備中包括將控制指令和數(shù)據(jù)流進(jìn)行分類,分別通過控制管道、數(shù)據(jù)流進(jìn)/出管道與數(shù)據(jù)卡設(shè) 備進(jìn)行數(shù)據(jù)交互。
3.如權(quán)利要求2所述的數(shù)據(jù)卡設(shè)備網(wǎng)絡(luò)接口聯(lián)網(wǎng)的方法,其特征在于,在執(zhí)行所述下 層驅(qū)動將包含控制指令的數(shù)據(jù)包通過通信管道發(fā)送至數(shù)據(jù)卡設(shè)備之后包括聯(lián)網(wǎng)后,用戶應(yīng)用模塊通過Mac操作系統(tǒng)中的TCP/UDP傳輸層和網(wǎng)絡(luò)層與上層驅(qū)動 進(jìn)行通信,將網(wǎng)絡(luò)中的數(shù)據(jù)流通過網(wǎng)絡(luò)層傳輸至上層驅(qū)動;上層驅(qū)動將通過所述網(wǎng)絡(luò)中的數(shù)據(jù)流打包后轉(zhuǎn)發(fā)至下層驅(qū)動。
4.如權(quán)利要求1至3中任一項所述的數(shù)據(jù)卡設(shè)備網(wǎng)絡(luò)接口聯(lián)網(wǎng)的方法,其特征在于, 還包括在用戶界面中顯示聯(lián)網(wǎng)控制標(biāo)識及數(shù)據(jù)流量統(tǒng)計標(biāo)識,接受用戶的聯(lián)網(wǎng)操作并在數(shù) 據(jù)交互過程中統(tǒng)計數(shù)據(jù)流量。
5.如權(quán)利要求4所述的數(shù)據(jù)卡設(shè)備網(wǎng)絡(luò)接口聯(lián)網(wǎng)的方法,其特征在于,在執(zhí)行所述當(dāng) 數(shù)據(jù)卡設(shè)備與計算機(jī)相連且驅(qū)動程序加載成功時,根據(jù)數(shù)據(jù)卡設(shè)備上報的設(shè)備屬性創(chuàng)建 與其匹配的虛擬網(wǎng)絡(luò)接口之前包括根據(jù)數(shù)據(jù)卡設(shè)備上報的設(shè)備屬性判斷是否加載驅(qū)動;若是,則為數(shù)據(jù)卡設(shè)備加載驅(qū) 動程序。
6.—種數(shù)據(jù)卡設(shè)備網(wǎng)絡(luò)接口聯(lián)網(wǎng)的裝置,其特征在于,包括UI用戶界面,用于在配置Mac操作系統(tǒng)的計算機(jī)中加載用戶應(yīng)用模塊、控制指令庫 以及數(shù)據(jù)卡設(shè)備驅(qū)動程序;所述控制指令庫可提供應(yīng)用程序接口 API;所述用戶應(yīng)用模 塊包括瀏覽器及指令發(fā)送模塊;上層驅(qū)動,用于當(dāng)數(shù)據(jù)卡設(shè)備與計算機(jī)相連且驅(qū)動程序加載成功時,根據(jù)數(shù)據(jù)卡設(shè) 備上報的設(shè)備屬性創(chuàng)建與其匹配的虛擬網(wǎng)絡(luò)接口;所述上層驅(qū)動還用于解析控制指令庫 輸入的包含控制指令的數(shù)據(jù)包,按通信控制協(xié)議格式對控制指令進(jìn)行封裝并轉(zhuǎn)發(fā);用戶應(yīng)用模塊,用于將控制指令通過API發(fā)送至控制指令庫;控制指令庫,用于對所述控制指令進(jìn)行初步打包處理,并通過計算機(jī)中的用戶輸入 輸出類接口輸出;下層驅(qū)動,用于將包含控制指令的數(shù)據(jù)包通過通信管道發(fā)送至數(shù)據(jù)卡設(shè)備。
7.如權(quán)利要求6所述的數(shù)據(jù)卡設(shè)備網(wǎng)絡(luò)接口聯(lián)網(wǎng)的裝置,其特征在于,所述下層驅(qū)動進(jìn)一步用于將控制指令和數(shù)據(jù)流進(jìn)行分類,分別通過控制管道、數(shù)據(jù)流進(jìn)/出管道與數(shù)據(jù)卡設(shè) 備進(jìn)行數(shù)據(jù)交互。
8.如權(quán)利要求7所述的數(shù)據(jù)卡設(shè)備網(wǎng)絡(luò)接口聯(lián)網(wǎng)的裝置,其特征在于,所述用戶應(yīng)用模塊還用于聯(lián)網(wǎng)后,通過Mac操作系統(tǒng)中的TCP/UDP傳輸層和網(wǎng)絡(luò)層 與上層驅(qū)動進(jìn)行通信,將網(wǎng)絡(luò)中的數(shù)據(jù)流通過網(wǎng)絡(luò)層傳輸至上層驅(qū)動;所述上層驅(qū)動還用于將通過所述網(wǎng)絡(luò)中的數(shù)據(jù)流打包后轉(zhuǎn)發(fā)至下層驅(qū)動。
9.如權(quán)利要求6至8中任一項所述的數(shù)據(jù)卡設(shè)備網(wǎng)絡(luò)接口聯(lián)網(wǎng)的裝置,其特征在于, 還包括網(wǎng)絡(luò)處理模塊,用于在用戶界面中顯示聯(lián)網(wǎng)控制標(biāo)識及數(shù)據(jù)流量統(tǒng)計標(biāo)識,接受用 戶的聯(lián)網(wǎng)操作并在數(shù)據(jù)交互過程中統(tǒng)計數(shù)據(jù)流量。
10.如權(quán)利要求9所述的數(shù)據(jù)卡設(shè)備網(wǎng)絡(luò)接口聯(lián)網(wǎng)的裝置,其特征在于,所述下層驅(qū) 動還用于根據(jù)數(shù)據(jù)卡設(shè)備上報的設(shè)備屬性判斷是否加載驅(qū)動;若是,則為數(shù)據(jù)卡設(shè)備加載驅(qū) 動程序。
全文摘要
本發(fā)明提供一種數(shù)據(jù)卡設(shè)備網(wǎng)絡(luò)接口聯(lián)網(wǎng)的方法,包括以下步驟在配置Mac操作系統(tǒng)的計算機(jī)中加載用戶應(yīng)用模塊、控制指令庫以及數(shù)據(jù)卡設(shè)備驅(qū)動程序;根據(jù)數(shù)據(jù)卡設(shè)備上報的設(shè)備屬性創(chuàng)建與其匹配的虛擬網(wǎng)絡(luò)接口;將控制指令發(fā)送至控制指令庫;控制指令庫對所述控制指令進(jìn)行初步打包處理并輸出;上層驅(qū)動解析控制指令庫輸入的包含控制指令的數(shù)據(jù)包,按通信控制協(xié)議格式對控制指令進(jìn)行封裝并轉(zhuǎn)發(fā);下層驅(qū)動將包含控制指令的數(shù)據(jù)包通過通信管道發(fā)送至數(shù)據(jù)卡設(shè)備。本發(fā)明所提供的數(shù)據(jù)卡設(shè)備網(wǎng)絡(luò)接口聯(lián)網(wǎng)的方法或裝置,可有效解決Mac操作系統(tǒng)無法通過數(shù)據(jù)卡設(shè)備網(wǎng)絡(luò)接口進(jìn)行聯(lián)網(wǎng)的問題,并且可很好的解決現(xiàn)行數(shù)據(jù)卡通過串口聯(lián)網(wǎng)遇到的速率瓶頸問題。
文檔編號H04L29/10GK102025787SQ20101055373
公開日2011年4月20日 申請日期2010年11月22日 優(yōu)先權(quán)日2010年11月22日
發(fā)明者蔣杰偉 申請人:中興通訊股份有限公司