本申請(qǐng)涉及電視技術(shù)領(lǐng)域,尤其涉及一種電視快速開(kāi)機(jī)方法及裝置。
背景技術(shù):
目前的電視開(kāi)機(jī)過(guò)程通常采用STR(Suspend-to-RAM,掛起到內(nèi)存)開(kāi)機(jī)技術(shù),即電視終端在接收到待機(jī)指令后,將操作系統(tǒng)中運(yùn)行的應(yīng)用程序信息和各個(gè)硬件的驅(qū)動(dòng)信息保存在內(nèi)存中,在接收到待機(jī)喚醒指令后,先從內(nèi)存中啟動(dòng)操作系統(tǒng),然后以串行處理方式喚醒各個(gè)硬件,即從內(nèi)存中依次執(zhí)行各個(gè)驅(qū)動(dòng)的喚醒函數(shù),以初始化對(duì)應(yīng)的硬件,從而各個(gè)硬件依次從休眠工作模式切換到喚醒工作模式,最后獲取當(dāng)前設(shè)置的電視輸入接口參數(shù),并根據(jù)電視輸入接口參數(shù)獲取電視信號(hào)并進(jìn)行播放,從而完成電視開(kāi)機(jī)過(guò)程。然而,在喚醒各個(gè)硬件時(shí)采用的是串行處理方式,每個(gè)驅(qū)動(dòng)的喚醒函數(shù)的執(zhí)行,必須等待之前驅(qū)動(dòng)的喚醒函數(shù)執(zhí)行完成后才會(huì)被執(zhí)行,如果每個(gè)驅(qū)動(dòng)的喚醒函數(shù)的執(zhí)行時(shí)間比較長(zhǎng),就會(huì)使開(kāi)機(jī)時(shí)間延長(zhǎng),影響開(kāi)機(jī)速度,從而用戶(hù)體驗(yàn)不佳。
技術(shù)實(shí)現(xiàn)要素:
有鑒于此,本申請(qǐng)?zhí)峁┮环N電視快速開(kāi)機(jī)方法及裝置,以解決現(xiàn)有實(shí)現(xiàn)方式開(kāi)機(jī)時(shí)間長(zhǎng),用戶(hù)體驗(yàn)不佳的問(wèn)題。
根據(jù)本申請(qǐng)實(shí)施例的第一方面,提供一種電視快速開(kāi)機(jī)方法,所述方法應(yīng)用于包括驅(qū)動(dòng)管理模塊的電視終端,所述驅(qū)動(dòng)管理模塊用于控制第一類(lèi)驅(qū)動(dòng)的喚醒函數(shù)、第二類(lèi)驅(qū)動(dòng)的喚醒函數(shù)以及第三類(lèi)驅(qū)動(dòng)的喚醒函數(shù)的執(zhí)行,其中,所述第二類(lèi)驅(qū)動(dòng)的喚醒函數(shù)的執(zhí)行依賴(lài)于所述第一類(lèi)驅(qū)動(dòng)的喚醒函數(shù)的執(zhí)行,所述第三類(lèi)驅(qū)動(dòng)的喚醒函數(shù)的執(zhí)行依賴(lài)于所述第二類(lèi)驅(qū)動(dòng)的喚醒函數(shù)的執(zhí)行,且每類(lèi)驅(qū)動(dòng)至少包括一個(gè)驅(qū)動(dòng),每個(gè)驅(qū)動(dòng)分別具有對(duì)應(yīng)的喚醒函數(shù),所述方法包括:
在接收到待機(jī)喚醒指令之后,通過(guò)所述驅(qū)動(dòng)管理模塊執(zhí)行所述第一類(lèi)驅(qū)動(dòng)的喚醒函數(shù);
通過(guò)所述驅(qū)動(dòng)管理模塊執(zhí)行所述第二類(lèi)驅(qū)動(dòng)的喚醒函數(shù)之后,執(zhí)行所述第三類(lèi)驅(qū)動(dòng)的喚醒函數(shù);其中,不同第二類(lèi)驅(qū)動(dòng)的喚醒函數(shù)以并行方式執(zhí)行;
在執(zhí)行所述第二類(lèi)驅(qū)動(dòng)的喚醒函數(shù)期間,獲取當(dāng)前設(shè)置的電視輸入接口參數(shù),并根據(jù)所述電視輸入接口參數(shù)獲取電視信號(hào);
在所述第三類(lèi)驅(qū)動(dòng)的喚醒函數(shù)執(zhí)行完成之后,播放所述電視信號(hào);
其中,所述第二類(lèi)驅(qū)動(dòng)的喚醒函數(shù)的執(zhí)行時(shí)間比所述第一類(lèi)驅(qū)動(dòng)的喚醒函數(shù)和所述第三類(lèi)驅(qū)動(dòng)的喚醒函數(shù)的執(zhí)行時(shí)間長(zhǎng)。
根據(jù)本申請(qǐng)實(shí)施例的第二方面,提供一種電視快速開(kāi)機(jī)裝置,所述裝置應(yīng)用于包括驅(qū)動(dòng)管理模塊的電視終端,所述驅(qū)動(dòng)管理模塊用于控制第一類(lèi)驅(qū)動(dòng)的喚醒函數(shù)、第二類(lèi)驅(qū)動(dòng)的喚醒函數(shù)以及第三類(lèi)驅(qū)動(dòng)的喚醒函數(shù)的執(zhí)行,其中,所述第二類(lèi)驅(qū)動(dòng)的喚醒函數(shù)的執(zhí)行依賴(lài)于所述第一類(lèi)驅(qū)動(dòng)的喚醒函數(shù)的執(zhí)行,所述第三類(lèi)驅(qū)動(dòng)的喚醒函數(shù)的執(zhí)行依賴(lài)于所述第二類(lèi)驅(qū)動(dòng)的喚醒函數(shù)的執(zhí)行,且每類(lèi)驅(qū)動(dòng)至少包括一個(gè)驅(qū)動(dòng),每個(gè)驅(qū)動(dòng)分別具有對(duì)應(yīng)的喚醒函數(shù),所述裝置包括:
第一執(zhí)行模塊,用于在接收到待機(jī)喚醒指令之后,通過(guò)所述驅(qū)動(dòng)管理模塊執(zhí)行所述第一類(lèi)驅(qū)動(dòng)的喚醒函數(shù);
第二執(zhí)行模塊,用于通過(guò)所述驅(qū)動(dòng)管理模塊執(zhí)行所述第二類(lèi)驅(qū)動(dòng)的喚醒函數(shù)之后,執(zhí)行所述第三類(lèi)驅(qū)動(dòng)的喚醒函數(shù);其中,不同第二類(lèi)驅(qū)動(dòng)的喚醒函數(shù)以并行方式執(zhí)行;
獲取模塊,用于在執(zhí)行所述第二類(lèi)驅(qū)動(dòng)的喚醒函數(shù)期間,獲取當(dāng)前設(shè)置的電視輸入接口參數(shù),并根據(jù)所述電視輸入接口參數(shù)獲取電視信號(hào);
播放模塊,用于在所述第三類(lèi)驅(qū)動(dòng)的喚醒函數(shù)執(zhí)行完成之后,播放所述電視信號(hào);
其中,所述第二類(lèi)驅(qū)動(dòng)的喚醒函數(shù)的執(zhí)行時(shí)間比所述第一類(lèi)驅(qū)動(dòng)的喚醒函數(shù)和所述第三類(lèi)驅(qū)動(dòng)的喚醒函數(shù)的執(zhí)行時(shí)間長(zhǎng)。
應(yīng)用本申請(qǐng)實(shí)施例,電視終端在接收到待機(jī)喚醒指令之后,通過(guò)驅(qū)動(dòng)管理模塊先執(zhí)行第一類(lèi)驅(qū)動(dòng)的喚醒函數(shù),然后再執(zhí)行第二類(lèi)驅(qū)動(dòng)的喚醒函數(shù),且不同第二類(lèi)驅(qū)動(dòng)的喚醒函數(shù)以并行方式執(zhí)行,最后執(zhí)行第三類(lèi)驅(qū)動(dòng)的喚醒函數(shù);并且在執(zhí)行第二類(lèi)驅(qū)動(dòng)的喚醒函數(shù)期間,可以并行獲取當(dāng)前設(shè)置的電視輸入接口參數(shù),并根據(jù)電視輸入接口參數(shù)獲取電視信號(hào),從而在第三類(lèi)驅(qū)動(dòng)的喚醒函數(shù)執(zhí)行完成之后,可以播放電視信號(hào),完成開(kāi)機(jī)過(guò)程。電視終端通過(guò)驅(qū)動(dòng)管理模塊控制各個(gè)驅(qū)動(dòng)的喚醒函數(shù)的執(zhí)行,從而將驅(qū)動(dòng)的控制權(quán)從操作系統(tǒng)中解耦出來(lái),以簡(jiǎn)化開(kāi)機(jī)流程,并且驅(qū)動(dòng)管理模塊將執(zhí)行時(shí)間比較長(zhǎng)的驅(qū)動(dòng)的喚醒函數(shù)以并行方式執(zhí)行,可以縮短開(kāi)機(jī)時(shí)間,從而提高了開(kāi)機(jī)速度,進(jìn)而提升了用戶(hù)體驗(yàn)。此外,對(duì)于當(dāng)前設(shè)置的電視輸入接口參數(shù)和電視信號(hào)的獲取,與驅(qū)動(dòng)并行處理,為視頻的播放提前做好準(zhǔn)備,從而進(jìn)一步提高了開(kāi)機(jī)速度。
附圖說(shuō)明
圖1A為本申請(qǐng)根據(jù)一示例性實(shí)施例示出的一種電視快速開(kāi)機(jī)方法的實(shí)施例流程圖;
圖1B為本申請(qǐng)根據(jù)一示例性實(shí)施例示出的一種現(xiàn)有驅(qū)動(dòng)喚醒過(guò)程圖;
圖1C為本申請(qǐng)根據(jù)圖1A所示實(shí)施例示出的一種驅(qū)動(dòng)喚醒過(guò)程圖;
圖2A為本申請(qǐng)根據(jù)一示例性實(shí)施例示出的另一種電視快速開(kāi)機(jī)方法的實(shí)施例流程圖;
圖2B為本申請(qǐng)根據(jù)圖2A實(shí)施例示出的一種開(kāi)機(jī)流程圖;
圖3為本申請(qǐng)根據(jù)一示例性實(shí)施例示出的另一種電視快速開(kāi)機(jī)方法的實(shí)施例流程圖;
圖4為本申請(qǐng)根據(jù)一示例性實(shí)施例示出的一種電視終端的硬件結(jié)構(gòu)圖;
圖5為本申請(qǐng)根據(jù)一示例性實(shí)施例示出的一種電視快速開(kāi)機(jī)裝置的實(shí)施例結(jié)構(gòu)圖。
具體實(shí)施方式
這里將詳細(xì)地對(duì)示例性實(shí)施例進(jìn)行說(shuō)明,其示例表示在附圖中。下面的描述涉及附圖時(shí),除非另有表示,不同附圖中的相同數(shù)字表示相同或相似的要素。以下示例性實(shí)施例中所描述的實(shí)施方式并不代表與本申請(qǐng)相一致的所有實(shí)施方式。相反,它們僅是與如所附權(quán)利要求書(shū)中所詳述的、本申請(qǐng)的一些方面相一致的裝置和方法的例子。
在本申請(qǐng)使用的術(shù)語(yǔ)是僅僅出于描述特定實(shí)施例的目的,而非旨在限制本申請(qǐng)。在本申請(qǐng)和所附權(quán)利要求書(shū)中所使用的單數(shù)形式的“一種”、“所述”和“該”也旨在包括多數(shù)形式,除非上下文清楚地表示其他含義。還應(yīng)當(dāng)理解,本文中使用的術(shù)語(yǔ)“和/或”是指并包含一個(gè)或多個(gè)相關(guān)聯(lián)的列出項(xiàng)目的任何或所有可能組合。
應(yīng)當(dāng)理解,盡管在本申請(qǐng)可能采用術(shù)語(yǔ)第一、第二、第三等來(lái)描述各種信息,但這些信息不應(yīng)限于這些術(shù)語(yǔ)。這些術(shù)語(yǔ)僅用來(lái)將同一類(lèi)型的信息彼此區(qū)分開(kāi)。例如,在不脫離本申請(qǐng)范圍的情況下,第一信息也可以被稱(chēng)為第二信息,類(lèi)似地,第二信息也可以被稱(chēng)為第一信息。取決于語(yǔ)境,如在此所使用的詞語(yǔ)“如果”可以被解釋成為“在……時(shí)”或“當(dāng)……時(shí)”或“響應(yīng)于確定”。
圖1A為本申請(qǐng)根據(jù)一示例性實(shí)施例示出的一種電視快速開(kāi)機(jī)方法的實(shí)施例流程圖;圖1B為本申請(qǐng)根據(jù)一示例性實(shí)施例示出的一種現(xiàn)有驅(qū)動(dòng)喚醒過(guò)程圖;圖1C為本申請(qǐng)根據(jù)圖1A所示實(shí)施例示出的一種驅(qū)動(dòng)喚醒過(guò)程圖,該實(shí)施例可以應(yīng)用在包括驅(qū)動(dòng)管理模塊的電視終端上,在本申請(qǐng)實(shí)施例中,該驅(qū)動(dòng)管理模塊可以用于控制第一類(lèi)驅(qū)動(dòng)的喚醒函數(shù)、第二類(lèi)驅(qū)動(dòng)的喚醒函數(shù)以及第三類(lèi)驅(qū)動(dòng)的喚醒函數(shù)的執(zhí)行,其中,第二類(lèi)驅(qū)動(dòng)的喚醒函數(shù)的執(zhí)行依賴(lài)于所述第一類(lèi)驅(qū)動(dòng)的喚醒函數(shù)的,第三類(lèi)驅(qū)動(dòng)的喚醒函數(shù)的執(zhí)行依賴(lài)于第二類(lèi)驅(qū)動(dòng)的喚醒函數(shù)的執(zhí)行,且第二類(lèi)驅(qū)動(dòng)的喚醒函數(shù)的執(zhí)行時(shí)間比第一類(lèi)驅(qū)動(dòng)的喚醒函數(shù)和第三類(lèi)驅(qū)動(dòng)的喚醒函數(shù)的執(zhí)行時(shí)間長(zhǎng),且每類(lèi)驅(qū)動(dòng)至少包括一個(gè)驅(qū)動(dòng),每個(gè)驅(qū)動(dòng)分別具有對(duì)應(yīng)的喚醒函數(shù),該喚醒函數(shù)用于喚醒對(duì)應(yīng)的驅(qū)動(dòng),從而使對(duì)應(yīng)的硬件從待機(jī)模式或者斷電模式切換為喚醒工作模式,并能夠通過(guò)該驅(qū)動(dòng)與電視終端的操作系統(tǒng)進(jìn)行I/O操作。如圖1A所示,該電視快速開(kāi)機(jī)方法包括如下步驟:
步驟101:在接收到待機(jī)喚醒指令之后,通過(guò)驅(qū)動(dòng)管理模塊執(zhí)行第一類(lèi)驅(qū)動(dòng)的喚醒函數(shù)。
在一實(shí)施例中,待機(jī)喚醒指令可以由遙控器的紅外發(fā)射器發(fā)出,即遙控器在檢測(cè)到開(kāi)機(jī)按鍵被觸發(fā)后,生成待機(jī)喚醒指令,然后通過(guò)紅外發(fā)射器發(fā)出。電視終端的紅外接收器接收到待機(jī)喚醒指令之后,將該待機(jī)喚醒指令發(fā)送至處理器,從而觸發(fā)開(kāi)機(jī)過(guò)程。
在另一實(shí)施例中,由于第一類(lèi)驅(qū)動(dòng)的喚醒函數(shù)屬于基礎(chǔ)驅(qū)動(dòng)的喚醒函數(shù),例如,GPIO(General Purpose Input Output,通用輸入/輸出端口)驅(qū)動(dòng)、HDMI(High Definition Multimedia Interface,高清晰度多媒體接口)接口驅(qū)動(dòng)、IIC接口驅(qū)動(dòng)等,它是其他驅(qū)動(dòng)的喚醒函數(shù)依賴(lài)的基礎(chǔ),即第二類(lèi)驅(qū)動(dòng)的喚醒函數(shù)和第三類(lèi)驅(qū)動(dòng)的喚醒函數(shù)的執(zhí)行均依賴(lài)于第一類(lèi)驅(qū)動(dòng)的喚醒函數(shù)的執(zhí)行,因此可以先通過(guò)驅(qū)動(dòng)管理模塊執(zhí)行第一類(lèi)驅(qū)動(dòng)的喚醒函數(shù)。本領(lǐng)域技術(shù)人員可以理解的是,具體如何設(shè)計(jì)驅(qū)動(dòng)的喚醒函數(shù)可以通過(guò)相關(guān)技術(shù)實(shí)現(xiàn),本申請(qǐng)?jiān)诖瞬贿M(jìn)行詳述。
需要說(shuō)明的是,第一類(lèi)驅(qū)動(dòng)的喚醒函數(shù)的執(zhí)行時(shí)間比較短,甚至比創(chuàng)建一個(gè)線程的時(shí)間還短,為了減少電視終端創(chuàng)建線程的資源開(kāi)銷(xiāo),驅(qū)動(dòng)管理模塊可以以串行方式執(zhí)行第一類(lèi)驅(qū)動(dòng)的喚醒函數(shù),從而,電視終端只需創(chuàng)一個(gè)主線程,便可實(shí)現(xiàn)第一類(lèi)驅(qū)動(dòng)的喚醒函數(shù)的順利執(zhí)行,可以減少電視終端的資源開(kāi)銷(xiāo)。本領(lǐng)域技術(shù)人員可以理解的是,具體如何創(chuàng)建一個(gè)線程可以通過(guò)相關(guān)技術(shù)實(shí)現(xiàn),本申請(qǐng)?jiān)诖瞬贿M(jìn)行詳述。
其中,在第一類(lèi)驅(qū)動(dòng)中,每個(gè)驅(qū)動(dòng)的喚醒函數(shù)的執(zhí)行互相沒(méi)有依賴(lài)關(guān)系,因此對(duì)于串行執(zhí)行的順序,本申請(qǐng)不進(jìn)行限制。
步驟102:通過(guò)驅(qū)動(dòng)管理模塊執(zhí)行第二類(lèi)驅(qū)動(dòng)的喚醒函數(shù)之后,執(zhí)行第三類(lèi)驅(qū)動(dòng)的喚醒函數(shù),且不同第二類(lèi)驅(qū)動(dòng)的喚醒函數(shù)以并行方式執(zhí)行。
在一實(shí)施例中,由于第二類(lèi)驅(qū)動(dòng)的喚醒函數(shù)的執(zhí)行時(shí)間比第一類(lèi)驅(qū)動(dòng)的喚醒函數(shù)和第三類(lèi)驅(qū)動(dòng)的喚醒函數(shù)的執(zhí)行時(shí)間都長(zhǎng),且比創(chuàng)建一個(gè)線程的時(shí)間長(zhǎng)好幾倍,例如,顯示屏驅(qū)動(dòng)受時(shí)序的要求,該驅(qū)動(dòng)的喚醒函數(shù)的執(zhí)行主要消耗在時(shí)序要求的等待上,并且,在第二類(lèi)驅(qū)動(dòng)中,每個(gè)驅(qū)動(dòng)的喚醒函數(shù)的執(zhí)行互相也沒(méi)有依賴(lài)關(guān)系,因此,通過(guò)驅(qū)動(dòng)管理模塊執(zhí)行第二類(lèi)驅(qū)動(dòng)的喚醒函數(shù)時(shí),對(duì)不同第二類(lèi)驅(qū)動(dòng)的喚醒函數(shù)可以以并行方式執(zhí)行,即為每個(gè)第二類(lèi)驅(qū)動(dòng)創(chuàng)建并行線程,以并行執(zhí)行每個(gè)驅(qū)動(dòng)的喚醒函數(shù),并在執(zhí)行完成后,關(guān)閉并行線程。
需要說(shuō)明的是,第三類(lèi)驅(qū)動(dòng)的喚醒函數(shù)的執(zhí)行時(shí)間也比較短,為了減少電視終端創(chuàng)建線程的資源開(kāi)銷(xiāo),驅(qū)動(dòng)管理模塊可以以串行方式執(zhí)行第三類(lèi)驅(qū)動(dòng)的喚醒函數(shù),從而,電視終端只需利用主線程便可實(shí)現(xiàn)第三類(lèi)驅(qū)動(dòng)的喚醒函數(shù)的順利執(zhí)行,進(jìn)而進(jìn)一步減少了電視終端的資源開(kāi)銷(xiāo)。
步驟103:在執(zhí)行第二類(lèi)驅(qū)動(dòng)的喚醒函數(shù)期間,獲取當(dāng)前設(shè)置的電視輸入接口參數(shù),并根據(jù)該電視輸入接口參數(shù)獲取電視信號(hào)。
在一實(shí)施例中,由于在執(zhí)行第二類(lèi)驅(qū)動(dòng)的喚醒函數(shù)期間,第一類(lèi)驅(qū)動(dòng)已經(jīng)被喚醒,其對(duì)應(yīng)的各個(gè)硬件都可以與操作系統(tǒng)有數(shù)據(jù)交互,因此可以在此期間,并行獲取當(dāng)前設(shè)置的電視輸入接口參數(shù),并根據(jù)該電視輸入接口參數(shù)獲取電視信號(hào)。其中,當(dāng)前設(shè)置的電視輸入接口參數(shù)可以是HDMI接口,也可以是TV接口,本申請(qǐng)?jiān)诖瞬贿M(jìn)行限制。由于這些接口的驅(qū)動(dòng)均屬于第一類(lèi)驅(qū)動(dòng),因此在執(zhí)行第一類(lèi)驅(qū)動(dòng)的喚醒函數(shù)之后,已經(jīng)能夠通過(guò)這些接口獲取到相應(yīng)的數(shù)據(jù)。
步驟104:在第三類(lèi)驅(qū)動(dòng)的喚醒函數(shù)執(zhí)行完成之后,播放電視信號(hào)。
在一實(shí)施例中,在第三類(lèi)驅(qū)動(dòng)的喚醒函數(shù)執(zhí)行完成之后,完成所有驅(qū)動(dòng)的喚醒,電視終端可以利用這些驅(qū)動(dòng)的硬件對(duì)電視信號(hào)進(jìn)行識(shí)別、處理,并進(jìn)行播放,完成開(kāi)機(jī)過(guò)程。
在一示例性的場(chǎng)景中,結(jié)合圖1B和圖1C所示,圖1B是以串行方式喚醒的每個(gè)驅(qū)動(dòng),其需要消耗的總時(shí)間為每個(gè)驅(qū)動(dòng)的喚醒函數(shù)的執(zhí)行時(shí)間之和,圖1C是將各個(gè)驅(qū)動(dòng)進(jìn)行分類(lèi)處理,將基礎(chǔ)類(lèi)驅(qū)動(dòng)作為第一類(lèi)驅(qū)動(dòng),且第一類(lèi)驅(qū)動(dòng)的喚醒函數(shù)的執(zhí)行時(shí)間均比較短,每個(gè)驅(qū)動(dòng)的喚醒函數(shù)以串行方式執(zhí)行;將依賴(lài)于第一類(lèi)驅(qū)動(dòng)的喚醒函數(shù)的執(zhí)行的驅(qū)動(dòng)作為第二類(lèi)驅(qū)動(dòng),且第二類(lèi)驅(qū)動(dòng)的喚醒函數(shù)的執(zhí)行時(shí)間均比較長(zhǎng),每個(gè)驅(qū)動(dòng)的喚醒函數(shù)以并行方式執(zhí)行;將依賴(lài)于第二類(lèi)驅(qū)動(dòng)的喚醒函數(shù)的執(zhí)行的驅(qū)動(dòng)作為第三類(lèi)驅(qū)動(dòng),且第三類(lèi)驅(qū)動(dòng)的喚醒函數(shù)的執(zhí)行時(shí)間也均比較短,每個(gè)驅(qū)動(dòng)的喚醒函數(shù)以串行方式執(zhí)行,假設(shè)第一類(lèi)驅(qū)動(dòng)有4個(gè)驅(qū)動(dòng),每個(gè)驅(qū)動(dòng)的喚醒函數(shù)的執(zhí)行時(shí)間均為50毫秒,第二類(lèi)驅(qū)動(dòng)有3個(gè)驅(qū)動(dòng),每個(gè)驅(qū)動(dòng)的喚醒函數(shù)的執(zhí)行時(shí)間分別為1440毫秒、651毫秒、2429毫秒,第三類(lèi)驅(qū)動(dòng)有2個(gè),每個(gè)驅(qū)動(dòng)的喚醒函數(shù)的執(zhí)行時(shí)間均為50毫秒。如果使用圖1B的喚醒過(guò)程,則需要消耗6228毫秒,而如果使用圖1C的喚醒過(guò)程,則需要消耗2729毫秒。
本實(shí)施例中,電視終端在接收到待機(jī)喚醒指令之后,通過(guò)驅(qū)動(dòng)管理模塊先執(zhí)行第一類(lèi)驅(qū)動(dòng)的喚醒函數(shù),然后再執(zhí)行第二類(lèi)驅(qū)動(dòng)的喚醒函數(shù),且不同第二類(lèi)驅(qū)動(dòng)的喚醒函數(shù)以并行方式執(zhí)行,最后執(zhí)行第三類(lèi)驅(qū)動(dòng)的喚醒函數(shù);并且在執(zhí)行第二類(lèi)驅(qū)動(dòng)的喚醒函數(shù)期間,可以并行獲取當(dāng)前設(shè)置的電視輸入接口參數(shù),并根據(jù)電視輸入接口參數(shù)獲取電視信號(hào),從而在第三類(lèi)驅(qū)動(dòng)的喚醒函數(shù)執(zhí)行完成之后,可以播放電視信號(hào),完成開(kāi)機(jī)過(guò)程。電視終端通過(guò)驅(qū)動(dòng)管理模塊控制各個(gè)驅(qū)動(dòng)的喚醒函數(shù)的執(zhí)行,從而將驅(qū)動(dòng)的控制權(quán)從操作系統(tǒng)中解耦出來(lái),以簡(jiǎn)化開(kāi)機(jī)流程,并且驅(qū)動(dòng)管理模塊將執(zhí)行時(shí)間比較長(zhǎng)的驅(qū)動(dòng)的喚醒函數(shù)以并行方式執(zhí)行,可以縮短開(kāi)機(jī)時(shí)間,從而提高了開(kāi)機(jī)速度,進(jìn)而提升了用戶(hù)體驗(yàn)。此外,對(duì)于當(dāng)前設(shè)置的電視輸入接口參數(shù)和電視信號(hào)的獲取,與驅(qū)動(dòng)并行處理,為視頻的播放提前做好準(zhǔn)備,從而進(jìn)一步提高了開(kāi)機(jī)速度。
圖2A為本申請(qǐng)根據(jù)一示例性實(shí)施例示出的另一種電視快速開(kāi)機(jī)方法的實(shí)施例流程圖;圖2B為本申請(qǐng)根據(jù)圖2A實(shí)施例示出的一種開(kāi)機(jī)流程圖,本實(shí)施例利用本申請(qǐng)實(shí)施例提供的上述方法,以通過(guò)驅(qū)動(dòng)管理模塊執(zhí)行第一類(lèi)驅(qū)動(dòng)的喚醒函數(shù)為例進(jìn)行示例性說(shuō)明。在本申請(qǐng)實(shí)施例中,該電視終端還可以包括電源管理模塊,該電源管理模塊用于實(shí)現(xiàn)操作系統(tǒng)所要求的電源管理機(jī)制,且電源管理模塊的設(shè)計(jì)可以作為一個(gè)虛擬驅(qū)動(dòng)設(shè)計(jì),因此該電源管理模塊可以預(yù)先向操作系統(tǒng)注冊(cè)電源管理函數(shù),此外,驅(qū)動(dòng)管理模塊的設(shè)計(jì)也可以作為一個(gè)虛擬驅(qū)動(dòng)設(shè)計(jì),因此可以具有對(duì)應(yīng)的喚醒函數(shù),并可以向電源管理模塊注冊(cè)該喚醒函數(shù)。如圖2A所示,該電視快速開(kāi)機(jī)方法包括如下步驟:
步驟201:在接收到待機(jī)喚醒指令之后,啟動(dòng)操作系統(tǒng)。
在一實(shí)施例中,待機(jī)喚醒指令的描述可以參見(jiàn)上述步驟101的描述,本申請(qǐng)?jiān)诖瞬辉僭斒?。電視終端的處理器在接收到待機(jī)喚醒指令之后,觸發(fā)操作系統(tǒng)的啟動(dòng)過(guò)程,進(jìn)而開(kāi)啟開(kāi)機(jī)過(guò)程。
步驟202:基于操作系統(tǒng)的啟動(dòng),觸發(fā)電源管理函數(shù),并通過(guò)電源管理函數(shù)執(zhí)行驅(qū)動(dòng)管理模塊的喚醒函數(shù)。
在一實(shí)施例中,由于操作系統(tǒng)中注冊(cè)有電源管理函數(shù),因此在操作系統(tǒng)啟動(dòng)之后,可以觸發(fā)電源管理模塊的電源管理函數(shù),在電源管理函數(shù)中,遍歷注冊(cè)給電源管理模塊的函數(shù),由于驅(qū)動(dòng)管理模塊向電源管理模塊注冊(cè)了喚醒函數(shù),因此可以遍歷到驅(qū)動(dòng)管理模塊對(duì)應(yīng)的喚醒函數(shù),并執(zhí)行該喚醒函數(shù)。
步驟203:通過(guò)驅(qū)動(dòng)管理模塊的喚醒函數(shù)執(zhí)行第一類(lèi)驅(qū)動(dòng)的喚醒函數(shù)。
在一示例性的場(chǎng)景中,如圖2B所示,電源管理模塊預(yù)先向操作系統(tǒng)注冊(cè)電源管理函數(shù),驅(qū)動(dòng)管理模塊預(yù)先向電源管理模塊注冊(cè)喚醒函數(shù),該喚醒函數(shù)可以控制各類(lèi)驅(qū)動(dòng)的喚醒函數(shù)的執(zhí)行順序,因此電視終端在接收到待機(jī)喚醒指令之后,啟動(dòng)操作系統(tǒng),然后觸發(fā)電源管理模塊的電源管理函數(shù)的執(zhí)行,并由電源管理函數(shù)執(zhí)行驅(qū)動(dòng)管理模塊的喚醒函數(shù),從而通過(guò)該喚醒函數(shù)可以先執(zhí)行第一類(lèi)驅(qū)動(dòng)的喚醒函數(shù),然后再執(zhí)行第二類(lèi)驅(qū)動(dòng)的喚醒函數(shù),最后執(zhí)行第三類(lèi)驅(qū)動(dòng)的喚醒函數(shù)。
本實(shí)施例中,電源管理模塊可以實(shí)現(xiàn)操作系統(tǒng)所要求的電源管理機(jī)制,即電源管理模塊作為虛擬驅(qū)動(dòng),通過(guò)向操作系統(tǒng)注冊(cè)電源管理函數(shù),以屏蔽電源管理的處理細(xì)節(jié),然后驅(qū)動(dòng)管理模塊也作為虛擬驅(qū)動(dòng),向電源管理模塊注冊(cè)驅(qū)動(dòng)管理模塊對(duì)應(yīng)的喚醒函數(shù),該喚醒函數(shù)可以控制各驅(qū)動(dòng)的喚醒函數(shù)的執(zhí)行順序。
圖3為本申請(qǐng)根據(jù)一示例性實(shí)施例示出的另一種電視快速開(kāi)機(jī)方法的實(shí)施例流程圖,本實(shí)施例利用本申請(qǐng)實(shí)施例提供的上述方法,在本申請(qǐng)實(shí)施例中,每個(gè)驅(qū)動(dòng)還分別具有對(duì)應(yīng)的待機(jī)函數(shù),且驅(qū)動(dòng)管理模塊也具有對(duì)應(yīng)的待機(jī)函數(shù),電源管理模塊還可以預(yù)先向操作系統(tǒng)注冊(cè)有電源管理回調(diào)函數(shù),該實(shí)施例包括如下步驟:
步驟301:在接收到待機(jī)指令之后,關(guān)閉操作系統(tǒng),并觸發(fā)電源管理回調(diào)函數(shù),通過(guò)電源管理回調(diào)函數(shù)執(zhí)行驅(qū)動(dòng)管理模塊的待機(jī)函數(shù)。
在一實(shí)施例中,如上述步驟101所述,待機(jī)指令也可以由有空氣的紅外發(fā)射器發(fā)出,即遙控器在檢測(cè)到待機(jī)按鍵被觸發(fā)后,生成待機(jī)指令,然后通過(guò)紅外發(fā)射器發(fā)出。電視終端的紅外接收器接收到待機(jī)指令后,將該待機(jī)指令發(fā)送至處理器,從而觸發(fā)待機(jī)過(guò)程。
步驟301中觸發(fā)電源管理回調(diào)函數(shù),通過(guò)電源管理回調(diào)函數(shù)執(zhí)行驅(qū)動(dòng)管理模塊的待機(jī)函數(shù)的描述可以參見(jiàn)上述步驟202的描述,只是將電源管理函數(shù)變?yōu)殡娫垂芾砘卣{(diào)函數(shù),驅(qū)動(dòng)管理模塊的喚醒函數(shù)變?yōu)轵?qū)動(dòng)管理模塊的待機(jī)函數(shù),本申請(qǐng)?jiān)诖瞬贿M(jìn)行詳述。
步驟302:通過(guò)待機(jī)函數(shù)執(zhí)行第三類(lèi)驅(qū)動(dòng)的待機(jī)函數(shù)、第二類(lèi)驅(qū)動(dòng)的待機(jī)函數(shù)、第一類(lèi)驅(qū)動(dòng)的待機(jī)函數(shù)。
在一實(shí)施例中,驅(qū)動(dòng)管理模塊的待機(jī)函數(shù)用于控制各驅(qū)動(dòng)的待機(jī)函數(shù)的執(zhí)行順序,由于開(kāi)機(jī)過(guò)程中執(zhí)行順序是:先是第一類(lèi)驅(qū)動(dòng)的喚醒函數(shù)、再是第二類(lèi)驅(qū)動(dòng)的喚醒函數(shù)、最后是第三類(lèi)驅(qū)動(dòng)的喚醒函數(shù)。相應(yīng)的,待機(jī)過(guò)程中執(zhí)行順序可以是:先第三類(lèi)驅(qū)動(dòng)的待機(jī)函數(shù)、再是第二類(lèi)驅(qū)動(dòng)的待機(jī)函數(shù)、最后是第一類(lèi)驅(qū)動(dòng)的待機(jī)函數(shù)。
步驟303:記錄當(dāng)前設(shè)置的電視輸入接口參數(shù)。
在一實(shí)施例中,視頻終端記錄當(dāng)前設(shè)置的電視輸入接口參數(shù),以在開(kāi)機(jī)過(guò)程中獲取。
本實(shí)施例中,電視終端在利用上述方法實(shí)施例實(shí)現(xiàn)開(kāi)機(jī)之后,相應(yīng)的,通過(guò)電源管理模塊對(duì)應(yīng)的電源管理回調(diào)函數(shù)和驅(qū)動(dòng)管理模塊對(duì)應(yīng)的待機(jī)函數(shù)也可以完成待機(jī)過(guò)程,從而,能夠確保電視終端有序進(jìn)入待機(jī)狀態(tài)。
與前述電視快速開(kāi)機(jī)方法的實(shí)施例相對(duì)應(yīng),本申請(qǐng)還提供了電視快速開(kāi)機(jī)裝置的實(shí)施例。
本申請(qǐng)電視快速開(kāi)機(jī)裝置的實(shí)施例可以應(yīng)用在電視終端上。裝置實(shí)施例可以通過(guò)軟件實(shí)現(xiàn),也可以通過(guò)硬件或者軟硬件結(jié)合的方式實(shí)現(xiàn)。以軟件實(shí)現(xiàn)為例,作為一個(gè)邏輯意義上的裝置,是通過(guò)其所在設(shè)備的處理器將非易失性存儲(chǔ)器中對(duì)應(yīng)的計(jì)算機(jī)程序指令讀取到內(nèi)存中運(yùn)行形成的。從硬件層面而言,如圖4所示,為本申請(qǐng)根據(jù)一示例性實(shí)施例示出的一種電視終端的硬件結(jié)構(gòu)圖,除了圖4所示的處理器、內(nèi)存、網(wǎng)絡(luò)接口、以及非易失性存儲(chǔ)器之外,實(shí)施例中裝置所在的設(shè)備通常根據(jù)該設(shè)備的實(shí)際功能,還可以包括其他硬件,對(duì)此不再贅述。
圖5為本申請(qǐng)根據(jù)一示例性實(shí)施例示出的一種電視快速開(kāi)機(jī)裝置的實(shí)施例結(jié)構(gòu)圖,該實(shí)施例可以應(yīng)用在包括驅(qū)動(dòng)管理模塊的電視終端上,在本申請(qǐng)實(shí)施例中,該驅(qū)動(dòng)管理模塊可以用于控制第一類(lèi)驅(qū)動(dòng)的喚醒函數(shù)、第二類(lèi)驅(qū)動(dòng)的喚醒函數(shù)以及第三類(lèi)驅(qū)動(dòng)的喚醒函數(shù)的執(zhí)行,其中,第二類(lèi)驅(qū)動(dòng)的喚醒函數(shù)的執(zhí)行依賴(lài)于所述第一類(lèi)驅(qū)動(dòng)的喚醒函數(shù)的,第三類(lèi)驅(qū)動(dòng)的喚醒函數(shù)的執(zhí)行依賴(lài)于第二類(lèi)驅(qū)動(dòng)的喚醒函數(shù)的執(zhí)行,且每類(lèi)驅(qū)動(dòng)至少包括一個(gè)驅(qū)動(dòng),每個(gè)驅(qū)動(dòng)分別具有對(duì)應(yīng)的喚醒函數(shù)。如圖5所示,該電視快速開(kāi)機(jī)裝置包括:第一執(zhí)行模塊510、第二執(zhí)行模塊520、獲取模塊530、播放模塊540。
其中,第一執(zhí)行模塊510,用于在接收到待機(jī)喚醒指令之后,通過(guò)所述驅(qū)動(dòng)管理模塊執(zhí)行所述第一類(lèi)驅(qū)動(dòng)的喚醒函數(shù);
第二執(zhí)行模塊520,用于通過(guò)所述驅(qū)動(dòng)管理模塊執(zhí)行所述第二類(lèi)驅(qū)動(dòng)的喚醒函數(shù)之后,執(zhí)行所述第三類(lèi)驅(qū)動(dòng)的喚醒函數(shù);其中,不同第二類(lèi)驅(qū)動(dòng)的喚醒函數(shù)以并行方式執(zhí)行;
獲取模塊530,用于在執(zhí)行所述第二類(lèi)驅(qū)動(dòng)的喚醒函數(shù)期間,獲取當(dāng)前設(shè)置的電視輸入接口參數(shù),并根據(jù)所述電視輸入接口參數(shù)獲取電視信號(hào);
播放模塊540,用于在所述第三類(lèi)驅(qū)動(dòng)的喚醒函數(shù)執(zhí)行完成之后,播放所述電視信號(hào);
其中,所述第二類(lèi)驅(qū)動(dòng)的喚醒函數(shù)的執(zhí)行時(shí)間比所述第一類(lèi)驅(qū)動(dòng)的喚醒函數(shù)和所述第三類(lèi)驅(qū)動(dòng)的喚醒函數(shù)的執(zhí)行時(shí)間長(zhǎng)。
在一實(shí)施例中,第一執(zhí)行模塊510,具體用于通過(guò)所述驅(qū)動(dòng)管理模塊,以串行方式執(zhí)行所述第一類(lèi)驅(qū)動(dòng)的喚醒函數(shù)。
在一實(shí)施例中,第二執(zhí)行模塊520,具體用于在執(zhí)行所述第三類(lèi)驅(qū)動(dòng)的喚醒函數(shù)的過(guò)程中,以串行方式執(zhí)行所述第三類(lèi)驅(qū)動(dòng)的喚醒函數(shù)。
在一實(shí)施例中,所述電視終端還包括電源管理模塊,所述電源管理模塊預(yù)先向操作系統(tǒng)注冊(cè)有電源管理函數(shù),所述驅(qū)動(dòng)管理模塊具有對(duì)應(yīng)的喚醒函數(shù),所述裝置還包括(圖5中未示出):
啟動(dòng)模塊,用于在接收到待機(jī)喚醒指令之后,啟動(dòng)所述操作系統(tǒng);
觸發(fā)模塊,用于基于所述操作系統(tǒng)的啟動(dòng),觸發(fā)所述電源管理函數(shù),并通過(guò)所述電源管理函數(shù)執(zhí)行所述驅(qū)動(dòng)管理模塊的喚醒函數(shù);
第一執(zhí)行模塊510,具體用于通過(guò)所述驅(qū)動(dòng)管理模塊的喚醒函數(shù)執(zhí)行所述第一類(lèi)驅(qū)動(dòng)的喚醒函數(shù)。
在一實(shí)施例中,每個(gè)驅(qū)動(dòng)分別具有對(duì)應(yīng)的待機(jī)函數(shù),所述驅(qū)動(dòng)管理模塊具有對(duì)應(yīng)的待機(jī)函數(shù),所述電源管理模塊預(yù)先向所述操作系統(tǒng)注冊(cè)有電源管理回調(diào)函數(shù),所述裝置還包括(圖5中未示出):
關(guān)閉及觸發(fā)模塊,用于在接收到待機(jī)指令之后,關(guān)閉所述操作系統(tǒng),并觸發(fā)所述電源管理回調(diào)函數(shù),通過(guò)所述電源管理回調(diào)函數(shù)執(zhí)行所述驅(qū)動(dòng)管理模塊的待機(jī)函數(shù);
第三執(zhí)行模塊,用于通過(guò)所述待機(jī)函數(shù)執(zhí)行所述第三類(lèi)驅(qū)動(dòng)的待機(jī)函數(shù)、所述第二類(lèi)驅(qū)動(dòng)的待機(jī)函數(shù)、所述第一類(lèi)驅(qū)動(dòng)的待機(jī)函數(shù);
記錄模塊,用于記錄所述當(dāng)前設(shè)置的電視輸入接口參數(shù)。
上述裝置中各個(gè)單元的功能和作用的實(shí)現(xiàn)過(guò)程具體詳見(jiàn)上述方法中對(duì)應(yīng)步驟的實(shí)現(xiàn)過(guò)程,在此不再贅述。
對(duì)于裝置實(shí)施例而言,由于其基本對(duì)應(yīng)于方法實(shí)施例,所以相關(guān)之處參見(jiàn)方法實(shí)施例的部分說(shuō)明即可。以上所描述的裝置實(shí)施例僅僅是示意性的,其中所述作為分離部件說(shuō)明的單元可以是或者也可以不是物理上分開(kāi)的,作為單元顯示的部件可以是或者也可以不是物理單元,即可以位于一個(gè)地方,或者也可以分布到多個(gè)網(wǎng)絡(luò)單元上。可以根據(jù)實(shí)際的需要選擇其中的部分或者全部模塊來(lái)實(shí)現(xiàn)本申請(qǐng)方案的目的。本領(lǐng)域普通技術(shù)人員在不付出創(chuàng)造性勞動(dòng)的情況下,即可以理解并實(shí)施。
以上所述僅為本申請(qǐng)的較佳實(shí)施例而已,并不用以限制本申請(qǐng),凡在本申請(qǐng)的精神和原則之內(nèi),所做的任何修改、等同替換、改進(jìn)等,均應(yīng)包含在本申請(qǐng)保護(hù)的范圍之內(nèi)。