本發(fā)明涉及固件升級技術,尤其涉及一種固件升級方法、終端和服務器。
背景技術:
目前,在終端進行固件升級時,可以采用基于開放移動聯(lián)盟(openmobilealliance,oma)-設備管理(devicemanagement,dm)協(xié)議的空中下載軟件升級(firmwareover-the-air,fota)流程進行搜包,從而得到升級包;整個fota流程需要客戶端(終端)和服務器進行多次交互,在fota流程中,終端需要首先將終端設備信息報告給服務器,之后,服務器向終端發(fā)送獲取固件版本信息的請求,終端再將自身的固件版本信息發(fā)送至服務器。
可以看出,由于在fota流程中終端需要與服務器進行多次交互,那么在終端和服務器之間的無線通信網(wǎng)絡的信道質(zhì)量較差時,或者,在終端的電量較低時,可能使固件升級失敗的可能性增加;另外,在終端和服務器之間的無線通信網(wǎng)絡的信道質(zhì)量較差時,或者,在終端的電量較低時,終端用戶很可能取消固件升級操作,使終端無法及時獲取升級包。
技術實現(xiàn)要素:
為解決上述技術問題,本發(fā)明實施例提供一種固件升級方法、終端和服務器,可以用于解決現(xiàn)有技術存在的終端固件升級失敗可能性高的問題。
為達到上述目的,本發(fā)明實施例的技術方案是這樣實現(xiàn)的:
本發(fā)明實施例提供了一種固件升級方法,所述方法包括:
終端向服務器發(fā)送固件升級請求,以使服務器基于所述固件升級請求向所述終端返回響應信息,其中,所述固件升級請求中至少攜帶有終端設備信息以及終端的固件版本信息;
終端接收來自服務器的響應信息;
終端在確定所述響應信息中包含升級包下載地址或升級包時,根據(jù)所述升級包下載地址或升級包進行固件升級。
可選的,所述終端向服務器發(fā)送固件升級請求包括:所述終端采用以安全為目標的超文本傳輸協(xié)議https向服務器發(fā)送固件升級請求;
所述終端接收來自服務器的響應信息,包括:所述終端基于https協(xié)議接收來自服務器的響應信息。
本發(fā)明實施例還提供了另一種固件升級方法,所述方法包括:
服務器接收來自終端的固件升級請求,所述固件升級請求中至少攜帶有終端設備信息以及終端的固件版本信息;
服務器根據(jù)所述固件升級請求確定所述終端需要進行固件升級時,將攜帶有升級包下載地址或升級包的響應信息發(fā)送至終端,以使終端根據(jù)所述升級包下載地址或升級包進行固件升級。
可選的,在服務器接收來自終端的固件升級請求前,所述方法還包括:服務器預先將至少一個用于進行終端固件升級的升級包存儲在服務器的內(nèi)存數(shù)據(jù)庫中;
相應地,在服務器接收到來自終端的固件升級請求后,所述方法還包括:服務器根據(jù)所述終端的固件版本信息在所述內(nèi)存數(shù)據(jù)庫中查找到對應的升級包時,確定所述終端需要進行固件升級。
可選的,所述方法還包括:
服務器根據(jù)所述終端的固件版本信息在所述內(nèi)存數(shù)據(jù)庫中查找到對應的升級包后,將所述終端的固件版本信息記為特定固件版本信息,并將對應的升級包存儲于服務器的緩存中;
服務器再次接收到固件升級請求,且確定再次接收的固件升級請求中攜帶有所述特定固件版本信息時,根據(jù)所述特定固件版本信息從所述服務器的緩存中查找對應的升級包。
可選的,在將對應的升級包存儲于服務器的緩存中時,設置服務器的緩存的生效時間;
在根據(jù)所述特定固件版本信息從所述服務器的緩存中查找對應的升級包后,若服務器的緩存中未存儲有對應的升級包或所述服務器的緩存已失效時,再次根據(jù)所述特定固件版本信息從內(nèi)存數(shù)據(jù)庫中查找對應的升級包。
本發(fā)明實施例還提供了一種終端,所述終端包括第一處理器、第一存儲器及第一通信總線;
所述第一通信總線用于實現(xiàn)第一處理器和第一存儲器之間的連接通信;
所述第一處理器用于執(zhí)行第一存儲器中存儲的固件升級程序,以實現(xiàn)以下步驟:
向服務器發(fā)送固件升級請求,以使服務器基于所述固件升級請求向所述終端返回響應信息,其中,所述固件升級請求中至少攜帶有終端設備信息以及終端的固件版本信息;
接收來自服務器的響應信息;
在確定所述響應信息中包含升級包下載地址或升級包時,根據(jù)所述升級包下載地址或升級包進行固件升級。
本發(fā)明實施例還提供了一種計算機可讀存儲介質(zhì),所述計算機可讀存儲介質(zhì)存儲有一個或者多個程序,所述一個或者多個程序可被一個或者多個處理器執(zhí)行,以實現(xiàn)以下步驟:
向服務器發(fā)送固件升級請求,以使服務器基于所述固件升級請求向所述終端返回響應信息,其中,所述固件升級請求中至少攜帶有終端設備信息以及終端的固件版本信息;
接收來自服務器的響應信息;
在確定所述響應信息中包含升級包下載地址或升級包時,根據(jù)所述升級包下載地址或升級包進行固件升級。
本發(fā)明實施例還提供了一種服務器,所述服務器包括:第二處理器、第二存儲器及第二通信總線;
所述第二通信總線用于實現(xiàn)第二處理器和第二存儲器之間的連接通信;
所述第二處理器用于執(zhí)行第二存儲器中存儲的固件升級程序,以實現(xiàn)以下步驟:
接收來自終端的固件升級請求,所述固件升級請求中至少攜帶有終端設備信息以及終端的固件版本信息;
根據(jù)所述固件升級請求確定所述終端需要進行固件升級時,將攜帶有升級包下載地址或升級包的響應信息發(fā)送至終端,以使終端根據(jù)所述升級包下載地址或升級包進行固件升級。
本發(fā)明實施例還提供了另一種計算機可讀存儲介質(zhì),所述計算機可讀存儲介質(zhì)存儲有一個或者多個程序,所述一個或者多個程序可被一個或者多個處理器執(zhí)行,以實現(xiàn)以下步驟:
接收來自終端的固件升級請求,所述固件升級請求中至少攜帶有終端設備信息以及終端的固件版本信息;
根據(jù)所述固件升級請求確定所述終端需要進行固件升級時,將攜帶有升級包下載地址或升級包的響應信息發(fā)送至終端,以使終端根據(jù)所述升級包下載地址或升級包進行固件升級。
本發(fā)明實施例提供的一種固件升級方法和終端中,終端向服務器發(fā)送固件升級請求,以使服務器基于所述固件升級請求向所述終端返回響應信息,其中,所述固件升級請求中至少攜帶有終端設備信息以及終端的固件版本信息;終端接收來自服務器的響應信息;終端在確定所述響應信息中包含升級包下載地址或升級包時,根據(jù)所述升級包下載地址或升級包進行固件升級;如此,終端通過與服務器的一次交互,便可以獲取升級包或升級包下載地址,即使在終端和服務器之間的無線通信網(wǎng)絡的信道質(zhì)量較差時,或者,在終端的電量較低時,終端也能及時獲取升級包或升級包下載地址,從而增加了固件升級成功的可能性。
本發(fā)明實施例提供的一種固件升級方法和服務器中,服務器接收來自終端的固件升級請求,所述固件升級請求中至少攜帶有終端設備信息以及終端的固件版本信息;服務器根據(jù)所述固件升級請求確定所述終端需要進行固件升級時,將攜帶有升級包下載地址或升級包的響應信息發(fā)送至終端,以使終端根據(jù)所述升級包下載地址或升級包進行固件升級;如此,服務器通過與終端的一次交互,便可以向終端發(fā)送升級包或升級包下載地址,即使在終端和服務器之間的無線通信網(wǎng)絡的信道質(zhì)量較差時,或者,在終端的電量較低時,終端也能及時獲取升級包或升級包下載地址,從而增加了固件升級成功的可能性。
附圖說明
圖1為實現(xiàn)本發(fā)明各個實施例一個可選的移動終端的硬件結構示意圖;
圖2為如圖1所示的移動終端的無線通信系統(tǒng)示意圖;
圖3為本發(fā)明實施例固件升級方法的一個流程圖;
圖4為本發(fā)明實施例在終端界面上提示用戶進行固件升級的示意圖一;
圖5為本發(fā)明實施例在終端界面上提示用戶進行固件升級的示意圖二;
圖6為本發(fā)明實施例在終端界面上提示不需要進行固件升級的示意圖;
圖7為本發(fā)明實施例終端和服務器進行一次交互的示意圖;
圖8為本發(fā)明實施例固件升級方法的另一個流程圖;
圖9為本發(fā)明實施例在服務器中查找升級包的一個示意圖;
圖10為本發(fā)明實施例在服務器中查找升級包的另一個示意圖;
圖11為本發(fā)明實施例的終端的硬件結構示意圖;
圖12為本發(fā)明實施例的服務器的硬件結構示意圖。
具體實施方式
應當理解,此處所描述的具體實施例僅僅用以解釋本發(fā)明,并不用于限定本發(fā)明。
現(xiàn)在將參考附圖描述實現(xiàn)本發(fā)明各個實施例的移動終端。在后續(xù)的描述中,使用用于表示元件的諸如“模塊”、“部件”或“單元”的后綴僅為了有利于本發(fā)明的說明,其本身并沒有特定的意義。因此,"模塊"與"部件"可以混合地使用。
移動終端可以以各種形式來實施。例如,本發(fā)明實施例中描述的終端可以包括諸如移動電話、智能電話、筆記本電腦、數(shù)字廣播接收器、個人數(shù)字助理(pda)、平板電腦(pad)、便攜式多媒體播放器(pmp)、導航裝置等等的移動終端以及諸如數(shù)字tv、臺式計算機等等的固定終端。下面,假設終端是移動終端。然而,本領域技術人員將理解的是,除了特別用于移動目的的元件之外,根據(jù)本發(fā)明的實施方式的構造也能夠應用于固定類型的終端。
圖1為實現(xiàn)本發(fā)明各個實施例一個可選的移動終端的硬件結構示意圖。
移動終端100可以包括無線通信單元110、用戶輸入單元130、輸出單元150、存儲器160、接口單元170、控制器180和電源單元190等等。圖1示出了具有各種組件的移動終端,但是應理解的是,并不要求實施所有示出的組件。可以替代地實施更多或更少的組件。將在下面詳細描述移動終端的元件。
無線通信單元110通常包括一個或多個組件,其允許移動終端100與無線通信系統(tǒng)或網(wǎng)絡之間的無線電通信。例如,無線通信單元可以包括廣播接收模塊111、移動通信模塊112、無線互聯(lián)網(wǎng)模塊113和短程通信模塊114中的至少一個。
廣播接收模塊111經(jīng)由廣播信道從外部廣播管理服務器接收廣播信號和/或廣播相關信息。廣播信道可以包括衛(wèi)星信道和/或地面信道。廣播管理服務器可以是生成并發(fā)送廣播信號和/或廣播相關信息的服務器或者接收之前生成的廣播信號和/或廣播相關信息并且將其發(fā)送給終端的服務器。廣播信號可以包括tv廣播信號、無線電廣播信號、數(shù)據(jù)廣播信號等等。而且,廣播信號可以進一步包括與tv或無線電廣播信號組合的廣播信號。廣播相關信息也可以經(jīng)由移動通信網(wǎng)絡提供,并且在該情況下,廣播相關信息可以由移動通信模塊112來接收。廣播信號可以以各種形式存在,例如,其可以以數(shù)字多媒體廣播(dmb)的電子節(jié)目指南(epg)、數(shù)字視頻廣播手持(dvb-h)的電子服務指南(esg)等等的形式而存在。廣播接收模塊111可以通過使用各種類型的廣播系統(tǒng)接收信號廣播。特別地,廣播接收模塊111可以通過使用諸如多媒體廣播-地面(dmb-t)、數(shù)字多媒體廣播-衛(wèi)星(dmb-s)、數(shù)字視頻廣播-手持(dvb-h),前向鏈路媒體(mediaflo@)的數(shù)據(jù)廣播系統(tǒng)、地面數(shù)字廣播綜合服務(isdb-t)等等的數(shù)字廣播系統(tǒng)接收數(shù)字廣播。廣播接收模塊111可以被構造為適合提供廣播信號的各種廣播系統(tǒng)以及上述數(shù)字廣播系統(tǒng)。經(jīng)由廣播接收模塊111接收的廣播信號和/或廣播相關信息可以存儲在存儲器160(或者其它類型的存儲介質(zhì))中。
移動通信模塊112將無線電信號發(fā)送到基站(例如,接入點、節(jié)點b等等)、外部終端以及服務器中的至少一個和/或從其接收無線電信號。這樣的無線電信號可以包括語音通話信號、視頻通話信號、或者根據(jù)文本和/或多媒體消息發(fā)送和/或接收的各種類型的數(shù)據(jù)。
無線互聯(lián)網(wǎng)模塊113支持移動終端的無線互聯(lián)網(wǎng)接入。該模塊可以內(nèi)部或外部地耦接到終端。該模塊所涉及的無線互聯(lián)網(wǎng)接入技術可以包括無線局域網(wǎng)(wlan)(wi-fi)、無線寬帶(wibro)、全球微波互聯(lián)接入(wimax)、高速下行鏈路分組接入(hsdpa)等等。
短程通信模塊114是用于支持短程通信的模塊。短程通信技術的一些示例包括藍牙tm、射頻識別(rfid)、紅外數(shù)據(jù)協(xié)會(irda)、超寬帶(uwb)、紫蜂tm等等。
用戶輸入單元130可以根據(jù)用戶輸入的命令生成鍵輸入數(shù)據(jù)以控制移動終端的各種操作。用戶輸入單元130允許用戶輸入各種類型的信息,并且可以包括鍵盤、鍋仔片、觸摸板(例如,檢測由于被接觸而導致的電阻、壓力、電容等變化的觸敏組件)、滾輪、搖桿等等。特別地,當觸摸板以層的形式疊加在顯示單元151上時,可以形成觸摸屏。
接口單元170用作至少一個外部裝置與移動終端100連接可以通過的接口。例如,外部裝置可以包括有線或無線頭戴式耳機端口、外部電源(或電池充電器)端口、有線或無線數(shù)據(jù)端口、存儲卡端口、用于連接具有識別模塊的裝置的端口、音頻輸入/輸出(i/o)端口、視頻i/o端口、耳機端口等等。識別模塊可以是存儲用于驗證用戶使用移動終端100的各種信息并且可以包括用戶識別模塊(uim)、客戶識別模塊(sim)、通用客戶識別模塊(usim)等等。另外,具有識別模塊的裝置(下面稱為“識別裝置”)可以采取智能卡的形式,因此,識別裝置可以經(jīng)由端口或其它連接裝置與移動終端100連接。接口單元170可以用于接收來自外部裝置的輸入(例如,數(shù)據(jù)信息、電力等等)并且將接收到的輸入傳輸?shù)揭苿咏K端100內(nèi)的一個或多個元件或者可以用于在移動終端和外部裝置之間傳輸數(shù)據(jù)。
另外,當移動終端100與外部底座連接時,接口單元170可以用作允許通過其將電力從底座提供到移動終端100的路徑或者可以用作允許從底座輸入的各種命令信號通過其傳輸?shù)揭苿咏K端的路徑。從底座輸入的各種命令信號或電力可以用作用于識別移動終端是否準確地安裝在底座上的信號。輸出單元150被構造為以視覺、音頻和/或觸覺方式提供輸出信號(例如,音頻信號、視頻信號、警報信號、振動信號等等)。輸出單元150可以包括顯示單元151、音頻輸出模塊152等等。
顯示單元151可以顯示在移動終端100中處理的信息。例如,當移動終端100處于電話通話模式時,顯示單元151可以顯示與通話或其它通信(例如,文本消息收發(fā)、多媒體文件下載等等)相關的用戶界面(user'sinterface,ui)或圖形用戶界面(gui)。當移動終端100處于視頻通話模式或者圖像捕獲模式時,顯示單元151可以顯示捕獲的圖像和/或接收的圖像、示出視頻或圖像以及相關功能的ui或gui等等。
同時,當顯示單元151和觸摸板以層的形式彼此疊加以形成觸摸屏時,顯示單元151可以用作輸入裝置和輸出裝置。顯示單元151可以包括液晶顯示器(lcd)、薄膜晶體管lcd(tft-lcd)、有機發(fā)光二極管(oled)顯示器、柔性顯示器、三維(3d)顯示器等等中的至少一種。這些顯示器中的一些可以被構造為透明狀以允許用戶從外部觀看,這可以稱為透明顯示器,典型的透明顯示器可以例如為透明有機發(fā)光二極管(toled)顯示器等等。根據(jù)特定想要的實施方式,移動終端100可以包括兩個或更多顯示單元(或其它顯示裝置),例如,移動終端可以包括外部顯示單元(未示出)和內(nèi)部顯示單元(未示出)。觸摸屏可用于檢測觸摸輸入壓力以及觸摸輸入位置和觸摸輸入面積。
音頻輸出模塊152可以在移動終端處于呼叫信號接收模式、通話模式、記錄模式、語音識別模式、廣播接收模式等等模式下時,將無線通信單元110接收的或者在存儲器160中存儲的音頻數(shù)據(jù)轉換音頻信號并且輸出為聲音。而且,音頻輸出模塊152可以提供與移動終端100執(zhí)行的特定功能相關的音頻輸出(例如,呼叫信號接收聲音、消息接收聲音等等)。音頻輸出模塊152可以包括揚聲器、蜂鳴器等等。
存儲器160可以存儲由控制器180執(zhí)行的處理和控制操作的軟件程序等等,或者可以暫時地存儲已經(jīng)輸出或將要輸出的數(shù)據(jù)(例如,電話簿、消息、靜態(tài)圖像、視頻等等)。而且,存儲器160可以存儲關于當觸摸施加到觸摸屏時輸出的各種方式的振動和音頻信號的數(shù)據(jù)。
存儲器160可以包括至少一種類型的存儲介質(zhì),所述存儲介質(zhì)包括閃存、硬盤、多媒體卡、卡型存儲器(例如,sd或dx存儲器等等)、隨機訪問存儲器(ram)、靜態(tài)隨機訪問存儲器(sram)、只讀存儲器(rom)、電可擦除可編程只讀存儲器(eeprom)、可編程只讀存儲器(prom)、磁性存儲器、磁盤、光盤等等。而且,移動終端100可以與通過網(wǎng)絡連接執(zhí)行存儲器160的存儲功能的網(wǎng)絡存儲裝置協(xié)作。
控制器180通??刂埔苿咏K端的總體操作。例如,控制器180執(zhí)行與語音通話、數(shù)據(jù)通信、視頻通話等等相關的控制和處理。另外,控制器180可以包括用于再現(xiàn)(或回放)多媒體數(shù)據(jù)的多媒體模塊181,多媒體模塊181可以構造在控制器180內(nèi),或者可以構造為與控制器180分離??刂破?80可以執(zhí)行模式識別處理,以將在觸摸屏上執(zhí)行的手寫輸入或者圖片繪制輸入識別為字符或圖像。
電源單元190在控制器180的控制下接收外部電力或內(nèi)部電力并且提供操作各元件和組件所需的適當?shù)碾娏Α?/p>
這里描述的各種實施方式可以以使用例如計算機軟件、硬件或其任何組合的計算機可讀介質(zhì)來實施。對于硬件實施,這里描述的實施方式可以通過使用特定用途集成電路(asic)、數(shù)字信號處理器(dsp)、數(shù)字信號處理裝置(dspd)、可編程邏輯裝置(pld)、現(xiàn)場可編程門陣列(fpga)、處理器、控制器、微控制器、微處理器、被設計為執(zhí)行這里描述的功能的電子單元中的至少一種來實施,在一些情況下,這樣的實施方式可以在控制器180中實施。對于軟件實施,諸如過程或功能的實施方式可以與允許執(zhí)行至少一種功能或操作的單獨的軟件模塊來實施。軟件代碼可以由以任何適當?shù)木幊陶Z言編寫的軟件應用程序(或程序)來實施,軟件代碼可以存儲在存儲器160中并且由控制器180執(zhí)行。
至此,已經(jīng)按照其功能描述了移動終端。下面,為了簡要起見,將描述諸如折疊型、直板型、擺動型、滑動型移動終端等等的各種類型的移動終端中的滑動型移動終端作為示例。因此,本發(fā)明能夠應用于任何類型的移動終端,并且不限于滑動型移動終端。
如圖1中所示的移動終端100可以被構造為利用經(jīng)由幀或分組發(fā)送數(shù)據(jù)的諸如有線和無線通信系統(tǒng)以及基于衛(wèi)星的通信系統(tǒng)來操作。
現(xiàn)在將參考圖2描述其中根據(jù)本發(fā)明的移動終端能夠操作的通信系統(tǒng)。
這樣的通信系統(tǒng)可以使用不同的空中接口和/或物理層。例如,由通信系統(tǒng)使用的空中接口包括例如頻分多址(fdma)、時分多址(tdma)、碼分多址(cdma)和通用移動通信系統(tǒng)(umts)(特別地,長期演進(lte))、全球移動通信系統(tǒng)(gsm)等等。作為非限制性示例,下面的描述涉及cdma通信系統(tǒng),但是這樣的教導同樣適用于其它類型的系統(tǒng)。
參考圖2,cdma無線通信系統(tǒng)可以包括多個移動終端100、多個基站(bs)270、基站控制器(bsc)275和移動交換中心(msc)280。msc280被構造為與公共電話交換網(wǎng)絡(pstn)290形成接口。msc280還被構造為與可以經(jīng)由回程線路耦接到基站270的bsc275形成接口?;爻叹€路可以根據(jù)若干已知的接口中的任一種來構造,所述接口包括例如e1/t1、atm,ip、ppp、幀中繼、hdsl、adsl或xdsl。將理解的是,如圖2中所示的系統(tǒng)可以包括多個bsc275。
每個bs270可以服務一個或多個分區(qū)(或區(qū)域),由多向天線或指向特定方向的天線覆蓋的每個分區(qū)放射狀地遠離bs270?;蛘?,每個分區(qū)可以由用于分集接收的兩個或更多天線覆蓋。每個bs270可以被構造為支持多個頻率分配,并且每個頻率分配具有特定頻譜(例如,1.25mhz,5mhz等等)。
分區(qū)與頻率分配的交叉可以被稱為cdma信道。bs270也可以被稱為基站收發(fā)器子系統(tǒng)(bts)或者其它等效術語。在這樣的情況下,術語“基站”可以用于籠統(tǒng)地表示單個bsc275和至少一個bs270?;疽部梢员环Q為“蜂窩站”?;蛘?,特定bs270的各分區(qū)可以被稱為多個蜂窩站。
如圖2中所示,廣播發(fā)射器(bt)295將廣播信號發(fā)送給在系統(tǒng)內(nèi)操作的移動終端100。如圖1中所示的廣播接收模塊111被設置在移動終端100處以接收由bt295發(fā)送的廣播信號。在圖2中,示出了幾個全球定位系統(tǒng)(gps)衛(wèi)星300。衛(wèi)星300幫助定位多個移動終端100中的至少一個。
在圖2中,描繪了多個衛(wèi)星300,但是理解的是,可以利用任何數(shù)目的衛(wèi)星獲得有用的定位信息。如圖1中所示的gps模塊115通常被構造為與衛(wèi)星300配合以獲得想要的定位信息。替代gps跟蹤技術或者在gps跟蹤技術之外,可以使用可以跟蹤移動終端的位置的其它技術。另外,至少一個gps衛(wèi)星300可以選擇性地或者額外地處理衛(wèi)星dmb傳輸。
作為無線通信系統(tǒng)的一個典型操作,bs270接收來自各種移動終端100的反向鏈路信號。移動終端100通常參與通話、消息收發(fā)和其它類型的通信。特定基站270接收的每個反向鏈路信號被在特定bs270內(nèi)進行處理。獲得的數(shù)據(jù)被轉發(fā)給相關的bsc275。bsc提供通話資源分配和包括bs270之間的軟切換過程的協(xié)調(diào)的移動管理功能。bsc275還將接收到的數(shù)據(jù)路由到msc280,其提供用于與pstn290形成接口的額外的路由服務。類似地,pstn290與msc280形成接口,msc與bsc275形成接口,并且bsc275相應地控制bs270以將正向鏈路信號發(fā)送到移動終端100。
基于上述移動終端硬件結構以及通信系統(tǒng),提出本發(fā)明各個實施例。
下面將結合本發(fā)明實施例中的附圖,對本發(fā)明實施例中的技術方案進行清楚、完整地描述。
第一實施例
本發(fā)明第一實施例提出了一種固件升級方法,可以應用于需要進行固件升級的終端中,本發(fā)明第一實施例從終端的角度對固件升級方法進行示例性說明。
這里,上述記載的終端可以是移動終端,也可以是固定終端,上述記載的終端包括但不限于移動電話、筆記本電腦、相機、pda、pad、pmp、導航裝置等等。所述移動終端可以連接至互聯(lián)網(wǎng),其中,所述連接的方式可以是通過運營商提供的移動互聯(lián)網(wǎng)絡進行連接,還可以是通過接入無線接入點來進行網(wǎng)絡連接。
這里,移動終端如果具有操作系統(tǒng),該操作系統(tǒng)可以為unix、linux、windows、安卓(android)、windowsphone等等。
需要說明的是,對移動終端上的顯示屏的種類、形狀、大小等不進行限制,示例性的,移動終端上的顯示屏可以是液晶顯示屏等。
在本發(fā)明第一實施例中,上述記載的顯示屏用于向用戶提供人機交互的界面。這里,上述記載的移動終端可以與至少一個服務器形成通信連接,在實際實施實施,移動終端可以采用無線通信模塊實現(xiàn)與服務器之間的連接。
圖3為本發(fā)明實施例固件升級方法的一個流程圖,如圖3所示,該流程可以包括:
步驟301:終端向服務器發(fā)送固件升級請求,以使服務器基于所述固件升級請求向所述終端返回響應信息,其中,所述固件升級請求中至少攜帶有終端設備信息以及終端的固件版本信息;
這里,在終端為所述移動終端時,所述終端設備信息可以包括以下至少之一:所述終端的型號、所述終端的國際移動設備身份碼(internationalmobileequipmentidentity,imei)。
可以理解的是,終端設備信息以及終端的固件版本信息是進行固件升級的基礎,服務器在收到來自終端的固件升級請求后,可以根據(jù)所述終端設備信息以及終端的固件版本信息查找相應的升級包,之后,服務器可以根據(jù)查找結果向終端返回響應信息。
步驟302:終端接收來自服務器的響應信息;
可以理解的是,當服務器查找到相應的升級包時,可以將攜帶有升級包或升級包下載地址的響應信息發(fā)送至終端,此時,終端在接收到響應信息時,可以基于接收的響應信息提示用戶進行固件升級。進一步地,當服務器查找到相應的升級包時,可以在向終端發(fā)送的響應信息中攜帶升級包對應的版本信息。
當服務器未查找到相應的升級包時,可以向終端發(fā)送響應信息,在響應信息中指示服務器未搜索到升級包,或者,指示終端當前固件版本已經(jīng)是最新版本(不需要進行固件升級)。
步驟303:終端在確定所述響應信息中包含升級包下載地址或升級包時,根據(jù)所述升級包下載地址或升級包進行固件升級。
示例性地,終端在確定所述響應信息中包含升級包時,直接根據(jù)升級包進行固件升級;在確定所述響應信息中包含升級包下載地址時,根據(jù)上述記載的升級包下載地址獲取升級包,之后,根據(jù)獲取的升級包進行固件升級。
示例性地,終端在確定所述響應信息中包含升級包下載地址或升級包時,可以提示用戶對是否進行固件升級進行選擇,在接收到用戶確認進行固件升級的選擇時,根據(jù)所述升級包下載地址或升級包進行固件升級。
示例性地,圖4為本發(fā)明實施例在終端界面上提示用戶進行固件升級的示意圖一,如圖4所示,終端界面上顯示“已接收到升級包,是否進行固件升級”,并顯示有“確認”和“取消”兩個虛擬按鈕;終端可以根據(jù)用戶的選擇(用戶點擊“確認”或“取消”按鈕進行選擇)來執(zhí)行對應的操作,即,終端接收的用戶的選擇為進行固件升級時,按照接收到的升級包進行固件升級。
圖5為本發(fā)明實施例在終端界面上提示用戶進行固件升級的示意圖二,如圖5所示,終端界面上顯示“已接收到升級包下載地址,是否進行固件升級”,并顯示有“確認”和“取消”兩個虛擬按鈕;終端可以根據(jù)用戶的選擇(用戶點擊“確認”或“取消”按鈕進行選擇)來執(zhí)行對應的操作,即,終端接收的用戶的選擇為進行固件升級時,按照接收到的升級包下載地址進行固件升級。
對于終端按照接收到的升級包下載地址進行固件升級的實現(xiàn)方式,在一種可選的實施例中,終端可以根據(jù)上述記載的升級包下載地址獲取升級包,之后,根據(jù)獲取的升級包進行固件升級。
可以看出,當服務器未查找到相應的升級包時,終端接收的響應信息不包含升級包或升級包下載地址,終端可以確定自身的固件版本為最新版本,不需要進行固件升級。
圖6為本發(fā)明實施例在終端界面上提示不需要進行固件升級的示意圖,如圖6所示,終端界面上顯示“當前固件版本是最新版本,不需要進行固件升級”,以提示用戶不需要進行固件升級。
在現(xiàn)有技術中,一個可選的fota流程可以包括以下步驟:
1)fota鑒權后對固件更新過程進行初始化。
2)服務器向終端發(fā)送一個更新通知(updatenotification)消息;
3)終端在接收到updatenotification消息后,向服務器返回一個確認(ack)消息:
4)終端向服務器發(fā)送終端設備信息;
5)服務器向終端發(fā)送版本獲取請求(get_firmwareversion)信息,以了解終端的當前固件版本信息;
6)終端向服務器發(fā)送固件版本信息;
7)服務器根據(jù)終端設備信息和終端固件版本信息分析終端是否需要進行固件升級,在確定終端需要進行固件升級時,發(fā)送確認消息到終端。
8)終端通過用戶界面向用戶提示是否需要進行固件升級。
9)用戶將選擇結果返回至終端。
10)終端將選擇結果返回至服務器,服務器根據(jù)接收的選擇結果進行相應的操作;在選擇結果為進行固件升級時,執(zhí)行下一步驟,否則,終止流程。
11)服務器通過更新命令下發(fā)升級包數(shù)據(jù)至終端;
12)服務器發(fā)送安裝命令至終端,以指示終端開始安裝升級包;
13)終端在確認固件升級完成后,向服務器發(fā)送固件升級完成的反饋信息。
可以看出,在現(xiàn)有技術的fota流程中,終端需要與服務器進行多次交互,那么在終端和服務器之間的無線通信網(wǎng)絡的信道質(zhì)量較差時,或者,在終端的電量較低時,可能使固件升級失敗的可能性增加,另外,終端用戶很可能取消固件升級操作,使終端無法及時獲取升級包。
針對上述現(xiàn)有技術存在的問題,本發(fā)明的第一實施例中,終端向服務器發(fā)送固件升級請求,以使服務器基于所述固件升級請求向所述終端返回響應信息,其中,所述固件升級請求中至少攜帶有終端設備信息以及終端的固件版本信息;終端接收來自服務器的響應信息;終端在確定所述響應信息中包含升級包下載地址或升級包時,根據(jù)所述升級包下載地址或升級包進行固件升級;如此,可以看出,終端通過與服務器的一次交互,便可以獲取升級包或升級包下載地址,即使在終端和服務器之間的無線通信網(wǎng)絡的信道質(zhì)量較差時,或者,在終端的電量較低時,終端也能及時獲取升級包或升級包下載地址,從而增加了固件升級成功的可能性。
也就是說,本發(fā)明第一實施例的固件升級方法,去掉了客戶端和服務器對oma-dm協(xié)議的依賴,采用靈活自定義的協(xié)議交互,通過減少fota流程匯總客戶端和服務器的握手,達到對終端電量和網(wǎng)絡資源(流量)的節(jié)省,通過一次網(wǎng)絡交互,在無線通信網(wǎng)絡的信道質(zhì)量較差時也可以實現(xiàn)終端固件升級。
第二實施例
為了能夠更加體現(xiàn)本發(fā)明的目的,在本發(fā)明第一實施例的基礎上,進行進一步的舉例說明。
本發(fā)明第二實施例的固件升級方法的流程可以包括:
步驟401:所述終端采用以安全為目標的超文本傳輸協(xié)議(hypertexttransferprotocoloversecuresocketlayer,https)向服務器發(fā)送固件升級請求,以使服務器基于所述固件升級請求向所述終端返回響應信息,其中,所述固件升級請求中至少攜帶有終端設備信息以及終端的固件版本信息;
這里,https協(xié)議在超文本傳輸協(xié)議(hypertexttransferprotocol,http)的基礎上加入了安全套接層(securesocketslayer,ssl)協(xié)議,ssl依靠證書來驗證服務器或終端的身份,并在傳輸層對終端和服務器之間的連接進行通信加密。
也就是說,采用https協(xié)議發(fā)送固件升級請求,可以對固件升級請求的內(nèi)容進行加密,提高了數(shù)據(jù)發(fā)送的安全性。
步驟402:終端基于https協(xié)議接收來自服務器的響應信息。
也就是說,服務器采用https協(xié)議向終端發(fā)送響應信息,顯然,服務器采用https協(xié)議發(fā)送響應信息時,可以對響應信息的內(nèi)容進行加密,提高了數(shù)據(jù)發(fā)送的安全性。
圖7為本發(fā)明實施例終端和服務器進行一次交互的示意圖,如圖7所示,終端向服務器發(fā)送的https請求為上述記載的固件升級請求,服務器向終端發(fā)送的https響應信息為上述記載的響應信息。
步驟403:終端在確定所述響應信息中包含升級包下載地址或升級包時,根據(jù)所述升級包下載地址或升級包進行固件升級。
本步驟的實現(xiàn)方式與步驟303的實現(xiàn)方式相同,這里不再贅述。
第三實施例
本發(fā)明第三實施例提出了一種固件升級方法,可以應用于服務器中,服務器與需要進行固件升級的終端形成通信連接,本發(fā)明第三實施例從服務器的角度對終端固件升級方法進行示例性說明。
圖8為本發(fā)明實施例固件升級方法的另一個流程圖,如圖8所示,該流程可以包括:
步驟501:服務器接收來自終端的固件升級請求,所述固件升級請求中至少攜帶有終端設備信息以及終端的固件版本信息。
在實際實施時,終端可以采用https協(xié)議向服務器發(fā)送固件升級請求,在終端為所述移動終端時,所述終端設備信息可以包括以下至少之一:所述終端的型號、所述終端的imei。
步驟502:服務器根據(jù)所述固件升級請求確定所述終端需要進行固件升級時,將攜帶有升級包下載地址或升級包的響應信息發(fā)送至終端,以使終端根據(jù)所述升級包下載地址或升級包進行固件升級。
另外,服務器根據(jù)所述固件升級請求確定所述終端不需要進行固件升級時,即服務器未查找到相應的升級包時,向終端發(fā)送響應信息,在響應信息中指示服務器未搜索到升級包,或者,指示終端當前固件版本已經(jīng)是最新版本(不需要進行固件升級)。
可以看出,在本發(fā)明的第三實施例中,終端通過與服務器的一次交互,便可以獲取升級包或升級包下載地址,即使在終端和服務器之間的無線通信網(wǎng)絡的信道質(zhì)量較差時,或者,在終端的電量較低時,終端也能及時獲取升級包或升級包下載地址,從而增加了固件升級成功的可能性。
第四實施例
為了能夠更加體現(xiàn)本發(fā)明的目的,在本發(fā)明第三實施例的基礎上,進行進一步的舉例說明。
本發(fā)明第四實施例的固件升級方法的流程可以包括:
步驟601:服務器預先將至少一個用于進行終端固件升級的升級包存儲在服務器的內(nèi)存數(shù)據(jù)庫中;
步驟602:服務器接收來自終端的固件升級請求,所述固件升級請求中至少攜帶有終端設備信息以及終端的固件版本信息;
步驟603:服務器根據(jù)所述終端的固件版本信息在所述內(nèi)存數(shù)據(jù)庫中查找到對應的升級包時,確定所述終端需要進行固件升級。
這里,內(nèi)存數(shù)據(jù)庫時內(nèi)置在服務器中的數(shù)據(jù)庫,由于內(nèi)存數(shù)據(jù)庫的特點,內(nèi)存數(shù)據(jù)庫中的數(shù)據(jù)的讀取速度非??欤@樣,可以提高服務器查找升級包的速度,進而提高終端固件升級的速度。
下面以內(nèi)存數(shù)據(jù)庫為redis數(shù)據(jù)庫為例進行說明。
由于redis數(shù)據(jù)庫處于服務器的內(nèi)存中,redis數(shù)據(jù)庫的數(shù)據(jù)讀取速度比較快,服務器可以將預先制作完成的升級包存入服務器的redis數(shù)據(jù)庫,當服務器根據(jù)所述終端的固件版本信息在所述內(nèi)存數(shù)據(jù)庫中查找到對應的升級包時,直接在redis數(shù)據(jù)庫中進行查找,不需要在非內(nèi)存數(shù)據(jù)庫如mysql數(shù)據(jù)庫查找,可以提高查找升級包的速度。
圖9為本發(fā)明實施例在服務器中查找升級包的一個示意圖,如圖9所示,服務器根據(jù)終端的固件版本信息在redis數(shù)據(jù)庫中查找到對應的升級包,在查找到對應的升級包時,服務器接收到來自redis數(shù)據(jù)庫的升級包的版本信息。
步驟604:將攜帶有升級包下載地址或升級包的響應信息發(fā)送至終端,以使終端根據(jù)所述升級包下載地址或升級包進行固件升級。
優(yōu)選地,服務器根據(jù)所述終端的固件版本信息在所述內(nèi)存數(shù)據(jù)庫中查找到對應的升級包后,可以將所述終端的固件版本信息記為特定固件版本信息,并將對應的升級包存儲于服務器的緩存中;
服務器再次接收到固件升級請求,且確定再次接收的固件升級請求中攜帶有所述特定固件版本信息時,根據(jù)所述特定固件版本信息從所述服務器的緩存中查找對應的升級包。
在一個可選的實施例中,服務器在將對應的升級包存儲于服務器的緩存中時,設置服務器的緩存的生效時間;
在根據(jù)所述特定固件版本信息從所述服務器的緩存中查找對應的升級包后,若服務器的緩存中未存儲有對應的升級包或所述服務器的緩存已失效時,再次根據(jù)所述特定固件版本信息從內(nèi)存數(shù)據(jù)庫中查找對應的升級包。
例如,可以設置服務器的緩存的生效時間為n秒,n大于0;也就是說,在服務器將對應的升級包存儲于服務器的緩存后n秒內(nèi),服務器的緩存生效;否則,服務器的緩存失效。
圖10為本發(fā)明實施例在服務器中查找升級包的另一個示意圖,如圖10所示,第一個客戶端表示向服務器發(fā)送攜帶有特定固件版本信息的固件升級請求的第一個終端,同源版本的客戶端表示向服務器發(fā)送攜帶有特定固件版本信息的固件升級請求的其他終端;由于升級包信息在一段時間內(nèi)保持不變,而多個終端會查找同樣的升級包,這樣,在第一個客戶端向發(fā)送服務器發(fā)送固件升級請求時,可以在redis數(shù)據(jù)庫中查找到對應的升級包,在redis數(shù)據(jù)庫中查找到對應的升級包后,將終端的固件版本信息記為特定固件版本信息,并將對應的升級包存儲于服務器的緩存中;之后,如果還有同源版本的客戶端來查找同樣的升級包,則直接在服務器的緩存中查找即可,只有當務器的緩存中未存儲有對應的升級包或所述服務器的緩存已失效時,再從redis數(shù)據(jù)庫中查找到對應的升級包;由于緩存中的數(shù)據(jù)讀取速度比內(nèi)存數(shù)據(jù)讀取速度更快,那么采用在服務器的緩存中存儲升級包后,便于提供升級包的查找速度,進而提高固件升級速度。
需要說明的是,在采用內(nèi)存數(shù)據(jù)庫存儲升級包時,服務器需要具有較大的內(nèi)存,這樣不會影響服務器的運行速度和吞吐量;同理,在采用服務器的緩存存儲升級包時,服務器需要具有較大的緩存,這樣不會影響服務器的運行速度和吞吐量。
可以看出,在本實施例中,采用緩存或內(nèi)存數(shù)據(jù)庫存儲升級包,可以將一段時間內(nèi)不變的升級包存儲在服務器內(nèi)存或緩存中,由于服務器在內(nèi)存或緩存中查找升級包的速度會比在磁盤數(shù)據(jù)庫查找升級包的速度塊,如此,可以提高升級包的查找速度。
第五實施例
在本發(fā)明第一實施例和第二實施例的基礎上,本發(fā)明第五實施例提出了一種終端;
圖11為本發(fā)明實施例的終端的硬件結構示意圖,如圖11所示,終端11包括第一處理器1101、第一存儲器1102及第一通信總線1103;
所述第一通信總線1103用于實現(xiàn)第一處理器1101和第一存儲器1102之間的連接通信;
所述第一處理器1101用于執(zhí)行第一存儲器中存儲的固件升級程序,以實現(xiàn)以下步驟:
向服務器發(fā)送固件升級請求,以使服務器基于所述固件升級請求向所述終端返回響應信息,其中,所述固件升級請求中至少攜帶有終端設備信息以及終端的固件版本信息;
接收來自服務器的響應信息;
在確定所述響應信息中包含升級包下載地址或升級包時,根據(jù)所述升級包下載地址或升級包進行固件升級。
在實際應用中,上述第一存儲器1102可以是易失性存儲器(volatilememory),例如隨機存取存儲器(ram,random-accessmemory);或者非易失性存儲器(non-volatilememory),例如只讀存儲器(rom,read-onlymemory),快閃存儲器(flashmemory),硬盤(hdd,harddiskdrive)或固態(tài)硬盤(ssd,solid-statedrive);或者上述種類的存儲器的組合,并向第一處理器1101提供指令和數(shù)據(jù)。
上述第一處理器1101可以為特定用途集成電路(asic,applicationspecificintegratedcircuit)、數(shù)字信號處理器(dsp,digitalsignalprocessor)、數(shù)字信號處理裝置(dspd,digitalsignalprocessingdevice)、可編程邏輯裝置(pld,programmablelogicdevice)、現(xiàn)場可編程門陣列(fpga,fieldprogrammablegatearray)、中央處理器(cpu,centralprocessingunit)、控制器、微控制器、微處理器中的至少一種??梢岳斫獾兀瑢τ诓煌脑O備,用于實現(xiàn)上述第一處理器功能的電子器件還可以為其它,本發(fā)明實施例不作具體限定。
示例性地,所述第一處理器1101,具體可以用于:
采用https協(xié)議向服務器發(fā)送固件升級請求;并基于https協(xié)議接收來自服務器的響應信息。
第六實施例
在本發(fā)明第一實施例和第二實施例的基礎上,本發(fā)明第六實施例提出了一種計算機可讀存儲介質(zhì),該計算機可讀存儲介質(zhì)位于終端中。
所述計算機可讀存儲介質(zhì)存儲有一個或者多個程序,所述一個或者多個程序可被一個或者多個處理器執(zhí)行,以實現(xiàn)以下步驟:
向服務器發(fā)送固件升級請求,以使服務器基于所述固件升級請求向所述終端返回響應信息,其中,所述固件升級請求中至少攜帶有終端設備信息以及終端的固件版本信息;
接收來自服務器的響應信息;
在確定所述響應信息中包含升級包下載地址或升級包時,根據(jù)所述升級包下載地址或升級包進行固件升級。
所述計算機可讀存儲介質(zhì)還存儲有用于實現(xiàn)以下步驟的一個或者多個程序:采用https協(xié)議向服務器發(fā)送固件升級請求;并基于https協(xié)議接收來自服務器的響應信息。
第七實施例
在本發(fā)明第三實施例和第四實施例的基礎上,本發(fā)明第七實施例提出了一種服務器;
圖12為本發(fā)明實施例的服務器的硬件結構示意圖,如圖12所示,服務器12包括第二處理器1201、第二存儲器1202及第二通信總線1203;
所述第二通信總線1203用于實現(xiàn)第二處理器和第二存儲器之間的連接通信;
所述第二處理器1201用于執(zhí)行第二存儲器中存儲的固件升級程序,以實現(xiàn)以下步驟:
接收來自終端的固件升級請求,所述固件升級請求中至少攜帶有終端設備信息以及終端的固件版本信息;
根據(jù)所述固件升級請求確定所述終端需要進行固件升級時,將攜帶有升級包下載地址或升級包的響應信息發(fā)送至終端,以使終端根據(jù)所述升級包下載地址或升級包進行固件升級。
在實際應用中,上述第二存儲器1202可以是易失性存儲器,例如ram;或者非易失性存儲器,例如rom,快閃存儲器,hdd或ssd;或者上述種類的存儲器的組合,并向第二處理器1201提供指令和數(shù)據(jù)。
上述第二處理器1201可以為asic、dsp、dspd、pld、fpga、cpu、控制器、微控制器、微處理器中的至少一種??梢岳斫獾?,對于不同的設備,用于實現(xiàn)上述第二處理器功能的電子器件還可以為其它,本發(fā)明實施例不作具體限定。
示例性地,所述第二處理器1201,具體還可以用于:
在接收來自終端的固件升級請求前,預先將至少一個用于進行終端固件升級的升級包存儲在服務器的內(nèi)存數(shù)據(jù)庫中;在接收到來自終端的固件升級請求后,根據(jù)所述終端的固件版本信息在所述內(nèi)存數(shù)據(jù)庫中查找到對應的升級包時,確定所述終端需要進行固件升級。
示例性地,所述第二處理器1201,具體還可以用于:
在根據(jù)所述終端的固件版本信息在所述內(nèi)存數(shù)據(jù)庫中查找到對應的升級包后,將所述終端的固件版本信息記為特定固件版本信息,并將對應的升級包存儲于服務器的緩存中;
在再次接收到固件升級請求,且確定再次接收的固件升級請求中攜帶有所述特定固件版本信息時,根據(jù)所述特定固件版本信息從所述服務器的緩存中查找對應的升級包。
示例性地,所述第二處理器1201,具體還可以用于:
在將對應的升級包存儲于服務器的緩存中時,設置服務器的緩存的生效時間;
在根據(jù)所述特定固件版本信息從所述服務器的緩存中查找對應的升級包后,若服務器的緩存中未存儲有對應的升級包或所述服務器的緩存已失效時,再次根據(jù)所述特定固件版本信息從內(nèi)存數(shù)據(jù)庫中查找對應的升級包。
第八實施例
在本發(fā)明第三實施例和第四實施例的基礎上,本發(fā)明第八實施例提出了一種計算機可讀存儲介質(zhì),該計算機可讀存儲介質(zhì)位于服務器中。
所述計算機可讀存儲介質(zhì)存儲有一個或者多個程序,所述一個或者多個程序可被一個或者多個處理器執(zhí)行,以實現(xiàn)以下步驟:
接收來自終端的固件升級請求,所述固件升級請求中至少攜帶有終端設備信息以及終端的固件版本信息;
根據(jù)所述固件升級請求確定所述終端需要進行固件升級時,將攜帶有升級包下載地址或升級包的響應信息發(fā)送至終端,以使終端根據(jù)所述升級包下載地址或升級包進行固件升級。
示例性地,所述計算機可讀存儲介質(zhì)還存儲有用于實現(xiàn)以下步驟的程序:
在接收來自終端的固件升級請求前,預先將至少一個用于進行終端固件升級的升級包存儲在服務器的內(nèi)存數(shù)據(jù)庫中;在接收到來自終端的固件升級請求后,根據(jù)所述終端的固件版本信息在所述內(nèi)存數(shù)據(jù)庫中查找到對應的升級包時,確定所述終端需要進行固件升級。
示例性地,所述計算機可讀存儲介質(zhì)還存儲有用于實現(xiàn)以下步驟的程序:
在根據(jù)所述終端的固件版本信息在所述內(nèi)存數(shù)據(jù)庫中查找到對應的升級包后,將所述終端的固件版本信息記為特定固件版本信息,并將對應的升級包存儲于服務器的緩存中;
在再次接收到固件升級請求,且確定再次接收的固件升級請求中攜帶有所述特定固件版本信息時,根據(jù)所述特定固件版本信息從所述服務器的緩存中查找對應的升級包。
示例性地,所述計算機可讀存儲介質(zhì)還存儲有用于實現(xiàn)以下步驟的程序:
在將對應的升級包存儲于服務器的緩存中時,設置服務器的緩存的生效時間;
在根據(jù)所述特定固件版本信息從所述服務器的緩存中查找對應的升級包后,若服務器的緩存中未存儲有對應的升級包或所述服務器的緩存已失效時,再次根據(jù)所述特定固件版本信息從內(nèi)存數(shù)據(jù)庫中查找對應的升級包。
本領域內(nèi)的技術人員應明白,本發(fā)明的實施例可提供為方法、系統(tǒng)、或計算機程序產(chǎn)品。因此,本發(fā)明可采用硬件實施例、軟件實施例、或結合軟件和硬件方面的實施例的形式。而且,本發(fā)明可采用在一個或多個其中包含有計算機可用程序代碼的計算機可用存儲介質(zhì)(包括但不限于磁盤存儲器和光學存儲器等)上實施的計算機程序產(chǎn)品的形式。
本發(fā)明是參照根據(jù)本發(fā)明實施例的方法、設備(系統(tǒng))、和計算機程序產(chǎn)品的流程圖和/或方框圖來描述的。應理解可由計算機程序指令實現(xiàn)流程圖和/或方框圖中的每一流程和/或方框、以及流程圖和/或方框圖中的流程和/或方框的結合??商峁┻@些計算機程序指令到通用計算機、專用計算機、嵌入式處理機或其他可編程數(shù)據(jù)處理設備的處理器以產(chǎn)生一個機器,使得通過計算機或其他可編程數(shù)據(jù)處理設備的處理器執(zhí)行的指令產(chǎn)生用于實現(xiàn)在流程圖一個流程或多個流程和/或方框圖一個方框或多個方框中指定的功能的裝置。
這些計算機程序指令也可存儲在能引導計算機或其他可編程數(shù)據(jù)處理設備以特定方式工作的計算機可讀存儲器中,使得存儲在該計算機可讀存儲器中的指令產(chǎn)生包括指令裝置的制造品,該指令裝置實現(xiàn)在流程圖一個流程或多個流程和/或方框圖一個方框或多個方框中指定的功能。
這些計算機程序指令也可裝載到計算機或其他可編程數(shù)據(jù)處理設備上,使得在計算機或其他可編程設備上執(zhí)行一系列操作步驟以產(chǎn)生計算機實現(xiàn)的處理,從而在計算機或其他可編程設備上執(zhí)行的指令提供用于實現(xiàn)在流程圖一個流程或多個流程和/或方框圖一個方框或多個方框中指定的功能的步驟。
以上所述,僅為本發(fā)明的較佳實施例而已,并非用于限定本發(fā)明的保護范圍。