專利名稱:一種可動態(tài)加載不同終端交換芯片驅(qū)動的方法
技術(shù)領(lǐng)域:
本發(fā)明涉及ー種下一代廣播電視網(wǎng)(NGB)應(yīng)用技木,尤其涉及ー種下一代廣播電視網(wǎng)應(yīng)用中可動態(tài)加載不同終端交換芯片驅(qū)動的方法。
背景技術(shù):
目前,在下一代廣播電視網(wǎng)(NGB)建設(shè)中廣泛采用的以太網(wǎng)同軸電纜(EoC)接入系統(tǒng)通常采用主從式(Master-Slave)的通信與管理架構(gòu)。該架構(gòu)中,EoC接入系統(tǒng)主要是由部署在樓道用于EoC網(wǎng)絡(luò)側(cè)接入的EoC頭端設(shè)備與部署在用戶室內(nèi)用于EoC網(wǎng)絡(luò)用戶側(cè)接入的EoC終端設(shè)備組成的,如附圖I中所示。其中EoC頭端設(shè)備管理與調(diào)度其下連接的I個(gè)或多個(gè)EoC終端設(shè)備。EoC頭端設(shè)備對EoC終端設(shè)備的管理主要包括EoC頭端對EoC終端的工作模式 與狀態(tài)、VLAN(虛擬局域網(wǎng),Virtual Local Area Network)、流量控制、QoS (服務(wù)質(zhì)量,Quality of Service)等進(jìn)行控制與管理。在具體實(shí)現(xiàn)中是由EoC頭端的管理CPU通過固化在它上面的控制軟件對EoC終端中的交換芯片的運(yùn)行情況進(jìn)行控制的。由于交換芯片廠商提供的驅(qū)動目前是以軟件開發(fā)包(SDK)的方式提供接ロ給應(yīng)用程序調(diào)用,因此,在EoC頭端運(yùn)行的控制軟件必須以用戶態(tài)LIB庫的方式實(shí)現(xiàn)對交換芯片驅(qū)動接ロ的調(diào)用進(jìn)而對EoC終端的交換芯片進(jìn)行控制。當(dāng)采用LIB庫的方式調(diào)用時(shí),控制軟件必須把終端交換芯片驅(qū)動的LIB庫集成進(jìn)來才能進(jìn)行運(yùn)行,而且終端交換芯片的驅(qū)動代碼必須與控制軟件的其他代碼捆綁在一起,所以難以實(shí)現(xiàn)交換芯片驅(qū)動的動態(tài)加載。當(dāng)ー個(gè)EoC頭端下連接著不同廠商提供的多個(gè)類型的EoC終端時(shí),EoC頭端的控制軟件必須把它所支持的所有類型的EoC終端的交換芯片的軟件包SDK以LIB庫的形式集成進(jìn)來。這樣不但會造成控制軟件體積越來越大從而難以固化在EoC頭端設(shè)備中,并且每支持ー款交換芯片,控制軟件就要重新進(jìn)行代碼編寫,編譯,燒寫,重啟等一系列工作,當(dāng)把事先未支持的EoC終端掛載到頭端下的時(shí)候,為支持該終端的接入,EoC頭端將不得不重啟,這樣會大大影響到其他用戶終端的用戶體驗(yàn)。
發(fā)明內(nèi)容
本發(fā)明目的在于提供一種可動態(tài)加載不同終端交換芯片驅(qū)動的方法,通過利用嵌入式操作系統(tǒng)平臺支持可動態(tài)加載內(nèi)核態(tài)驅(qū)動模塊的特性,把終端交換芯片驅(qū)動封裝為內(nèi)核態(tài)驅(qū)動模塊,并在EoC頭端的控制軟件中采用抽象的終端交換芯片驅(qū)動調(diào)用接ロ,根據(jù)EoC頭端下當(dāng)前連接的EoC終端類型靈活地匹配對應(yīng)的實(shí)際驅(qū)動調(diào)用接ロ,并動態(tài)加載所需的交換芯片驅(qū)動模塊,通過對該驅(qū)動的調(diào)用實(shí)現(xiàn)對EoC終端的控制與管理。一種可動態(tài)加載不同終端交換芯片驅(qū)動的方法,包含(I)將EoC終端交換芯片驅(qū)動封裝為內(nèi)核態(tài)驅(qū)動模塊;(2)把驅(qū)動模塊加載到遠(yuǎn)程服務(wù)器端;(3)在EoC頭端的控制軟件中,根據(jù)EoC頭端設(shè)備對EoC終端設(shè)備的管理與控制功能,抽象定義出交換芯片驅(qū)動調(diào)用接ロ ;(4)EoC頭端的控制軟件運(yùn)行時(shí),根據(jù)當(dāng)前連接的EoC終端類型,在本地查找相應(yīng)內(nèi)核態(tài)驅(qū)動,如未查找到相應(yīng)內(nèi)核態(tài)驅(qū)動,則從遠(yuǎn)程服務(wù)器上下載對應(yīng)的內(nèi)核態(tài)驅(qū)動,并在本地進(jìn)行動態(tài)加載;(5)通過抽象調(diào)用接ロ與交換芯片驅(qū)動實(shí)際調(diào)用接ロ之間的映射,實(shí)現(xiàn)對終端交換芯片驅(qū)動的調(diào)用。在內(nèi)核態(tài)驅(qū)動模塊中,主要包含對交換芯片的控制與管理功能模塊以及對外提供的調(diào)用接ロ,這個(gè)調(diào)用接ロ是在內(nèi)核態(tài)對外提供的。EoC頭端所要支持的各類型的EoC終端交換芯片驅(qū)動都要封裝為內(nèi)核態(tài)驅(qū)動模塊的形式,井根據(jù)實(shí)際需要把它們或者放在本地,或者放在遠(yuǎn)程的驅(qū)動加載服務(wù)器上,供EoC頭端在需要時(shí)候進(jìn)行動態(tài)加載。EoC頭端的控制軟件中包含抽象驅(qū)動調(diào)用接ロ定義、調(diào)用接ロ映射中間件模塊及 內(nèi)核態(tài)驅(qū)動接ロ調(diào)用模塊。由于不同類型的交換芯片驅(qū)動接ロ格式都不一樣,為能實(shí)現(xiàn)對多種類型的交換芯片驅(qū)動的統(tǒng)ー調(diào)用,本發(fā)明中増加抽象驅(qū)動調(diào)用接ロ。它是根據(jù)EoC頭端對終端的管理與控制功能來定義,屏蔽了具體的數(shù)據(jù)類型格式等細(xì)節(jié)。同時(shí)增加調(diào)用接ロ映射中間件模塊,用以實(shí)現(xiàn)抽象驅(qū)動調(diào)用接ロ到具體類型交換驅(qū)動調(diào)用接ロ之間的映射,該模塊中需要把所要支持的多種類型的交換芯片驅(qū)動調(diào)用接ロ的類型定義集成進(jìn)來。內(nèi)核態(tài)驅(qū)動接ロ調(diào)用模塊用于實(shí)現(xiàn)在用戶態(tài)對內(nèi)核態(tài)驅(qū)動模塊的調(diào)用。EoC頭端的控制軟件啟動運(yùn)行后,EoC頭端首先識別它所連接的EoC終端(已上電)的交換芯片品牌與型號,若在本地沒找到該類型對應(yīng)的內(nèi)核驅(qū)動,則到遠(yuǎn)程的驅(qū)動加載服務(wù)器下載相應(yīng)的內(nèi)核驅(qū)動模塊,并在本地加載該內(nèi)核驅(qū)動,然后控制軟件中的控制與管理應(yīng)用模塊并根據(jù)應(yīng)用要求調(diào)用內(nèi)核驅(qū)動提供的功能,對EoC終端進(jìn)行控制與管理。在實(shí)際應(yīng)用過程中,可在EoC頭端中設(shè)定默認(rèn)的交換芯片類型,當(dāng)遇到非該類型的交換芯片時(shí)再去遠(yuǎn)程的驅(qū)動加載服務(wù)器查找,然后再加載相應(yīng)的驅(qū)動。通過本發(fā)明,能夠有效實(shí)現(xiàn)不同類型的終端交換芯片驅(qū)動的動態(tài)加載,并實(shí)現(xiàn)EoC頭端的控制軟件代碼與終端交換芯片驅(qū)動代碼的分離,同時(shí)可有選擇性地把終端交換芯片驅(qū)動放在本地或放在遠(yuǎn)程的驅(qū)動加載服務(wù)器上,避免因支持多種類型的交換芯片驅(qū)動而造成控制軟件體積龐大的問題。
圖IEoC接入系統(tǒng)主從式架構(gòu)圖;圖2本發(fā)明提供的可動態(tài)加載驅(qū)動的EoC接入系統(tǒng)架構(gòu)圖;圖3本發(fā)明提供的可動態(tài)加載不同終端交換芯片驅(qū)動的方法基本流程圖。
具體實(shí)施例方式以下結(jié)合各附圖對本發(fā)明提供的內(nèi)容進(jìn)行詳細(xì)的描述圖2是本發(fā)明提出的可動態(tài)加載驅(qū)動的EoC接入系統(tǒng)的框架圖,圖3是本發(fā)明提供的可動態(tài)加載不同終端交換芯片驅(qū)動的方法基本流程圖。以一臺EoC頭端設(shè)備下需支持連接的EoC終端設(shè)備包括帶Marvell88E6031交換芯片的終端、帶Marvell 88E6061交換芯片的終端,還有其他Broadcom類型的終端,Marvell 88E6031為默認(rèn)支持交換芯片為例,本發(fā)明提供的解決方法的實(shí)施方案如下首先,把所要支持的終端交換芯片驅(qū)動(包括Marvell 88E6031、Marvell88E6061、其他Broadcom類型)封裝為可動態(tài)加載的內(nèi)核驅(qū)動模塊。同時(shí),把Marvell 88E6031的內(nèi)核驅(qū)動放在本地,把其他類型的內(nèi)核驅(qū)動放在遠(yuǎn)程的驅(qū)動加載服務(wù)器上。在EoC頭端的控制軟件代碼中集成進(jìn)所要支持交換芯片的驅(qū)動調(diào)用接ロ的參數(shù)定義代碼,以便于進(jìn)行驅(qū)動接ロ調(diào)用。并在EoC頭端的控制軟件中増加抽象驅(qū)動調(diào)用接ロ、調(diào)用接ロ映射中間件模塊、內(nèi)核態(tài)驅(qū)動接ロ調(diào)用模塊。EoC終端設(shè)備運(yùn)行后,如檢測到底下連接的EoC終端用的交換芯片驅(qū)動類型與型號,則做如下操作I)識別交換芯片品牌與型號,如是Marvell 88E6031就直接加載;如是其他類型 的交換芯片則從遠(yuǎn)程的驅(qū)動加載服務(wù)器上下載相應(yīng)的內(nèi)核驅(qū)動模塊并在本地進(jìn)行加載;2) EoC頭端的控制軟件根據(jù)應(yīng)用要求調(diào)用相應(yīng)類型交換芯片的內(nèi)核驅(qū)動所提供的功能,對EoC終端進(jìn)行控制與管理。
權(quán)利要求
1.一種可動態(tài)加載不同終端交換芯片驅(qū)動的方法,其特征在于所述方法包含 (1)將EoC終端交換芯片驅(qū)動封裝為內(nèi)核態(tài)驅(qū)動模塊; (2)把驅(qū)動模塊加載到遠(yuǎn)程服務(wù)器端; (3)在EoC頭端的控制軟件中,根據(jù)EoC頭端設(shè)備對EoC終端設(shè)備的管理與控制功能,抽象定義出交換芯片驅(qū)動調(diào)用接口 ; (4)EoC頭端的控制軟件運(yùn)行時(shí),根據(jù)當(dāng)前連接的EoC終端類型,在本地查找相應(yīng)內(nèi)核態(tài)驅(qū)動,如未查找到相應(yīng)內(nèi)核態(tài)驅(qū)動,則從遠(yuǎn)程服務(wù)器上下載對應(yīng)的內(nèi)核態(tài)驅(qū)動,并在本地進(jìn)行動態(tài)加載; (5)通過抽象調(diào)用接口與交換芯片驅(qū)動實(shí)際調(diào)用接口之間的映射,實(shí)現(xiàn)對終端交換芯片驅(qū)動的調(diào)用。
2.根據(jù)權(quán)利要求I所述的一種可動態(tài)加載不同終端交換芯片驅(qū)動的方法,其特征在于所述內(nèi)核態(tài)驅(qū)動模塊中主要包含對交換芯片的控制與管理功能模塊及對外提供的調(diào)用接口,調(diào)用接口是在內(nèi)核態(tài)對外提供。
3.根據(jù)權(quán)利要求I所述的一種可動態(tài)加載不同終端交換芯片驅(qū)動的方法,其特征在于所述EoC終端交換芯片驅(qū)動均封裝為內(nèi)核態(tài)驅(qū)動模塊的形式。
4.根據(jù)權(quán)利要求I所述的一種可動態(tài)加載不同終端交換芯片驅(qū)動的方法,其特征在于所述EoC頭端所支持的各類型的EoC終端交換芯片驅(qū)動均封裝為內(nèi)核態(tài)驅(qū)動模塊的形式,并根據(jù)實(shí)際需要把它們或者放在本地,或放在遠(yuǎn)程的驅(qū)動加載服務(wù)器上。
5.根據(jù)權(quán)利要求I所述的一種可動態(tài)加載不同終端交換芯片驅(qū)動的方法,其特征在于所述抽象驅(qū)動調(diào)用接口根據(jù)EoC頭端對終端的管理與控制功能來定義。
6.根據(jù)權(quán)利要求I所述的一種可動態(tài)加載不同終端交換芯片驅(qū)動的方法,其特征在于所述EoC頭端的控制軟件中包含抽象驅(qū)動調(diào)用接口定義、調(diào)用接口映射中間件模塊及內(nèi)核態(tài)驅(qū)動接口調(diào)用模塊。
7.根據(jù)權(quán)利要求I或6所述的一種可動態(tài)加載不同終端交換芯片驅(qū)動的方法,其特征在于所述調(diào)用接口映射中間件模塊,用以實(shí)現(xiàn)抽象驅(qū)動調(diào)用接口到具體類型交換驅(qū)動調(diào)用接口之間的映射。
8.根據(jù)權(quán)利要求I或6所述的一種可動態(tài)加載不同終端交換芯片驅(qū)動的方法,其特征在于所述內(nèi)核態(tài)驅(qū)動接口調(diào)用模塊用于實(shí)現(xiàn)在用戶態(tài)對內(nèi)核態(tài)驅(qū)動模塊的調(diào)用。
全文摘要
本發(fā)明提供一種可動態(tài)加載不同終端交換芯片驅(qū)動的方法,該方法利用嵌入式操作系統(tǒng)平臺支持可動態(tài)加載內(nèi)核態(tài)驅(qū)動模塊的特性,把終端交換芯片驅(qū)動封裝為內(nèi)核態(tài)驅(qū)動模塊,并在EoC頭端的控制軟件中采用抽象的終端交換芯片驅(qū)動調(diào)用接口,根據(jù)EoC頭端下當(dāng)前連接的EoC終端類型靈活地匹配對應(yīng)的實(shí)際驅(qū)動調(diào)用接口,并動態(tài)加載所需的交換芯片驅(qū)動模塊,實(shí)現(xiàn)對EoC終端的控制與管理。通過本發(fā)明能實(shí)現(xiàn)不同類型的終端交換芯片驅(qū)動的動態(tài)加載,并實(shí)現(xiàn)EoC頭端的控制軟件代碼與終端交換芯片驅(qū)動代碼的分離,同時(shí)可有選擇性地把終端交換芯片驅(qū)動放在本地或放在遠(yuǎn)程的驅(qū)動加載服務(wù)器上,避免因支持多種類型的交換芯片驅(qū)動而造成控制軟件體積龐大的問題。
文檔編號G06F9/445GK102830983SQ201110159358
公開日2012年12月19日 申請日期2011年6月14日 優(yōu)先權(quán)日2011年6月14日
發(fā)明者盧劉明 申請人:上海未來寬帶技術(shù)及應(yīng)用工程研究中心有限公司