本發(fā)明的實(shí)施例是涉及一種智能機(jī)頂盒及其運(yùn)作的方法,更具體地說,是涉及提供一種智能服務(wù)和數(shù)碼電視DTV服務(wù)的技術(shù)。
背景技術(shù):機(jī)頂盒STB(SettopBox)是指連接于電視,并通過以太網(wǎng)電纜、衛(wèi)星電波或地面電波接收天線、同軸電纜、電話線、模擬甚高頻VHF或超高頻天線接收外部的信號進(jìn)行適當(dāng)?shù)霓D(zhuǎn)換,從而在電視顯示相應(yīng)的內(nèi)容的裝置。在此,機(jī)頂盒可與電視機(jī)分開獨(dú)立存在,也可被包含在電視機(jī)內(nèi)部。數(shù)碼電視服務(wù)是指利用以數(shù)碼形態(tài)被壓縮的廣播信號,向用戶提供高畫質(zhì)、高音質(zhì)的廣播內(nèi)容的服務(wù),且智能服務(wù)是指可從應(yīng)用程序商店下載多樣的應(yīng)用程序并實(shí)行的服務(wù)。最近,智能手機(jī)、平板電腦等智能服務(wù)以多樣化的形態(tài)被提供,此類智能服務(wù)也通過電視被提供。在這種情況下,便需要將由電視提供的智能服務(wù)和DTV服務(wù)通過一個操作系統(tǒng)來控制的技術(shù)。至今為止,大部分的交互式電視Java應(yīng)用程序通過基于OCAP、ACAP、MHP、GEM的平臺被實(shí)現(xiàn)。但是,開發(fā)者為實(shí)現(xiàn)上述的交互式電視Java應(yīng)用程序,具有應(yīng)用編程接口API的個數(shù)需在不同的環(huán)境中且須具備有關(guān)數(shù)碼服務(wù)的基本知識的制約。由此,大部分交互式電視Java應(yīng)用程序沒有被普遍化。相反,基于安卓(Android)平臺的應(yīng)用程序的個數(shù)正在急劇增加,并可容易地獲得有關(guān)安卓的知識。因此,正在對試圖將數(shù)碼廣播終端裝置通過基于安卓的平臺來提供進(jìn)行研究。
技術(shù)實(shí)現(xiàn)要素:技術(shù)方案本發(fā)明的實(shí)施例提供一種可將數(shù)碼電視DTV(DigitalTV)服務(wù)和智能服務(wù)通過一個裝置來使用的方法及裝置。特別是,本發(fā)明的實(shí)施例提供一種使開發(fā)者僅通過預(yù)先裝載在類似安卓平臺的開放式平臺中的API便可容易地開發(fā)電視應(yīng)用程序的裝置及方法。不僅如此,本發(fā)明的實(shí)施例提供一種不需要具備有關(guān)類似OCAP、MHP等交互式電視標(biāo)準(zhǔn)的知識也可容易實(shí)現(xiàn)的裝置及方法。此外,本發(fā)明的實(shí)施例提供一種可保障DTV堆棧(DTVSTACK)和安卓平臺的獨(dú)立性從而迅速支持平臺升級的裝置及方法。根據(jù)本發(fā)明的一個實(shí)施例的在單個操作系統(tǒng)上一起提供智能服務(wù)和數(shù)碼電視服務(wù)的智能機(jī)頂盒的驅(qū)動方法,包括以下步驟:驅(qū)動操作系統(tǒng),所述操作系統(tǒng)至少包含由用于多個硬件的驅(qū)動器和binder驅(qū)動器所構(gòu)成的內(nèi)核及多個程序庫;在所述操作系統(tǒng)上裝載應(yīng)用程序,所述應(yīng)用程序根據(jù)對應(yīng)于所述操作系統(tǒng)的框架的應(yīng)用編程接口API(ApplicationProgrammingInterface)被設(shè)計(jì);在所述操作系統(tǒng)上裝載數(shù)碼電視DTV(DigitalTelevision)堆棧(stack),所述DTV堆棧包含DTV服務(wù)功能和安全服務(wù)功能;以及為了使所述應(yīng)用程序中的至少一個存取包含在所述DTV堆棧中的DTV服務(wù)功能,使用包含在所述操作系統(tǒng)的內(nèi)核中的binder驅(qū)動器,來允許所述應(yīng)用程序中的至少一個和所述DTV堆棧之間的通信。在這種情況下,所述操作系統(tǒng)可以是安卓操作系統(tǒng)。在這種情況下,可包括允許所述應(yīng)用程序中至少一個和所述數(shù)碼電視堆棧之間的通信的步驟包括封裝(encapsulation)以包裹類(Parcelclass)傳送/接收的數(shù)據(jù)的步驟。在這種情況下,所述方法可進(jìn)一步包括為了所述數(shù)碼電視堆棧中包含的所述數(shù)碼電視服務(wù)功能和所述安全服務(wù)功能之間的通信,使用數(shù)碼電視硬件抽象層的步驟。在這種情況下,所述操作系統(tǒng)的內(nèi)核中包含的binder驅(qū)動器可執(zhí)行進(jìn)程間通訊IPC(InterProcessCommunication)機(jī)制。在這種情況下,所述方法可進(jìn)一步包括以下步驟:通過網(wǎng)絡(luò)訪問應(yīng)用程序商店;以及根據(jù)用戶的選擇,從應(yīng)用程序商店下載至少一個的應(yīng)用程序。在這種情況下,所述DTV硬件抽象層,利用用于硬件的程序庫、用于非(non)硬件的程序庫、以及用于所述DTV堆棧的程序庫來允許所述DTV服務(wù)功能和所述安全服務(wù)功能之間的通信。其中,用于所述硬件的程序庫處理對所述智能機(jī)頂盒內(nèi)包含的硬件的存取,且用于所述非硬件的程序庫,區(qū)別于用于所述硬件的程序庫,同時包含與所述DTV硬件抽象層相關(guān)的模塊,且用于所述DTV堆棧的程序庫包含支持DTV服務(wù)的模塊。根據(jù)本發(fā)明的另一個實(shí)施例的實(shí)現(xiàn)在單個操作系統(tǒng)上一起提供智能服務(wù)和DTV服務(wù)的平臺的方法,包括以下步驟:將操作系統(tǒng)配置在第一層,所述操作系統(tǒng)至少包括由用于多個硬件的驅(qū)動器和binder驅(qū)動器所構(gòu)成的內(nèi)核和多個程序庫;將應(yīng)用程序配置在所述第一層的上位層第二層中,所述應(yīng)用程序根據(jù)對應(yīng)于所述操作系統(tǒng)的框架的應(yīng)用編程接口所設(shè)計(jì);將數(shù)碼電視DTV(DigitalTelevision)堆棧(stack)配置在與所述第二層同等的層第三層中,所述DTV堆棧為所述第一層的上位層,在所述操作系統(tǒng)上包含數(shù)碼電視服務(wù)功能和安全服務(wù)功能。在此,通過包含在所述操作系統(tǒng)的內(nèi)核中的binder驅(qū)動器,為了使所述應(yīng)用程序中的至少一個存取包含在DTV堆棧中的DTV服務(wù)功能,允許所述應(yīng)用程序中的至少一個與所述DTV堆棧之間的通信。根據(jù)本發(fā)明的另一個實(shí)施例的在單個操作系統(tǒng)上一起提供智能服務(wù)和DTV服務(wù)的包含存儲器、處理器、及多個硬件的智能機(jī)頂盒,其包括:處理器,其驅(qū)動操作系統(tǒng),所述操作系統(tǒng)至少包含由用于多個硬件的驅(qū)動器和binder驅(qū)動器所構(gòu)成的內(nèi)核及多個程序庫;存儲器,其在所述操作系統(tǒng)上裝載應(yīng)用程序和數(shù)碼電視DTV(DigitalTelevision)堆棧(stack),所述應(yīng)用程序根據(jù)對應(yīng)于所述操作系統(tǒng)的框架的應(yīng)用編程接口被設(shè)計(jì),所述DTV堆棧包括DTV服務(wù)功能和安全服務(wù)功能。在此,所述處理器為了使所述應(yīng)用程序中的至少一個存取包含在所述DTV堆棧中的DTV服務(wù)功能,使用包含在所述操作系統(tǒng)的內(nèi)核中的binder驅(qū)動器,來允許所述應(yīng)用程序中的至少一個和所述堆棧DTV之間的通信。在這種情況下,所述存儲器,將所述DTV硬件抽象層的程序庫存儲在對應(yīng)于所述操作系統(tǒng)的框架所參照的位置。本發(fā)明的實(shí)施例可提供一種可將數(shù)碼電視DTV(DigitalTV)服務(wù)和智能服務(wù)通過一個裝置來使用的方法及裝置。特別是,本發(fā)明的實(shí)施例可提供一種使開發(fā)者僅通過預(yù)先裝載在類似安卓平臺的開放式平臺中的API便可容易地開發(fā)電視應(yīng)用程序的裝置及方法。不僅如此,本發(fā)明的實(shí)施例可提供一種不需要具備有關(guān)類似OCAP、MHP等交互式電視標(biāo)準(zhǔn)的知識也可容易實(shí)現(xiàn)的裝置及方法。此外,本發(fā)明的實(shí)施例可提供一種可保障DTV堆棧(DTVSTACK)和安卓平臺的獨(dú)立性從而迅速支持平臺升級的裝置及方法。附圖說明圖1是示出根據(jù)本發(fā)明的一個實(shí)施例一起提供DTV服務(wù)和智能服務(wù)的智能機(jī)頂盒的構(gòu)造的示圖。圖2是舉例示出根據(jù)本發(fā)明的一個實(shí)施例的智能機(jī)頂盒的具體框圖的示圖。圖3是作為參考示出被公開的具備安卓(Android)操作系統(tǒng)的系統(tǒng)構(gòu)造圖圖4是示出根據(jù)本發(fā)明的一個實(shí)施例的安卓DTVHAL結(jié)構(gòu)的示圖。圖5是示出根據(jù)本發(fā)明的一個實(shí)施例提供DTV服務(wù)和智能服務(wù)的方法的運(yùn)作流程圖。圖6是示出根據(jù)本發(fā)明的一個實(shí)施例的智能機(jī)頂盒的框圖。具體實(shí)施方式以下,參照附圖,對本發(fā)明的實(shí)施例進(jìn)行詳細(xì)說明。在說明本發(fā)明的實(shí)施例中,由于有關(guān)公知的功能或構(gòu)成的具體說明會使本發(fā)明的論證模糊不清,因此省略該具體說明。此外,在本說明書中使用的專業(yè)術(shù)語(terminology),作為適當(dāng)體現(xiàn)本發(fā)明的最優(yōu)選的實(shí)施例而被使用的術(shù)語,可根據(jù)用戶,管理者的意圖或本發(fā)明所屬的領(lǐng)域等有所不同。因此,有關(guān)術(shù)語的定義根據(jù)本說明的整體內(nèi)容被下達(dá)。DTV服務(wù),即,數(shù)碼電視服務(wù),與現(xiàn)有的模擬(analog)服務(wù)不同,是指利用以數(shù)碼形態(tài)被壓縮的廣播信號,向用戶提供高畫質(zhì)、高音質(zhì)的廣播內(nèi)容的服務(wù)。由于DTV服務(wù)利用數(shù)碼信號,比起模擬服務(wù)可提供更多的信息,因此可提供數(shù)據(jù)服務(wù)。依據(jù)DTV服務(wù),用戶不僅可觀看電視,還可利用提供電視節(jié)目的廣播時間、內(nèi)容、及演員信息等的‘電子節(jié)目指南EPG(ElectronicProgramGuide)’和用戶可在方便的時間內(nèi)立即選擇觀看所需節(jié)目的‘視頻點(diǎn)播VOD(VideoOnDemand)’等服務(wù)。因此,為提供DTV服務(wù)需要將以數(shù)碼形態(tài)被壓縮的廣播信號復(fù)原成原來的視頻和音頻信號的機(jī)頂盒STB(SettopBox)。智能服務(wù)是指可從應(yīng)用程序商店(例如,軟件商店(Appstore)、安卓市場、 blueberry軟件世界等)下載多樣的應(yīng)用程序并實(shí)行的服務(wù)。應(yīng)用程序是指基于操作系統(tǒng)被實(shí)行的多種程序。應(yīng)用程序的例子,例如除了因特網(wǎng)瀏覽器、谷歌地圖、優(yōu)酷視頻(YouTube)、微件(widget)等以外,還存在其他多種類型的應(yīng)用程序。軟件商店(Appstore)是由蘋果公司運(yùn)營并可付費(fèi)或免費(fèi)下載iOS用應(yīng)用程序的應(yīng)用程序商店,且安卓市場是由谷歌公司運(yùn)營的可下載安卓用應(yīng)用程序的應(yīng)用程序商店。用于智能服務(wù)的平臺可以是類如基于安卓平臺的開放式平臺(openplatform)。本發(fā)明的實(shí)施例可提供一種智能機(jī)頂盒,該機(jī)頂盒可在一個操作系統(tǒng)上提供上述的DTV服務(wù)和智能服務(wù)。即,根據(jù)本發(fā)明的實(shí)施例,用戶可通過一個裝置(智能機(jī)頂盒)在一個操作系統(tǒng)上一起使用DTV服務(wù)和智能服務(wù)。圖1是示出根據(jù)本發(fā)明的一個實(shí)施例一起提供DTV服務(wù)和智能服務(wù)的智能機(jī)頂盒的構(gòu)造的示圖。在對圖1進(jìn)行具體說明之前應(yīng)說明智能機(jī)頂盒的硬件、軟件構(gòu)造可以是多樣化的。參照圖1,示出DTV服務(wù)和智能服務(wù)全都提供的智能機(jī)頂盒的簡單構(gòu)造的示圖。本發(fā)明的智能機(jī)頂盒包括安卓(Android)操作系統(tǒng),從而可使用其他多種操作系統(tǒng)。例如,可包括基于安卓操作系統(tǒng)的Linux內(nèi)核(LinuxKernel)。此外,智能機(jī)頂盒可包括開放源碼虛擬機(jī)、芯片組驅(qū)動器、DTV接收模塊、和接收限制銜接模塊。此外,可利用對應(yīng)于操作系統(tǒng)的框架(例如,已知的安卓框架)來一起提供智能服務(wù)和DTV服務(wù)。圖2是舉例示出根據(jù)本發(fā)明的一個實(shí)施例的智能機(jī)頂盒的具體框圖的示圖。參照圖2,根據(jù)本發(fā)明的一個實(shí)施例的智能機(jī)頂盒能夠基于安卓操作系統(tǒng)210來運(yùn)作。圖2的第一層中的安卓操作系統(tǒng)210包括Linux內(nèi)核、仿生(bionic)、系統(tǒng)程序庫和用于IPC211的binder驅(qū)動器。本發(fā)明的DTV服務(wù)和智能服務(wù)全部可基于一個安卓操作系統(tǒng)被提供。在這種情況下,安卓操作系統(tǒng)210可基于多種版本的Linux內(nèi)核(例如,Linux內(nèi)核2.6)。智能機(jī)頂盒啟動時,Linux內(nèi)核可通過引導(dǎo)程序(bootloader)先被啟動,且安卓操作系統(tǒng)210在內(nèi)核初始化后執(zhí)行將系統(tǒng)初始化的‘init’程序。安卓操作系統(tǒng)210可包括安卓標(biāo)準(zhǔn)C程序庫libc(Cstandardlibrary)仿生(Bionic)。仿生作為將基于伯克利軟件分配BSD(BerkeleySoftwareDistribution)的libc按照移動 (嵌入式)環(huán)境來修正的C程序庫,可支持安卓中被特化(specific)的服務(wù)。安卓操作系統(tǒng)內(nèi)運(yùn)行的本地代碼(nativecode)可全部通過仿生被編譯。根據(jù)本發(fā)明的一個實(shí)施例的安卓操作系統(tǒng)210可包括執(zhí)行進(jìn)程間通訊IPC(InterProcessCommunication)211機(jī)制的binder驅(qū)動器。IPC211機(jī)制是指程序間數(shù)據(jù)交換的意思。安卓操作系統(tǒng)210利用binder驅(qū)動器可執(zhí)行安卓操作系統(tǒng)的程序(例如:播放視頻、播放音頻、相機(jī)、活動管理等)之間的通信。以下將對與圖3相關(guān)的安卓操作系統(tǒng)210進(jìn)行詳細(xì)說明,在此,Linux內(nèi)核與多個硬件對內(nèi)部存儲器、處理器、網(wǎng)絡(luò)進(jìn)行管理,系統(tǒng)程序庫和用于在圖像、視頻播放等中使用硬件的程序庫通過Dalvik虛擬機(jī)被構(gòu)成。第一層的上位層中的DTV堆棧230中所包含的安全服務(wù)模塊232在操作系統(tǒng)210中控制對用戶條件單元的存取。例如,可通過XCASSM(eXchangeableConditionalAccessSystemSecureMicro)被實(shí)現(xiàn)。安全服務(wù)模塊232可包括安全監(jiān)視器(例如,XCAS監(jiān)視器)和安全客戶端(例如,CAS客戶端)。安全服務(wù)模塊232提供與安全客戶端(CAS客戶端)的安裝及更新、安全功能提供等CAS客戶端的實(shí)行相關(guān)的平臺。根據(jù)本發(fā)明的一個實(shí)施例的DTV堆棧230,其根據(jù)用戶的資格在安卓操作系統(tǒng)上將提供數(shù)碼電視服務(wù)的DTV堆棧230中所包含的數(shù)碼電視服務(wù)提供給用戶。更具體地,本發(fā)明的DTV堆棧230將現(xiàn)有機(jī)頂盒的提供數(shù)碼電視服務(wù)的一部分放入安卓平臺內(nèi)。DTV堆棧230的DTV服務(wù)231可包括廣播信息表的解析(parsing)和緩存(caching)、DSG(DOCSIS(DataOverCableServiceInterfaceSpecification)Set-topGateway)連接、交互通信連接(例如,有線調(diào)制解調(diào)器或局域網(wǎng)LAN(localareanetwork)、安全(XCAS)功能支持和系統(tǒng)更新等的功能。為支持上述功能,DTV服務(wù)231塊可包括DTV管理器塊、系統(tǒng)/OTC塊、安全管理器塊、DOCSIS/DSG塊、PSIP/SI塊等。DTV硬件抽象層HAL250(HardwareAbstractionLayer)基于安卓允許安卓操作系統(tǒng)210與DTV堆棧230通信。在此,DTVHAL250將裝置驅(qū)動器212的接口抽象化。作為舉例,可使用三叉裝置驅(qū)動作為裝置驅(qū)動器212。且有關(guān)DTVHAL的具體構(gòu)成,將參照圖4進(jìn)行說明。安卓框架221是基于安卓應(yīng)用程序Java框架(JavaFramework),使利用DTV服 務(wù)的安卓應(yīng)用程序?qū)崿F(xiàn)的被修正的框架。安卓框架221包含用于應(yīng)用程序的應(yīng)用編程接口API(ApplicationProgrammingInterface)。此外,安卓操作系統(tǒng)211可利用安卓框架221來實(shí)行/裝載多個應(yīng)用程序222、223。用戶可利用根據(jù)本發(fā)明的一個實(shí)施例的安卓框架221,通過JavaTV/HAVi/OCAP子集(subset),將與安卓應(yīng)用程序有關(guān)的影像通過DTV來播放。即,根據(jù)本發(fā)明的一個實(shí)施例的安卓框架可將DTV廣播內(nèi)容提供至安卓應(yīng)用程序的運(yùn)作基盤Dalvik虛擬機(jī)中。作為參考,JavaTV/HAVi/OCAP子集是用于提供DTV服務(wù)的中間件(middleware)。更具體地,JavaTV作為用于DTV服務(wù)的基于Java的軟件框架,是為開發(fā)對話型TV服務(wù)和在數(shù)碼廣播接收器中運(yùn)作的軟件的開發(fā)者提供的接口。家庭音頻視頻互用Havi(HomeAudioVideointeroperability)是支持有關(guān)音頻和視頻設(shè)備間的控制和數(shù)據(jù)通信的中間件。此外,開放式有線應(yīng)用平臺OCAP(OpenCableApplicationPlatform)是根據(jù)有線電視實(shí)驗(yàn)室CableLabs所定義的用語交互主機(jī)的數(shù)據(jù)廣播處理的中間件。本發(fā)明中所使用的JavaTV/HAVi/OCAP子集可包含用于支持DTV服務(wù)和安卓應(yīng)用程序的JavaTV、HAVi、OCAP的一部分應(yīng)用編程接口API(ApplicationProgramInterface)。根據(jù)本發(fā)明的一個實(shí)施例的智能機(jī)頂盒可包括在安卓操作系統(tǒng)上被實(shí)現(xiàn)的安卓應(yīng)用程序222、223。在此,安卓應(yīng)用程序可包括類似英特網(wǎng)瀏覽器、地圖的基本應(yīng)用程序223和從應(yīng)用程序商店下載的應(yīng)用程序222。應(yīng)用程序222可以是指安卓應(yīng)用程序中DTV廣播內(nèi)容被融合的狀態(tài)的應(yīng)用程序。因此,用戶通過智能機(jī)頂盒可將多樣化的安卓應(yīng)用程序和與相關(guān)應(yīng)用程序有關(guān)的DTV廣播內(nèi)容一起來使用。此外,用戶也可通過智能機(jī)頂盒接收所提供的DTV服務(wù)來實(shí)行安卓應(yīng)用程序。智能機(jī)頂盒根據(jù)用戶的選擇,可從保有與DTV服務(wù)有關(guān)的多個應(yīng)用程序的應(yīng)用程序商店下載有關(guān)DTV服務(wù)的應(yīng)用程序。當(dāng)然,根據(jù)用戶的選擇,智能機(jī)頂盒也可下載與DTV服務(wù)無關(guān)的多樣化的安卓應(yīng)用程序。根據(jù)本發(fā)明的一個實(shí)施例的智能機(jī)頂盒的安卓DTV主頁224可包含‘應(yīng)用程序商店’菜單、‘電視指南’菜單、‘視頻點(diǎn)播(VOD)’菜單、‘收看電視’菜單、‘微件’菜單、‘個人視頻錄像機(jī)(PersonalVideoRecorder)’菜單、‘時空飛梭(TimeShift)’菜單、‘設(shè)置 (settings)’菜單等多種菜單。例如,當(dāng)用戶選擇應(yīng)用程序商店菜單時,智能機(jī)頂盒可連接應(yīng)用程序商店,并根據(jù)用戶的選擇選擇多樣化的應(yīng)用程序。此外,當(dāng)用戶選擇存儲在機(jī)頂盒中的應(yīng)用程序中的任何一個時,智能機(jī)頂盒可實(shí)行相關(guān)的應(yīng)用程序。至今為止,對在一個安卓操作系統(tǒng)210上一起提供智能服務(wù)和DTV服務(wù)的技術(shù)進(jìn)行了說明。本發(fā)明在上述環(huán)境中,允許安卓框架221通過使用IPC211機(jī)制的binder驅(qū)動器與包含在DTV堆棧230中DTV服務(wù)231通信。即,本發(fā)明利用包含在安卓操作系統(tǒng)210中的binder驅(qū)動器,從而可在一個操作系統(tǒng)上提供DTV服務(wù)和智能服務(wù)。在這種情況下,在安卓框架221和DTV堆棧230中包含的DTV服務(wù)231之間的通信中,互相傳送和接收的數(shù)據(jù)通過封裝的class被傳送/接收。不僅如此,DTV服務(wù)231的安全管理器和安全服務(wù)232的安全客戶端根據(jù)套接字(socket)通信方式傳送/接收數(shù)據(jù),并實(shí)現(xiàn)安全客戶端可與其他限制接收系統(tǒng)(CAS)互換。此外,DTV服務(wù)231和安全服務(wù)232通過DTVHAL接口240被獨(dú)立地實(shí)現(xiàn)并運(yùn)作,與硬件規(guī)格和硬件種類無關(guān)。圖3是作為參考示出被公開的具備安卓(Android)操作系統(tǒng)的系統(tǒng)構(gòu)造圖參照圖3,使用安卓操作系統(tǒng)的系統(tǒng)分為4個層。Linux內(nèi)核310不但與硬件管理內(nèi)部存儲器、程序,還進(jìn)行網(wǎng)絡(luò)管理。以C/C++構(gòu)成的程序庫層320由用于在圖像、視頻播放等中使用硬件的程序庫層320和Dalvik虛擬機(jī)所構(gòu)成。安卓框架(Framework)330(或是應(yīng)用程序框架)提供用于制作應(yīng)用程序(Application)的JavaAPI。最上層應(yīng)用程序?qū)?40是開發(fā)者利用應(yīng)用程序框架的API開發(fā)的應(yīng)用程序被分布和實(shí)行的層。安卓平臺為所有層的資源被公開的開放式平臺,主要在智能手機(jī)中被廣泛使用。如上所述,本發(fā)明是用于在安卓操作系統(tǒng)上一起提供智能服務(wù)和DTV服務(wù)的獨(dú)具匠心的平臺。圖4是示出根據(jù)本發(fā)明的一個實(shí)施例的安卓DTVHAL結(jié)構(gòu)的示圖。參照圖4,根據(jù)本發(fā)明的一個實(shí)施例的安卓DTVHAL結(jié)構(gòu),其提供用于DTV堆棧與安卓操作系統(tǒng)通信的程序庫410、420、430。其中,上述DTV堆棧包括基于安卓操作系統(tǒng)的安全服務(wù)和DTV服務(wù)。更具體地,本發(fā)明的安卓DTVHAL結(jié)構(gòu)可包含用于硬件的程序庫‘libhardware’410、用于非硬件的程序庫‘非libhardware’420、 及用于DTV堆棧的程序庫‘用于DTV的libhardware’430。libhardware410可負(fù)責(zé)安卓系統(tǒng)的存取、智能機(jī)頂盒內(nèi)硬件的存取的程序庫。Libhardware410可包括有關(guān)圖像傳感器、全球定位系統(tǒng)GPS、相機(jī)等的模塊。非libhardware420包括libhardware410以外的模塊中與安卓DTVHAL相關(guān)的模塊。例如,非libhardware420可包含EGL、OMX(OpenMAX)、和Stagefright等多媒體框架。更具體地,EGL通過本地平臺接口(NativePlatformInterface)來定義特定平臺系統(tǒng)和OpenGLESAPI之間的glue接口層函數(shù)。OMX為Khronos集團(tuán)的標(biāo)準(zhǔn)API標(biāo)準(zhǔn)媒體接口,且Stagefright為谷歌(google)公司制作的媒體框架。為了libhardware410以外的DTV服務(wù),用于DTV430的libhardware包含附加的模塊。用于DTV430的libhardware根據(jù)包含在用于DTV430的libhardware中的各個模塊可提供DTV畫質(zhì)選擇、轉(zhuǎn)換頻道(zapping)等多種功能。包含在如圖4中所示的用于DTV430的libhardware中的各模塊以程序庫的形態(tài)(.so)存在,為了在現(xiàn)有的DTV堆棧中重新使用程序庫,將DTVHAL的程序庫存儲在安卓框架參照的位置,以便使用安卓應(yīng)用程序。圖5是示出根據(jù)本發(fā)明的一個實(shí)施例提供DTV服務(wù)和智能服務(wù)的方法的運(yùn)作流程圖。參照圖5,在步驟510中,根據(jù)本發(fā)明的一個實(shí)施例的智能機(jī)頂盒驅(qū)動操作系統(tǒng),該操作系統(tǒng)至少包括由用于多個硬件的驅(qū)動器和binder驅(qū)動器所構(gòu)成的內(nèi)核和多個程序庫此外,在步驟520中,智能機(jī)頂盒在所述操作系統(tǒng)上裝載包含數(shù)碼電視DTV(DigitalTelevision)服務(wù)功能和安全服務(wù)功能的DTV堆棧(stack)后,實(shí)行安全服務(wù)。據(jù)此來控制用戶的條件單元的存取。此外,在步驟530中,智能機(jī)頂盒根據(jù)用戶的資格將安置在安卓操作系統(tǒng)上的數(shù)碼電視服務(wù)通過提供的DTV堆棧,向用戶提供數(shù)碼電視服務(wù)。此外,在步驟540中,智能機(jī)頂盒在所述操作系統(tǒng)上裝載根據(jù)對應(yīng)所述操作系統(tǒng)的框架的應(yīng)用編程接口API(ApplicationProgrammingInterface)所設(shè)計(jì)的應(yīng)用程序后,實(shí)行至少一個應(yīng)用程序,從而可向用戶提供智能服務(wù)。雖然沒有在圖5中被明確地示出,本發(fā)明為了使所述應(yīng)用程序中的至少一個存取包含在所述DTV堆棧中的數(shù)碼電視服務(wù)功能,使用包含在所述操作系統(tǒng)的內(nèi)核中的 binder驅(qū)動器,從而來允許所述應(yīng)用程序中至少一個和所述DTV堆棧之間的通信。在這種情況下,為了包含在所述DTV堆棧中的所述DTV服務(wù)功能和所述安全服務(wù)功能之間的通信,可使用DTV硬件抽象層。至此,對根據(jù)本發(fā)明的實(shí)施例的智能機(jī)頂盒的運(yùn)作方法進(jìn)行了說明。有關(guān)之前圖1至圖4中所述的多種實(shí)施例的內(nèi)容可按原樣適用于本發(fā)明的機(jī)頂盒的運(yùn)作方法,在此,省略詳細(xì)地說明。根據(jù)本發(fā)明的實(shí)施例的方法,可通過多種計(jì)算機(jī)手段以可執(zhí)行的程序命令形式記錄在計(jì)算機(jī)可讀媒體中。該計(jì)算機(jī)可讀媒體可包括獨(dú)立的或結(jié)合的程序指令、數(shù)據(jù)文件、數(shù)據(jù)結(jié)構(gòu)等。該媒體記錄的程序指令可專門為本發(fā)明的目的設(shè)計(jì)和創(chuàng)建,或?yàn)橛?jì)算機(jī)軟件技術(shù)人員熟知而應(yīng)用。計(jì)算機(jī)可讀媒體的例子包括:磁媒體(magneticmedia),如硬盤、軟盤和磁帶;光學(xué)媒體(opticalmedia),如CDROM、DVD;磁光媒體(magneto-opticalmedia),如光盤(flopticaldisk);和專門配置為存儲和執(zhí)行程序指令的硬件設(shè)備,如只讀存儲器(ROM)、隨機(jī)存取存儲器(RAM)等。程序指令的例子,既包括機(jī)器代碼,如由編譯器產(chǎn)生的,也包括含有可由計(jì)算機(jī)使用解釋程序執(zhí)行的更高級代碼的文件。圖6是示出根據(jù)本發(fā)明的一個實(shí)施例的智能機(jī)頂盒的框圖。參照圖6,根據(jù)本發(fā)明的一個實(shí)施例的智能機(jī)頂盒包括處理器610、存儲器620、和多個硬件630。在此,多個硬件630可以是鍵盤、調(diào)諧器、解碼器、調(diào)制器、網(wǎng)絡(luò)裝置、傳感器等。處理器610驅(qū)動操作系統(tǒng),該操作系統(tǒng)至少包括由用于所述的多個硬件的驅(qū)動器和binder驅(qū)動器所構(gòu)成的內(nèi)核和多個程序庫。在這種情況下,所述操作系統(tǒng)上根據(jù)對應(yīng)所述操作系統(tǒng)的框架的應(yīng)用編程接口API(ApplicationProgrammingInterface)所設(shè)計(jì)的應(yīng)用程序和所述操作系統(tǒng)上包含數(shù)碼電視DTV(DigitalTelevision)服務(wù)功能和安全服務(wù)功能的DTV堆棧(stack)被裝載至存儲器620中。在這種情況下,所述的處理器610,其為了使所述應(yīng)用程序中的至少一個存取包含在所述DTV堆棧中的DTV服務(wù)功能,使用包含在所述操作系統(tǒng)的內(nèi)核中的binder驅(qū)動器,來允許所述應(yīng)用程序中至少一個和所述DTV堆棧之間的通信,從而可在單個操作系統(tǒng)上一起提供智能服務(wù)和DTV服務(wù)。此外,通過圖1至圖5被說明的內(nèi)容可按原樣適用于圖6中。在此,省略詳細(xì)的 說明。如上所示,本發(fā)明雖然已參照有限的實(shí)施例和附圖進(jìn)行了說明,但是本發(fā)明并不局限于所述實(shí)施例,在本發(fā)明所屬領(lǐng)域中具備通常知識的人均可以從此記載中進(jìn)行各種修改和變形。因此,本發(fā)明的范圍不受說明的實(shí)施例的局限或定義,而是由后附的權(quán)利要求范圍以及權(quán)利要求范圍等同內(nèi)容定義。