專利名稱:數(shù)據(jù)廣播系統(tǒng)讀取文件的方法及設備的制作方法
技術(shù)領(lǐng)域:
本發(fā)明涉及數(shù)據(jù)廣播系統(tǒng)。具體地說,本發(fā)明涉及從數(shù)據(jù)廣播中迅速讀取文件的方法及設備。
背景技術(shù):
一般來說,數(shù)據(jù)廣播系統(tǒng)由廣播電視局、機頂盒(set-top box)和電視機組成,機頂盒從廣播電視局所提供的廣播數(shù)據(jù)流中提取出文件,并使之在電視機中播放。
這里,上述機頂盒也可以設置于電視機內(nèi)。
數(shù)字廣播提供了比以前模擬廣播更高畫質(zhì)和更高音質(zhì)的視頻和音頻輸出,此外還提供了數(shù)據(jù)廣播和交互式(interactive)通信等多種便利的功能。
DVB-MHP中使用的數(shù)字廣播協(xié)議基本支持所有服務提供者和目標傳送帶(OCobject carousel)。這種目標傳送帶是廣播電視局周期性地反復發(fā)出數(shù)據(jù)流數(shù)據(jù),并從此種數(shù)據(jù)流數(shù)據(jù)中查找必要的文件,提供給應用程序。
圖1為現(xiàn)有讀取文件方法簡圖。如圖1所示,現(xiàn)在,如果應用程序1要申請調(diào)用文件,這種申請要經(jīng)過JAVA虛擬機2(Java VirtualMachine,以下稱JVM)傳輸給目標傳送帶3。目標傳送帶3依據(jù)應用程序1的申請,向服務信息(Service Information,以下稱SI)4申請必要的模塊。SI4以模塊為單位接受廣播電視局所提供的廣播數(shù)據(jù)流,這種模塊被傳輸給上述目標傳送帶3。上述目標傳送帶3對各模塊進行分析(parsing),提取并輸出上述應用程序1所調(diào)用的文件。即,從上述目標傳送帶3中提取出的文件經(jīng)由上述JVM2又被傳輸給應用程序1。
在此,JVM2作為JAVA虛擬機是能將用JAVA語言編程的程序轉(zhuǎn)換成計算機所能讀取的機器語言的程序。JVM中存在著只能存儲類文件(class file)的被稱為堆棧存儲器(HEAP)的存儲媒介。因此,如果應用程序1所調(diào)用的文件是類文件的話,從目標傳送帶3中查找到的類文件經(jīng)由JVM2被傳輸給應用程序1的過程中,相關(guān)類文件便被存儲在JVM2的堆棧存儲器中。
目標傳送帶3是利用目錄(directory),文件(file)和數(shù)據(jù)流(stream)目標,由數(shù)據(jù)廣播服務器向各廣播接收方傳輸結(jié)構(gòu)化的目標集團。
如上所述現(xiàn)有讀取文件方法可以參照圖2進行詳細說明。
圖2為現(xiàn)有讀取文件方法流程圖。
參照圖2,首先,為獲取應用程序1所需的文件,向JVM2提出調(diào)用文件申請(S11),JVM2將這種申請機械地進行轉(zhuǎn)換,并向目標傳送帶3申請文件(S12)。
目標傳送帶3以SI4從上述廣播數(shù)據(jù)流中按照一定單位分離出來的模塊為對象來檢索文件,即分析各模塊,確認其中是否存儲有應用程序1所申請調(diào)用的文件(S13)。
如果檢索出應用程序1所申請調(diào)用的文件,目標傳送帶3便輸出相關(guān)文件,并打開該文件(S14)。
如果應用程序1仍需繼續(xù)調(diào)用文件,只要反復進行上述過程,便可以找出相關(guān)文件,否則應用程序1將結(jié)束(S15)。
但是,如上所述,現(xiàn)有的讀取文件方法,每當應用程序需要文件時,必須經(jīng)由JVM向目標傳送帶調(diào)用,目標傳送帶每次都要以各模塊為對象進行分析,在查找到相關(guān)文件后還得經(jīng)由JVM傳輸?shù)綉贸绦?。因此,每當應用程序提出申請調(diào)用時,目標傳送帶都要查找文件才能提供,具有相當大的額外開銷,并且也存在著增加讀取時間等問題。同時,這種查找文件的過程不斷進行,存在著明顯降低了應用程序運行速度等問題。如果文件越大,這些問題就越嚴重。
發(fā)明內(nèi)容
因而,為解決現(xiàn)存的上述問題,本發(fā)明便應運而生。本發(fā)明的目的在于提供一種廣播系統(tǒng)讀取文件方法和設備,以便能由JVM直接輸出文件,并能迅速讀取出相關(guān)文件。
為實現(xiàn)上述目的,依據(jù)本發(fā)明的實例,數(shù)據(jù)廣播系統(tǒng)讀取文件方法包括如下階段目標傳送帶從廣播數(shù)據(jù)流中提取文件階段;JVM存儲上述被提取出文件階段;應用程序申請調(diào)用文件及執(zhí)行被調(diào)用文件階段。上述被調(diào)用的文件由上述JVM提供。
依據(jù)本發(fā)明的另一個優(yōu)選實例,數(shù)據(jù)廣播系統(tǒng)文件讀取設備包括以下部分從廣播數(shù)據(jù)流中提取文件的目標傳送帶;對上述提取出的文件進行存儲的JVM;申請調(diào)用文件并執(zhí)行文件的應用程序。上述被申請調(diào)用的文件由上述JVM提供。
如上所述,本發(fā)明數(shù)據(jù)廣播系統(tǒng)的讀取文件方法和設備在應用程序提出讀取文件調(diào)用時,將從JVM中查找相關(guān)文件,并進行傳輸,與過去從目標傳送帶中查找并經(jīng)由JVM向應用程序傳輸?shù)倪^程相比,能更迅速讀取文件。
同時,依據(jù)本發(fā)明的數(shù)據(jù)廣播系統(tǒng)讀取文件方法和設備,每當應用程序申請調(diào)用文件的時候,JVM就迅速地將與相關(guān)文件相應的指針提供給應用程序,這樣就能以更快的速度提供服務。
并且,如果依據(jù)本發(fā)明的數(shù)據(jù)廣播系統(tǒng)讀取文件方法及設備,既便不設立高速緩存或高速緩存管理器,也能發(fā)揮很好的緩存作用,在節(jié)約存儲器的同時,減少了目標傳送裝置的額外開銷。
圖1為現(xiàn)有讀取方法樣式簡圖。
圖2為現(xiàn)有讀取文件方法流程圖。
圖3為依據(jù)本發(fā)明優(yōu)選實例的文件讀取設備的構(gòu)成圖。
圖4為說明依據(jù)本發(fā)明的優(yōu)選實例讀取文件方法的流程圖。
附圖主要部分符號說明31目標傳送帶32JVM33堆棧存儲器34應用程序
具體實施例方式
下面就參照附圖對本發(fā)明的廣播系統(tǒng)讀取文件方法及設備予以詳細說明。
圖3為本發(fā)明優(yōu)選實例的文件讀取設備的構(gòu)成圖。
參照圖3,依據(jù)本發(fā)明的文件讀取設備包括如下幾部分從廣播數(shù)據(jù)流中提取文件的目標傳送帶31;將上述目標傳送帶31提取出的文件存儲到指定空間中的JVM32;申請調(diào)用文件,并執(zhí)行與之相應文件的應用程序34。其中,上述JVM32中存在著僅存儲上述被提取出文件堆棧存儲器33。
上述目標傳送帶31以廣播數(shù)據(jù)流為對象提取出文件,此時,廣播數(shù)據(jù)流以一定單位被分離出來的模塊形態(tài)存儲于SI中。上述目標傳送帶31便以存儲在SI中的模塊為對象進行分析,并提取出各文件,傳輸?shù)絁VM32中。因此,上述目標傳送帶31不受應用程序34調(diào)用文件的影響,無條件從廣播數(shù)據(jù)流中提取出文件,并傳輸給JVM32。
上述JVM32將由目標傳送帶31輸出的文件存儲在堆棧存儲器33中。與存儲文件的同時生成了針對相關(guān)文件的指針,指針對應相關(guān)文件。并且,被存儲的文件以指定路徑的形式被儲存。舉個例子,如果t.gif圖片文件被存儲到堆棧存儲器33中,那么針對這個圖片文件的路徑也一起被指定,并以a/b/c/t.gif的形態(tài)進行存儲。另外,在上述堆棧存儲器33中,不僅是與原來不同的類文件,包含一般文件(如,圖片文件、文本文件等)的任何文件也都能被儲存。因此,如果應用程序34提出文件調(diào)用申請,JVM32就將存儲的文件中與應用程序34申請的文件相應的指針傳送給應用程序34,這樣應用程序34就能通過接收到的指針執(zhí)行相關(guān)的文件了。這時,應用程序34提出調(diào)用所定文件的申請的時候,同時也提示了針對相關(guān)文件的路徑信息。
上述應用程序34調(diào)用所要執(zhí)行的特定文件,從JVM32中接收針對申請文件的指針,這樣就執(zhí)行了與指針相應的文件。
下面將說明上述文件讀取設備讀取文件的方法。
圖4為本發(fā)明的優(yōu)選實例讀取文件方法的流程圖。
參照圖4,首先目標傳送帶31不受是否運行應用程序34的影響,如果接收到廣播數(shù)據(jù)流,便從廣播數(shù)據(jù)流中提取出文件(S41)。具體地說,如果接收到廣播數(shù)據(jù)流,廣播數(shù)據(jù)流將以模塊為單位被分離后存儲在SI中。上述目標傳送帶31對上述存儲在SI中的模塊按順序進行分析處理,提取出文件后,傳輸給JVM32。
上述JVM32在將上述傳送來的文件和路徑一起存儲在堆棧存儲器中(S42)。這時不僅類文件被存儲,一般文件也都能被存儲。并且,存儲文件的時候,能夠生成針對相關(guān)文件的指針,并針對相關(guān)文件進行指定。
這時,應用程序34開始運行,并向JVM32提出調(diào)用所定文件的申請(S43)。這時,一提出調(diào)用文件申請,路徑信息也一起被提供了。
JVM32通過路徑信息,在堆棧存儲器33存儲的文件中搜索是否存在應用程序34所申請調(diào)用的文件(S44)。
如果應用程序34申請調(diào)用的文件存在,則針對相關(guān)文件的指針就被傳送到應用程序34中(S45)。
通過傳送來的指針,應用程序34就能執(zhí)行相關(guān)文件了(S48)。
如果應用程序34申請調(diào)用的文件在堆棧存儲器33中不存在的話,JVM32就再向目標傳送帶31提出文件調(diào)用申請(S46)。
如上所述,目標傳送帶31分析由SI提供的模塊,并查找應用程序34所申請調(diào)用的文件。然后,找出的文件經(jīng)由JVM32通過應用程序34被執(zhí)行(S47)。
如果應用程序34再申請調(diào)用其他文件,就返回到S43,向JVM32申請調(diào)用文件。如果應用程序34不再申請調(diào)用其他文件,應用程序34的運行就結(jié)束了(S49)。
因此,本發(fā)明在播放數(shù)據(jù)流中包含的文件都被儲存到JVM中之后,如果應用程序提出調(diào)用文件的申請,就在JVM存儲的文件中進行查找,并直接把相關(guān)的指針提供給應用程序,并使其運行。這就解決了原來每當應用程序申請調(diào)用文件的時候,在目標傳送帶中一個一個地查找相關(guān)文件,再輸出給應用程序,導致了時間的延長。
并且,本發(fā)明通過使用JVM中的堆棧存儲器,能夠簡單地解決原來在目標傳送帶中產(chǎn)生的額外開銷的問題。
綜上所述,本領(lǐng)域技術(shù)人員完全可以在不偏離本發(fā)明技術(shù)思想范圍的前提下,進行多種多樣的變更或修改。因此,本發(fā)明的技術(shù)范圍并不局限于說明書上詳細說明的內(nèi)容,必須要根據(jù)專利申請的范圍來確定其技術(shù)性范圍。
權(quán)利要求
1.一種數(shù)據(jù)廣播系統(tǒng)讀取文件的方法,其特征在于包括如下階段目標傳送帶從廣播數(shù)據(jù)流中提取文件的階段;JVM將上述提取出的文件進行存儲的階段;應用程序調(diào)用文件及執(zhí)行被調(diào)用的文件的階段;上述被申請調(diào)用的文件由上述JVM提供。
2.按照權(quán)利要求1所述的數(shù)據(jù)廣播系統(tǒng)讀取文件的方法,其特征在于所述的提取文件階段包括以模塊單位分離上述廣播數(shù)據(jù)流的階段;分析上述被分離的模塊并提取文件的階段。
3.按照權(quán)利要求1所述的數(shù)據(jù)廣播系統(tǒng)讀取文件的方法,其特征在于所述存儲上述被提取出的文件的階段包括儲存上述提取文件的階段;生成指定上述提取文件的指針的階段;將上述提取的文件同上述生成的指針一起進行儲存的階段。
4.按照權(quán)利要求1所述的數(shù)據(jù)廣播系統(tǒng)讀取文件的方法,其特征在于將上述被提取文件實際數(shù)據(jù)和路徑一起存儲。
5.按照權(quán)利要求1所述的數(shù)據(jù)廣播系統(tǒng)讀取文件的方法,其特征在于執(zhí)行上述被調(diào)用文件的階段包括上述應用程序申請調(diào)用文件的階段;在上述JVM中搜索是否存在所調(diào)用的文件的階段;如果存在上述文件,上述JVM將與上述申請調(diào)用文件相應的文件指針指向上述應用程序傳輸?shù)碾A段;上述應用程序執(zhí)行上述指針所指向的文件的階段。
6.按照權(quán)利要求5所述的數(shù)據(jù)廣播系統(tǒng)讀取文件的方法,其特征在于包括如果,應用程序申請調(diào)用的文件不存在于堆棧存儲器中,JVM就再向目標傳送帶提出文件調(diào)用申請的階段;目標傳送帶分析由SI提供的模塊,并提取應用程序所申請調(diào)用的文件的階段;提取的文件經(jīng)由JVM,傳送給上述應用程序。
7.按照權(quán)利要求6所述的數(shù)據(jù)廣播系統(tǒng)讀取文件的方法,其特征在于上述提取的文件經(jīng)由上述JVM輸出。
8.按照權(quán)利要求1所述的數(shù)據(jù)廣播系統(tǒng)讀取文件的方法,其特征在于上述被儲存的文件包含類文件和一般文件。
9.按照權(quán)利要求1所述的數(shù)據(jù)廣播系統(tǒng)讀取文件的方法,其特征在于還包括如下階段應用程序提出調(diào)用上述文件申請的時候,將路徑信息一起提供給JVM。
10.按照權(quán)利要求1所述的數(shù)據(jù)廣播系統(tǒng)讀取文件的方法,其特征在于還包括上述申請調(diào)用的文件與路徑一起被儲存。
11.一種數(shù)據(jù)廣播系統(tǒng)文件讀取設備,其特征在于包含以下部件從廣播數(shù)據(jù)流中提取文件的目標傳送帶;將上述目標傳送帶提取出的文件存儲在所定空間中的JVM;申請調(diào)用文件,并執(zhí)行與之相應文件的應用程序,上述申請調(diào)用的文件從JVM中提供。
12.按照權(quán)利要求11所述的數(shù)據(jù)廣播系統(tǒng)文件讀取設備,其特征在于上述JVM包含能夠儲存上述提取的文件的堆棧存儲器。
13.按照權(quán)利要求11所述的數(shù)據(jù)廣播系統(tǒng)文件讀取設備,其特征在于包含將上述廣播數(shù)據(jù)流以模塊為單位進行分割的SI。
14.按照權(quán)利要求11或13所述的數(shù)據(jù)廣播系統(tǒng)文件讀取設備,其特征在于上述目標傳送帶對在上述SI中被分割的模塊進行分析,并提取文件。
15.按照權(quán)利要求11所述的數(shù)據(jù)廣播系統(tǒng)文件讀取設備,其特征在于上述JVM將提取的文件同路徑一起儲存。
16.按照權(quán)利要求11所述的數(shù)據(jù)廣播系統(tǒng)文件讀取設備,其特征在于在儲存上述被提取的文件時,上述JVM生成相關(guān)指針,并將其與被提取的文件一起儲存。
17.按照權(quán)利要求11所述的數(shù)據(jù)廣播系統(tǒng)文件讀取設備,其特征在于當上述應用程序申請調(diào)用的文件存在時,上述JVM將相關(guān)的指針輸出給應用程序。
18.按照權(quán)利要求17所述的數(shù)據(jù)廣播系統(tǒng)文件讀取設備,其特征在于上述應用程序執(zhí)行上述相關(guān)指針所指的文件。
19.按照權(quán)利要求11所述的數(shù)據(jù)廣播系統(tǒng)文件讀取設備,其特征在于當上述應用程序申請調(diào)用的文件不存在時,上述JVM再次向目標傳送帶申請調(diào)用文件。
20.按照權(quán)利要求19所述的數(shù)據(jù)廣播系統(tǒng)文件讀取設備,其特征在于上述目標傳送帶再次在廣播數(shù)據(jù)流中提取與申請調(diào)用文件相應的文件,并輸出給上述應用程序。
21.按照權(quán)利要求20所述的數(shù)據(jù)廣播系統(tǒng)文件讀取設備,其特征在于將從上述廣播數(shù)據(jù)流中提取的文件經(jīng)由上述JVM進行輸出。
22.按照權(quán)利要求11所述的數(shù)據(jù)廣播系統(tǒng)文件讀取設備,其特征在于上述被儲存的文件包含類文件和一般文件。
23.按照權(quán)利要求11所述的數(shù)據(jù)廣播系統(tǒng)文件讀取設備,其特征在于上述應用程序提出調(diào)用文件申請時,一起提供路徑信息。
全文摘要
本發(fā)明涉及能更迅速提供數(shù)字電視廣播服務的數(shù)據(jù)廣播系統(tǒng)讀取文件的方法及設備。依據(jù)本發(fā)明的數(shù)據(jù)廣播文件讀取設備將從目標傳送帶提取出的所有文件存儲到JVM的堆棧存儲器中,應用程序提出文件調(diào)用申請時,直接將相關(guān)文件的指針移動到JVM的堆棧存儲器上,執(zhí)行相關(guān)文件。因為不從目標傳送帶中查找與應用程序所調(diào)用文件相關(guān)的文件,而直接在JVM中查找并傳輸,因此可以迅速讀取文件。同時,可以明顯減少目前在每次調(diào)用應用程序所需文件時都要從目標傳送帶查找相關(guān)文件所引起的處理方面額外開銷。
文檔編號G06F9/06GK1738421SQ20041005389
公開日2006年2月22日 申請日期2004年8月20日 優(yōu)先權(quán)日2004年8月20日
發(fā)明者權(quán)真郁, 崔美愛 申請人:上海樂金廣電電子有限公司