新四季網

一種數字媒體智能網關接口兼容驅動的方法

2023-09-17 05:15:35


專利名稱::一種數字媒體智能網關接口兼容驅動的方法
技術領域:
:本發明屬於數字家庭網絡
技術領域:
,具體涉及一種數字媒體智能網關接口兼容驅動的方法。
背景技術:
:數字媒體智能網關的接口是整個家庭網絡控制方面至關重要的一個接口。網關通過一個不同I/O口進行過零點信號檢測,通過另一個I/O口向電力線載波系統發出控制命令,最後達到控制大多數家電的目的,比如照明,空調,熱水器等等。不同的接口需要不同的接口驅動,各種驅動難以兼容。目前數字媒體智能網關中的不同接口,採用的是手動的方式裝卸載驅動,需要先下載相應的驅動,並手動裝好以後,才能使用具體的接口功能。由於手動的方式太過麻煩,影響數字媒體智能網關的推廣普及與使用。本發明針對數位電視及數字家庭三網融合、3C融合的多硬體接口驅動和通訊問題,研發嵌入式Linux的面向數位電視多硬體接口兼容驅動技術,通過數字媒體智能網關多接口兼容驅動,解決機卡標準不一,接口難以兼容的問題。
發明內容本發明的目的是在數字媒體智能網關中,提供對用戶近似透明的接口驅動加卸載,通過基本運行系統和正常運行系統的協作,保證了數字媒體智能網關的硬體接口驅動兼容性。一種數字媒體智能網關接口兼容驅動的方法,該驅動在終端運行的基本流程為首先啟動基本運行系統,下載升級策略文件,然後等待升級策略決策處理,若決策失敗,則升級結束,重啟系統到正常運行系統;若決策成功,則進行最新軟體版本的判斷,若不存在最新正常運行系統版本,則升級結束,重啟系統到正常運行系統;若存在最新正常運行系統版本,則下載最新正常運行系統文件包,然後設置正常運行系統未驗證,再將升級文件包寫入到正常運行系統區,若基本運行系統未驗證,則置為已驗證,升級結束。數字媒體智能網關接口分為上層虛擬硬體接口和底層實際STB硬體接口。基礎性的驅動操作包括3個重要的內核數據結構,稱為filejperations,file,和inode;structfilejperations是一個字符設備把驅動的操作和設備號聯繫在一起的紐帶,是一系列指針的集合,每個被打開的文件都對應於一系列的操作,用來執行一系列的系統調用;structfile代表一個打開的文件,在執行file_operation中的open操作時被創建,用戶空間inode指針一個在內核,而file指針在用戶空間,由c庫來定義;structinode被內核用來代表一個文件,structfile是代表打開的文件包,structinode結構是用來在內核內部表示文件的,同一個文件可以被打開好多次,所以可以對應很多structfile,但是只對應一個structinode。上述技術方案可以看出,本發明帶來的有益效果是(1)針對數位電視及數字家庭三網融合、3C融合交互應用中的多硬體接口驅動和通訊問題,研究面向基於Linux的數字媒體智能網關多硬體接口兼容驅動技術,採用LKM(LinuxKernelModule)機制,設計出屏蔽硬體差異的「硬體套接層」,靈活實現豐富的外部設備接口標準,具有可擴展性,方便硬體加載和升級。(2)在正常運行系統中驅動加載時,先判斷基本運行系統所加入的接口,在絕大多數情況下,基本運行系統是經過自動驅動加載處理,可以直接在不中斷當前業務的情況下透明驅動加載,完全顧及了用戶的享受心情,是一種積極、人性化的驅動加載方法。為了更清楚地說明本發明實施例或現有技術中的技術方案,下面將對實施例或現有技術描述中所需要使用的附圖作簡單地介紹,顯而易見地,下面描述中的附圖僅僅是本發明的一些實施例,對於本領域普通技術人員來講,在不付出創造性勞動的前提下,還可以根據這些附圖獲得其它的附圖。圖1是本發明中虛擬硬體管理系統與實際硬體接口的關係示意圖;圖2是本發明中硬體架構圖;圖3是本發明中終端基本運行系統的驅動加載流程圖。具體實施例方式下面將結合本發明實施例中的附圖,對本發明實施例中的技術方案進行清楚、完整地描述,顯然,所描述的實施例僅僅是本發明一部分實施例,而不是全部的實施例。基於本發明中的實施例,本領域普通技術人員在沒有作出創造性勞動前提下所獲得的所有其它實施例,都屬於本發明保護的範圍。本發明針對數位電視及數字家庭三網融合、3C融合交互應用中的多硬體接口驅動和通訊問題,研究面向基於Linux的數位電視多硬體接口兼容驅動技術,採用LKM(LinuxKernelModule)機制,設計出屏蔽硬體差異的「硬體套接層」,靈活實現豐富的外部設備接口標準,具有可擴展性,方便硬體加載和升級。以數位電視與數字家庭對信息交互的需求為核心,充分考慮數位電視與數字家庭服務服務粒度封裝的合理性,利用多層可重構服務體系最大化的發揮「服務」所帶來的靈活與可變性。目前的STB是基於以通用作業系統為目標的Linux,當然應具有兼容各種硬體接口的能力。既然都是硬體接口,那麼它們總有一些共性,於是就可以利用這些共性來構建一個統一的硬體接口管理系統框架,並在這個框架中留出必要的空間;當這個硬體接口管理系統偵測到新的硬體接口使用時,便動態管理這個實際硬體接口,把這個實際硬體與共性有差異的信息抽取到這個預留的空間,而以框架的通用部分作為與系統的接口,就可以實現不同硬體接口的統一管理,設計出屏蔽硬體差異的「硬體套接層」,靈活實現豐富的外部設備接口標準,具有可擴展性,方便硬體加載和升級。基中「硬體套接層」為用戶自己設計的底層硬體驅動過濾管理層,它能偵測各個硬體接口的變化,並動態地增刪底層驅動服務。對各種底層硬體接口驅動統一高效地管理。基於上述思想,我們構建了一個格式統一的硬體接口管理系統框架,如圖1所示,包括上層虛擬硬體接口和底層實際STB硬體接口。其中的各個數據結構,除了保存所有硬體接口的共性信息和框架本身所需的信息之外,同時也留出了必要的空間以存放實際硬體接口的特殊信息。系統初始化時就在內存中創建這樣一個文件系統框架,當系統需要使用某一個具體的硬體接口時,就把這個硬體接口的特殊信息採集到框架的預留空間中來。這樣,就可以把各種不同的硬體接口統一納入到一個框架體系中管理起來,從而使系統可用一個統一的界面(即統一的系統調用)對各種不同的硬體接口進行操作。這個格式統一的硬體接口系統框架,就叫做硬體接口管理系統。圖中......_info所表示的就是自實際硬體接口提取到虛擬硬體接口信息,以表徵實際文件系統差異的信息。簡單地說,就是在各種格式的硬體接口基礎上用通用硬體接口的格式進行一次封裝,把具體硬體接口的差異用虛擬硬體接口隔離開來,從而使用戶面對的是一個統一的虛擬硬體接口管理界面。由上可知,虛擬硬體接口管理系統沒有真正硬體接口驅動,它只是作業系統與實際硬體接口之間的接口。因此,它並不需要保存在永久存儲介質中,而只是在需要時由內核在內存中創建起來的一個硬體接口管理系統,所以叫做虛擬硬體管理系統。為了構建虛擬硬體接口系統,我們定義了一些數據結構。這些數據結構的形式很像我們今天使用的格式合同裡面也有統一、標準的條目,也有由用戶來填寫的與用戶特殊要求相關的條目。硬體虛擬層的數據結構structfile—operations{structmodule*owner;loff—t(*llseek)(structfileloff—t,int);ssizet(*read)(structfile*,char—user*,size—t,lofft*);ssizet(*aio—read)(structkiocb*,char—user*,size—t,lofft);ssizet(*write)(structfile*,constchar—user*,size—t,lofft*);ssizet(*aio—write)(structkiocb*,constchar—user*,size—t,lofft);int(*readdir)(structfile*,void*,filldirt);unsignedint(*poll)(structfile*,structpolltablestruct*);int(*ioctl)(structinode*,structfile*,unsignedint,unsignedlong);int(*mmap)(structfile*,structvm—area—struct*);int(*open)(structinode*,structfile*);int(*flush)(structfile*);int(*release)(structinode*,structfile*);int(*fsync)(structfile*,structdentry*,intdatasync);int(*aio—fsync)(structkiocb*,intdatasync);int(*fasync)(int,structfile*,int);int(*lock)(structfile*,int,structfile—lock*);ssizet(*readv)(structfile*,conststructiovec*,unsignedlong,lofft*);ssizet(*writev)(structfile*,conststructiovec*,unsignedlong,lofft*);ssizet(*sendfile)(structfile*,lofft*,size—t,read—actor—t,void一user*);ssizet(*sendpage)(structfile*,structpage*,int,size—t,lofft*,int);unsignedlong(*get—unmapped—area)(structfile*,unsignedlong,unsignedlong,unsignedlong,unsignedlong);long(*fcntl)(intfd,unsignedintcmd,unsignedlongarg,structfile*filp);};大部分的基礎性的驅動操作包括3個重要的內核數據結構,稱為file_operations,file,和inode。structfile_operations是一個字符設備把驅動的操作和設備號聯繫在一起的紐帶,是一系列指針的集合,每個被打開的文件都對應於一系列的操作,這就是filejperations,用來執行一系列的系統調用。structfile代表一個打開的文件,在執行file_0perati0n中的open操作時被創建,這裡需要注意的是與用戶空間inode指針的區別,一個在內核,而file指針在用戶空間,由c庫來定義。structinode被內核用來代表一個文件,注意和structfile的區別,structinode—個是代表文件,structfile一個是代表打開的文件包括很重要的二個成員structinode結構是用來在內核內部表示文件的.同一個文件可以被打開好多次,所以可以對應很多structfile,但是只對應一個structinode.structfile{mode—tf—mode;//表示文件是否可讀或可寫,FMODE—READ或FMODE—WRITEdevtf—rdev;//用於/dev/ttyoff—tf—ops;//當前文件位移unsignedshortf_flags;//文件標誌,0_RD0NLY,0_N0NBL0CK和O—SYNCunsignedshortf—count;//打開的文件數目unsignedshortfreada;stmctinode*f—inode;//指向inode的結構指針structfile—operations*fop;//文件索引指針}structinode包括很重要的二個成員dev_ti_rdev設備文件的設備號;structcdev*i_cdev代表字符設備的數據結構structinode結構是用來在內核內部表示文件的。同一個文件可以被打開好多次,所以可以對應很多structfile,但是只對應一個structinode。如圖2所示為本發明的硬體架構圖,以下是相關組件的介紹。A.CPU嵌入式CPU是設備的核心,它要管理設備的所有接口,包括網絡連接接口、紅外接口以及各類擴展接口,要處理IP協議棧,控制和調度所有底層設備驅動程序。它與媒體處理器或控制編解碼晶片對接收到的音視頻媒體流解碼轉換,使視頻、音頻和數據分離開,通過控制數字/模擬轉換器還原成電視信號輸出給TV顯示出來。一般設備專用的嵌入式CPU大多集成媒體處理能力,增強型設備也可採用雙CPU方式。B.DSP目前,網絡數位電視市場沒有統一的編解碼標準,市場上採用較多的標準有MPEG-2,MPEG-4ASP,WMV,H.264等,而且多編解碼標準共存的局面還將持續,所以能支持多編解碼標準解決方案將更能適應市場的需求。方案支持碼流500Kbps3Mbps的處理能力,同時在IMbps1.5Mbps的碼流下,實現fullD1,即DVD的視頻質量。音頻解碼支持MPEG-4AAC/AAC+;MPEG_1音頻第3層(MP3)[單聲道,立體聲];AC-3(5.1聲道)並支持AC-3(5.1聲道)的直接數字輸出。除此之外,還可支持MPEG-2,MPEG-4,WMV9(未來支持)的視頻解碼。C.DVB-C晶片支持DVB-C有線數位電視傳輸標準,集成10位A/D轉換器,採用直接中頻信號輸入,支持DVB-C下16QAM、32QAM、64QAM、128QAM和256QAM解調;具有完全符合DVB-C標準的RS解碼、解交織和MPEG-2TS流串/並行輸出。D.內存內存主要分為Flash內存和SDRAM內存,方案中擬採用16MB(或32MB)FlashROM,64MB和32MBSDRAM分別支持系統和DSP工作。通過Flash,實現軟體的在線升級功能。E.IDE方案中預留了IDE接口。可根據用戶需求,擴展各種容量的IDE硬碟,支持節目下載應用。以80GB硬碟為例,可支持300小時以上的H.264格式的節目內容。F.音頻輸入/輸出音頻輸入支持MereoIn(BYPASS),MICIn,輸出支持MereoOut(BYPASS),SPDIF(AC35.1),SpeakerMonauralOut。G.視頻輸入/輸出提供連接電視的多種接口,包括S端子,CVBS和YpWr輸出,同時提供視頻輸入接口,S-Video,CVBS(ENCODEINGANDBYPASS)。H.Wireless系統支持802.11無線網接入和藍牙技術,實現行動裝置與機頂盒的交互。I.設備接口把IPTV接口和直接連接數位電視的射頻接口合併為單個接口,用於連接CableModem模塊和DVB-C模塊。接口向外與同軸電纜直接相連,從而接入HFC網,利用HFC網進行雙向數據傳輸。數字媒體網關終端軟體進行系統內核裁剪,內核配置級的裁剪是普遍採用的最直接和最有效的方式。具體做法是將必要的功能編譯到內核配置菜單中,去除不用的功能。系統對內核性能要求如下文件系統,僅支持記錄型文件系統(ReFS);CAN總線驅動模塊,Khernet驅動模塊,串口驅動,並口驅動,IXD驅動,A/D驅動,USB驅動。在菜單中選擇的網絡設備支持TCP/IP協議和CAN設備支持,USB支持,塊設備,字符設備支持。對內核不支持的設備,用戶可以編制所需的設備驅動程序,然後添加進到內核。配置完內核後,再對內核原始碼文件的依賴性和完整性進行檢驗。設備驅動可以理解為作業系統的一部分,對於一個特定的硬體設備來說,其對應的設備驅動程序是不同的。對於作業系統來說,掛接的設備越多,所需要的設備驅動程序也越多。作業系統本身並沒有對種類繁多的硬體設備提供持久不變的設備驅動,也就是說作業系統在沒有設備驅動程序支持下是無法正常支配硬體行為的。這個時候就需要獨立開發一套適合自己產品的設備驅動,因此,我們必須對新加入的CableModem模塊和DVB-C模塊開發新的驅動程序。如圖3所示為本發明終端基本運行系統的驅動加載流程圖。首先啟動基本運行系統,下載升級策略文件,然後等待升級策略決策處理,若決策失敗,則升級結束,重啟系統到正常運行系統;若決策成功,則進行最新軟體版本的判斷,若不存在最新正常運行系統版本,則升級結束,重啟系統到正常運行系統;若存在最新正常運行系統版本,則下載最新正常運行系統文件包,然後設置正常運行系統未驗證,再將升級文件包寫入到正常運行系統區,若基本運行系統未驗證,則置為已驗證,升級結束。需要說明的是,上述裝置和系統內的各單元之間的信息交互、執行過程等內容,由於與本發明方法實施例基於同一構思,具體內容可參見本發明方法實施例中的敘述,此處不再贅述。本領域普通技術人員可以理解上述實施例的各種方法中的全部或部分步驟是可以通過程序來指令相關的硬體來完成,該程序可以存儲於一計算機可讀存儲介質中,存儲介質可以包括只讀存儲器(ROM,ReadOnlyMemory)、隨機存取存儲器(RAM,RandomAccessMemory)、磁碟或光碟等。以上對本發明實施例所提供的一種數字媒體智能網關接口兼容驅動的方法,進行了詳細介紹,本文中應用了具體個例對本發明的原理及實施方式進行了闡述,以上實施例的說明只是用於幫助理解本發明的方法及其核心思想;同時,對於本領域的一般技術人員,依據本發明的思想,在具體實施方式及應用範圍上均會有改變之處,綜上所述,本說明書內容不應理解為對本發明的限制。權利要求1.一種數字媒體智能網關接口兼容驅動的方法,其特徵在於,該驅動在終端運行的基本流程為首先啟動基本運行系統,下載升級策略文件,然後等待升級策略決策處理,若決策失敗,則升級結束,重啟系統到正常運行系統;若決策成功,則進行最新軟體版本的判斷,若不存在最新正常運行系統版本,則升級結束,重啟系統到正常運行系統;若存在最新正常運行系統版本,則下載最新正常運行系統文件包,然後設置正常運行系統未驗證,再將升級文件包寫入到正常運行系統區,若基本運行系統未驗證,則置為已驗證,升級結束。2.根據權利要求1所述的方法,其特徵在於,數字媒體智能網關接口分為上層虛擬硬體接口和底層實際STB硬體接口。3.根據權利要求1所述的方法,其特徵在於,基礎性的驅動操作包括3個重要的內核數據結構,稱為file_operations,file,和inode;structfile_operations是一個字符設備把驅動的操作和設備號聯繫在一起的紐帶,是一系列指針的集合,每個被打開的文件都對應於一系列的操作,用來執行一系列的系統調用;structfile代表一個打開的文件,在執行file_operation中的open操作時被創建,用戶空間inode指針一個在內核,而file指針在用戶空間,由c庫來定義;structinode被內核用來代表一個文件,structfile是代表打開的文件包,structinode結構是用來在內核內部表示文件的,同一個文件可以被打開好多次,所以可以對應很多structfile,但是只對應一個structinode。全文摘要本發明公開了一種數字媒體智能網關接口兼容驅動的方法。本發明的方法包括首先啟動基本運行系統,下載升級策略文件,然後等待升級策略決策處理,若決策失敗,則升級結束,重啟系統到正常運行系統;若決策成功,則進行最新軟體版本的判斷,若不存在最新正常運行系統版本,則升級結束,重啟系統到正常運行系統;若存在最新正常運行系統版本,則下載最新正常運行系統文件包,然後設置正常運行系統未驗證,再將升級文件包寫入到正常運行系統區,若基本運行系統未驗證,則置為已驗證,升級結束。本發明技術方案能夠直接在不中斷當前業務的情況下透明驅動加載,完全顧及了用戶的享受心情,是一種積極、人性化的驅動加載方法。文檔編號H04L12/66GK102195901SQ201110131700公開日2011年9月21日申請日期2011年5月19日優先權日2011年5月19日發明者羅笑南,薛凱軍,鄧代國申請人:中山大學,廣東星海數字家庭產業技術研究院有限公司

同类文章

一種新型多功能組合攝影箱的製作方法

一種新型多功能組合攝影箱的製作方法【專利摘要】本實用新型公開了一種新型多功能組合攝影箱,包括敞開式箱體和前攝影蓋,在箱體頂部設有移動式光源盒,在箱體底部設有LED脫影板,LED脫影板放置在底板上;移動式光源盒包括上蓋,上蓋內設有光源,上蓋部設有磨沙透光片,磨沙透光片將光源封閉在上蓋內;所述LED脫影

壓縮模式圖樣重疊檢測方法與裝置與流程

本發明涉及通信領域,特別涉及一種壓縮模式圖樣重疊檢測方法與裝置。背景技術:在寬帶碼分多址(WCDMA,WidebandCodeDivisionMultipleAccess)系統頻分復用(FDD,FrequencyDivisionDuplex)模式下,為了進行異頻硬切換、FDD到時分復用(TDD,Ti

個性化檯曆的製作方法

專利名稱::個性化檯曆的製作方法技術領域::本實用新型涉及一種檯曆,尤其涉及一種既顯示月曆、又能插入照片的個性化檯曆,屬於生活文化藝術用品領域。背景技術::公知的立式檯曆每頁皆由月曆和畫面兩部分構成,這兩部分都是事先印刷好,固定而不能更換的。畫面或為風景,或為模特、明星。功能單一局限性較大。特別是畫

一種實現縮放的視頻解碼方法

專利名稱:一種實現縮放的視頻解碼方法技術領域:本發明涉及視頻信號處理領域,特別是一種實現縮放的視頻解碼方法。背景技術: Mpeg標準是由運動圖像專家組(Moving Picture Expert Group,MPEG)開發的用於視頻和音頻壓縮的一系列演進的標準。按照Mpeg標準,視頻圖像壓縮編碼後包

基於加熱模壓的纖維增強PBT複合材料成型工藝的製作方法

本發明涉及一種基於加熱模壓的纖維增強pbt複合材料成型工藝。背景技術:熱塑性複合材料與傳統熱固性複合材料相比其具有較好的韌性和抗衝擊性能,此外其還具有可回收利用等優點。熱塑性塑料在液態時流動能力差,使得其與纖維結合浸潤困難。環狀對苯二甲酸丁二醇酯(cbt)是一種環狀預聚物,該材料力學性能差不適合做纖

一種pe滾塑儲槽的製作方法

專利名稱:一種pe滾塑儲槽的製作方法技術領域:一種PE滾塑儲槽一、 技術領域 本實用新型涉及一種PE滾塑儲槽,主要用於化工、染料、醫藥、農藥、冶金、稀土、機械、電子、電力、環保、紡織、釀造、釀造、食品、給水、排水等行業儲存液體使用。二、 背景技術 目前,化工液體耐腐蝕貯運設備,普遍使用傳統的玻璃鋼容

釘的製作方法

專利名稱:釘的製作方法技術領域:本實用新型涉及一種釘,尤其涉及一種可提供方便拔除的鐵(鋼)釘。背景技術:考慮到廢木材回收後再加工利用作業的方便性與安全性,根據環保規定,廢木材的回收是必須將釘於廢木材上的鐵(鋼)釘拔除。如圖1、圖2所示,目前用以釘入木材的鐵(鋼)釘10主要是在一釘體11的一端形成一尖

直流氧噴裝置的製作方法

專利名稱:直流氧噴裝置的製作方法技術領域:本實用新型涉及ー種醫療器械,具體地說是ー種直流氧噴裝置。背景技術:臨床上的放療過程極易造成患者的局部皮膚損傷和炎症,被稱為「放射性皮炎」。目前對於放射性皮炎的主要治療措施是塗抹藥膏,而放射性皮炎患者多伴有局部疼痛,對於止痛,多是通過ロ服或靜脈注射進行止痛治療

新型熱網閥門操作手輪的製作方法

專利名稱:新型熱網閥門操作手輪的製作方法技術領域:新型熱網閥門操作手輪技術領域:本實用新型涉及一種新型熱網閥門操作手輪,屬於機械領域。背景技術::閥門作為流體控制裝置應用廣泛,手輪傳動的閥門使用比例佔90%以上。國家標準中提及手輪所起作用為傳動功能,不作為閥門的運輸、起吊裝置,不承受軸向力。現有閥門

用來自動讀取管狀容器所載識別碼的裝置的製作方法

專利名稱:用來自動讀取管狀容器所載識別碼的裝置的製作方法背景技術:1-本發明所屬領域本發明涉及一種用來自動讀取管狀容器所載識別碼的裝置,其中的管狀容器被放在循環於配送鏈上的文檔匣或託架裝置中。本發明特別適用於,然而並非僅僅專用於,對引入自動分析系統的血液樣本試管之類的自動識別。本發明還涉及專為實現讀