本發(fā)明涉及計算機及通信技術領域,尤其涉及一種交互式升級的方法及裝置。
背景技術:隨著計算機及通信技術的不斷發(fā)展,智能終端,例如智能手機、智能電視、平板電腦以及機頂盒等,無論在功能還是種類方面都隨著科技的跨越式發(fā)展得以迅速壯大,其顯示的內容越來越豐富,其應用也越來越齊全。以機頂盒為例,它是一種將數字電視信號轉換成模擬信號的變換設備,它對經過數字化壓縮的圖像和聲音信號進行解碼還原,產生模擬的視頻和聲音信號,通過電視顯示器和音響設備給觀眾提供高質量的電視節(jié)目。目前的數字電視機頂盒已成為一種嵌入式計算設備,具有完善的實時操作系統(tǒng),提供強大的CPU計算能力,用來協調控制機頂盒之間的硬件設施,給用戶提供圖文并茂的節(jié)目介紹和背景資料。本申請的發(fā)明人發(fā)現,包括機頂盒在內的許多智能終端在系統(tǒng)升級的過程中如遇斷電或其他特殊狀況,可能會造成終端無法啟動以及數據丟失等后果。
技術實現要素:本發(fā)明實施例提供一種交互式升級的方法,采用主啟動分區(qū)和備用啟動分區(qū)交替進行系統(tǒng)升級,提高升級過程靈活性的同時,更加確保了系統(tǒng)升級的可靠性。本發(fā)明實施例提供一種交互式升級的方法,包括以下步驟:從當前主啟動分區(qū)啟動操作系統(tǒng)后,判斷操作系統(tǒng)是否需要升級;當操作系統(tǒng)需要升級時,將升級后的啟動數據下載于當前備用啟動分區(qū),并將啟動數據的升級時間作為 當前備用啟動分區(qū)對應的最新升級時間;退出操作系統(tǒng)之后,當接收到重啟操作系統(tǒng)的指令時,判斷當前主啟動分區(qū)與當前備用啟動分區(qū)各自對應的最新升級時間的先后關系;在當前備用啟動分區(qū)對應的最新升級時間晚于當前主啟動分區(qū)對應的最新升級時間時,從當前備用啟動分區(qū)利用升級后的啟動數據啟動操作系統(tǒng),并在啟動成功后,將當前備用啟動分區(qū)標記為主啟動分區(qū)、將當前主啟動分區(qū)標記為備用啟動分區(qū)。在本發(fā)明實施例中采用主啟動分區(qū)和備用啟動分區(qū)交替進行系統(tǒng)升級,提高升級過程靈活性的同時,更加確保了系統(tǒng)升級的可靠性。通過對當前主啟動分區(qū)與當前備用啟動分區(qū)各自對應的最新升級時間的先后關系進行判斷,能夠輕松判斷出系統(tǒng)升級是否成功。將當前備用啟動分區(qū)和當前主啟動分區(qū)的標記位進行互換,以保證本交互式升級方法可以在雙分區(qū)環(huán)境中連續(xù)使用。優(yōu)選的,當前主啟動分區(qū)和當前備用啟動分區(qū)位于同一存儲介質。在本實施例中,當前主啟動分區(qū)和當前備用啟動分區(qū)位于同一存儲介質內,這樣節(jié)省了成本,省去了外接其他設備的麻煩,同時加快了標記位互換的速度,這樣的設計大大降低了系統(tǒng)升級的失敗可能性。優(yōu)選的,將啟動數據的升級時間作為當前備用啟動分區(qū)對應的最新升級時間,包括:當啟動數據的升級成功時,將升級成功的時間點更新為當前備用啟動分區(qū)對應的最新升級時間;當啟動數據的升級失敗時,不更新當前備用啟動分區(qū)對應的最新升級時間。在本實施例中,通過對當前主啟動分區(qū)與當前備用啟動分區(qū)各自對應的最新升級時間的先后關系進行判斷,能夠輕松判斷出系統(tǒng)升級是否成功,最新升級時間的先后關系的判斷方式也非常方便快捷。本發(fā)明實施例提供一種交互式升級的裝置,包括:啟動模塊,用于從當前主啟動分區(qū)啟動操作系統(tǒng)后,判斷操作系統(tǒng)是否需要升級;升級模塊,用于當操作系統(tǒng)需要升級時,將升級后的啟動數據下載于當前 備用啟動分區(qū),并將啟動數據的升級時間作為當前備用啟動分區(qū)對應的最新升級時間;判斷模塊,用于退出操作系統(tǒng)之后,當接收到重啟操作系統(tǒng)的指令時,判斷當前主啟動分區(qū)與當前備用啟動分區(qū)各自對應的最新升級時間的先后關系;標記模塊,用于在當前備用啟動分區(qū)對應的最新升級時間晚于當前主啟動分區(qū)對應的最新升級時間時,從當前備用啟動分區(qū)利用升級后的啟動數據啟動操作系統(tǒng),并在啟動成功后,將當前備用啟動分區(qū)標記為主啟動分區(qū)、將當前主啟動分區(qū)標記為備用啟動分區(qū)。在本發(fā)明實施例中采用主啟動分區(qū)和備用啟動分區(qū)交替進行系統(tǒng)升級,提高升級過程靈活性的同時,更加確保了系統(tǒng)升級的可靠性。通過判斷模塊對當前主啟動分區(qū)與當前備用啟動分區(qū)各自對應的最新升級時間的先后關系進行判斷,能夠輕松判斷出系統(tǒng)升級是否成功。通過標記模塊將當前備用啟動分區(qū)和當前主啟動分區(qū)的標記位進行互換,以保證本交互式升級方法可以在雙分區(qū)環(huán)境中連續(xù)使用。優(yōu)選的,還包括:更新模塊,用于當啟動數據的升級成功時,將升級成功的時間點更新為當前備用啟動分區(qū)對應的最新升級時間;當啟動數據的升級失敗時,將升級失敗的時間點更新為當前備用啟動分區(qū)對應的最新升級時間。在本實施例中,通過更新模塊更新雙分區(qū)各自對應的最新升級時間,便于判斷模塊隨后對當前主啟動分區(qū)與當前備用啟動分區(qū)各自對應的最新升級時間的先后關系進行判斷。本發(fā)明的其它特征和優(yōu)點將在隨后的說明書中闡述,并且,部分地從說明書中變得顯而易見,或者通過實施本發(fā)明而了解。本發(fā)明的目的和其他優(yōu)點可通過在所寫的說明書、權利要求書、以及附圖中所特別指出的結構來實現和獲得。下面通過附圖和實施例,對本發(fā)明的技術方案做進一步的詳細描述。附圖說明附圖用來提供對本發(fā)明的進一步理解,并且構成說明書的一部分,與本發(fā)明的實施例一起用于解釋本發(fā)明,并不構成對本發(fā)明的限制。在附圖中:圖1為本發(fā)明實施例中一種交互式升級方法的主要流程圖;圖2為本發(fā)明實施例中一種交互式升級方法的詳細流程圖;圖3為本發(fā)明實施例中一種交互式升級裝置的第一結構示意圖;圖4為本發(fā)明實施例中一種交互式升級裝置的第二結構示意圖。具體實施方式以下結合附圖對本發(fā)明的優(yōu)選實施例進行說明,應當理解,此處所描述的優(yōu)選實施例僅用于說明和解釋本發(fā)明,并不用于限定本發(fā)明。目前,包括機頂盒在內的許多智能終端在系統(tǒng)升級的過程中如遇斷電或其他特殊狀況,可能會造成終端無法啟動以及數據丟失等后果。為解決該問題,在本發(fā)明實施例中采用主啟動分區(qū)和備用啟動分區(qū)交替進行系統(tǒng)升級,提高升級過程靈活性的同時,更加確保了系統(tǒng)升級的可靠性。參見圖1,本發(fā)明實施例提供了一種交互式升級的方法,包括以下步驟:步驟101:從當前主啟動分區(qū)啟動操作系統(tǒng)后,判斷操作系統(tǒng)是否需要升級。打開智能終端并從當前主啟動分區(qū)啟動操作系統(tǒng)后,當前主啟動分區(qū)運行后臺升級程序,所述后臺升級程序在升級服務器中查詢是否存在新的升級包。步驟102:當操作系統(tǒng)需要升級時,將升級后的啟動數據下載于當前備用啟動分區(qū),并將啟動數據的升級時間作為當前備用啟動分區(qū)對應的最新升級時間。優(yōu)選的,當前主啟動分區(qū)和當前備用啟動分區(qū)位于同一存儲介質。當所述后臺升級程序在升級服務器中查詢到存在新的升級包時,將所述新的升級包下載到當前備用啟動分區(qū),并在當前備用啟動分區(qū)中進行操作系統(tǒng)的升級。當升級成功后,在升級服務器中會生成對應本次升級任務的啟動數據,將所述啟動數據下載到當前備用啟動分區(qū),完成當前備用啟動分區(qū)中啟動數據 的升級,并將升級成功的時間點更新為當前備用啟動分區(qū)對應的最新升級時間。但在升級失敗后,不更新當前備用啟動分區(qū)對應的最新升級時間。步驟103:退出操作系統(tǒng)之后,當接收到重啟操作系統(tǒng)的指令時,判斷當前主啟動分區(qū)與當前備用啟動分區(qū)各自對應的最新升級時間的先后關系。假設在8月2日18時對智能終端進行系統(tǒng)升級,8月1日18時也對智能終端進行過系統(tǒng)升級。當智能終端的操作系統(tǒng)升級成功后,當前備用啟動分區(qū)的最新升級時間更新,當智能終端接收到重啟操作系統(tǒng)的指令時,判斷當前主啟動分區(qū)與當前備用啟動分區(qū)各自對應的最新升級時間的先后關系。當前主啟動分區(qū)對應的最新升級時間為8月1日18時,而當前備用啟動分區(qū)對應的最新升級時間為8月2日18時。由此可見,當前備用啟動分區(qū)對應的最新升級時間晚于當前主啟動分區(qū)對應的最新升級時間。當智能終端的操作系統(tǒng)升級失敗后,當前備用啟動分區(qū)的最新升級時間不更新,當前主啟動分區(qū)對應的最新升級時間為8月1日18時,而當前備用啟動分區(qū)對應的最新升級時間一定為8月1日18時之前的某個時間。那么此時,當前主啟動分區(qū)對應的最新升級時間晚于當前備用啟動分區(qū)對應的最新升級時間。步驟104:在當前備用啟動分區(qū)對應的最新升級時間晚于當前主啟動分區(qū)對應的最新升級時間時,從當前備用啟動分區(qū)利用升級后的啟動數據啟動操作系統(tǒng),并在啟動成功后,將當前備用啟動分區(qū)標記為主啟動分區(qū)、將當前主啟動分區(qū)標記為備用啟動分區(qū)。如上文假設的那樣,當智能終端的操作系統(tǒng)升級成功后,當前備用啟動分區(qū)的最新升級時間更新,當前備用啟動分區(qū)對應的最新升級時間晚于當前主啟動分區(qū)對應的最新升級時間,此時,從當前備用啟動分區(qū)利用升級后的啟動數據啟動操作系統(tǒng),并在啟動成功后,將當前備用啟動分區(qū)標記為主啟動分區(qū)、將當前主啟動分區(qū)標記為備用啟動分區(qū),即智能終端的操作系統(tǒng)升級成功后, 將當前備用啟動分區(qū)和當前主啟動分區(qū)的標記位進行互換。而當智能終端的操作系統(tǒng)升級失敗后,當前備用啟動分區(qū)的最新升級時間不更新,當前主啟動分區(qū)對應的最新升級時間晚于當前備用啟動分區(qū)對應的最新升級時間,此時不將當前備用啟動分區(qū)和當前主啟動分區(qū)的標記位進行互換,而是再次進行系統(tǒng)升級,直到升級成功為止。在本發(fā)明實施例中采用主啟動分區(qū)和備用啟動分區(qū)交替進行系統(tǒng)升級,提高升級過程靈活性的同時,更加確保了系統(tǒng)升級的可靠性。通過對當前主啟動分區(qū)與當前備用啟動分區(qū)各自對應的最新升級時間的先后關系進行判斷,能夠輕松判斷出系統(tǒng)升級是否成功。將當前備用啟動分區(qū)和當前主啟動分區(qū)的標記位進行互換,以保證本交互式升級方法可以在雙分區(qū)環(huán)境中連續(xù)使用。下面利用一個優(yōu)選實施例對交互式升級方法進行詳細的闡述。本發(fā)明實施例中,假設用戶根據提示對智能終端進行系統(tǒng)升級的過程中突遇停電,所述智能終端包括且不限于機頂盒、手機、平板等。參見圖2,流程如下:步驟201:打開智能終端并從當前主啟動分區(qū)啟動操作系統(tǒng)后,當前主啟動分區(qū)運行后臺升級程序,所述后臺升級程序在升級服務器中查詢是否存在新的升級包。步驟202:當所述后臺升級程序在升級服務器中查詢到存在新的升級包時,將所述新的升級包下載到當前備用啟動分區(qū),并在當前備用啟動分區(qū)中進行操作系統(tǒng)的升級。步驟203:升級過程中突遇停電,升級失敗,智能終端重新啟動。步驟204:判斷當前主啟動分區(qū)與當前備用啟動分區(qū)各自對應的最新升級時間的先后關系,若當前主啟動分區(qū)對應的最新升級時間晚于當前備用啟動分區(qū)對應的最新升級時間,繼續(xù)步驟202,否則繼續(xù)步驟205。由于智能終端的操作系統(tǒng)升級失敗后,當前備用啟動分區(qū)的最新升級時間不更新,那么當前主啟動分區(qū)對應的最新升級時間晚于當前備用啟動分區(qū)對應 的最新升級時間。因此,當升級過程中突遇停電,升級失敗的情況下,智能終端會將所述新的升級包再次下載到當前備用啟動分區(qū),并在當前備用啟動分區(qū)中繼續(xù)嘗試進行操作系統(tǒng)的升級。步驟205:從當前備用啟動分區(qū)利用升級后的啟動數據啟動操作系統(tǒng),并在啟動成功后,將當前備用啟動分區(qū)標記為主啟動分區(qū)、將當前主啟動分區(qū)標記為備用啟動分區(qū)。當升級過程中突遇停電,系統(tǒng)升級失敗時,智能終端會將所述新的升級包再次下載到當前備用啟動分區(qū),并在當前備用啟動分區(qū)中繼續(xù)嘗試進行操作系統(tǒng)的升級,如果上述操作沒有再次遇到停電等意外情況,那么系統(tǒng)升級成功,將當前備用啟動分區(qū)和當前主啟動分區(qū)的標記位進行互換。在本發(fā)明實施例中,在升級失敗的情況下,智能終端會將升級包再次下載到當前備用啟動分區(qū),并在當前備用啟動分區(qū)中繼續(xù)嘗試進行操作系統(tǒng)的升級,有效避免了智能終端的癱瘓。本發(fā)明申請中雙分區(qū)交互式升級的方法采用主啟動分區(qū)和備用啟動分區(qū)交替進行系統(tǒng)升級,提高升級過程靈活性的同時,更加確保了系統(tǒng)升級過程的安全性,大大節(jié)省了返廠維修的成本,省時省力。參見圖3,對應圖1所示的一種交互式升級的方法,本發(fā)明實施例提供了一種交互式升級的裝置,包括:啟動模塊301、升級模塊302、判斷模塊303和標記模塊304,其中:啟動模塊301,用于從當前主啟動分區(qū)啟動操作系統(tǒng)后,判斷操作系統(tǒng)是否需要升級;升級模塊302,用于當操作系統(tǒng)需要升級時,將升級后的啟動數據下載于當前備用啟動分區(qū),并將啟動數據的升級時間作為當前備用啟動分區(qū)對應的最新升級時間;判斷模塊303,用于退出操作系統(tǒng)之后,當接收到重啟操作系統(tǒng)的指令時,判斷當前主啟動分區(qū)與當前備用啟動分區(qū)各自對應的最新升級時間的先后關系;標記模塊304,用于在當前備用啟動分區(qū)對應的最新升級時間晚于當前主啟動分區(qū)對應的最新升級時間時,從當前備用啟動分區(qū)利用升級后的啟動數據啟動操作系統(tǒng),并在啟動成功后,將當前備用啟動分區(qū)標記為主啟動分區(qū)、將當前主啟動分區(qū)標記為備用啟動分區(qū)。在本發(fā)明實施例中采用主啟動分區(qū)和備用啟動分區(qū)交替進行系統(tǒng)升級,提高升級過程靈活性的同時,更加確保了系統(tǒng)升級的可靠性。通過判斷模塊303對當前主啟動分區(qū)與當前備用啟動分區(qū)各自對應的最新升級時間的先后關系進行判斷,能夠輕松判斷出系統(tǒng)升級是否成功。通過標記模塊304將當前備用啟動分區(qū)和當前主啟動分區(qū)的標記位進行互換,以保證本交互式升級方法可以在雙分區(qū)環(huán)境中連續(xù)使用。優(yōu)選的,還包括:更新模塊401,用于當啟動數據的升級成功時,將升級成功的時間點更新為當前備用啟動分區(qū)對應的最新升級時間;當啟動數據的升級失敗時,將升級失敗的時間點更新為當前備用啟動分區(qū)對應的最新升級時間。在本實施例中,通過更新模塊401更新雙分區(qū)各自對應的最新升級時間,便于判斷模塊303隨后對當前主啟動分區(qū)與當前備用啟動分區(qū)各自對應的最新升級時間的先后關系進行判斷。本領域內的技術人員應明白,本發(fā)明的實施例可提供為方法、系統(tǒng)、或計算機程序產品。因此,本發(fā)明可采用完全硬件實施例、完全軟件實施例、或結合軟件和硬件方面的實施例的形式。而且,本發(fā)明可采用在一個或多個其中包含有計算機可用程序代碼的計算機可用存儲介質(包括但不限于磁盤存儲器和光學存儲器等)上實施的計算機程序產品的形式。本發(fā)明是參照根據本發(fā)明實施例的方法、設備(系統(tǒng))、和計算機程序產品的流程圖和/或方框圖來描述的。應理解可由計算機程序指令實現流程圖和/或方框圖中的每一流程和/或方框、以及流程圖和/或方框圖中的流程和/或方框的結合。可提供這些計算機程序指令到通用計算機、專用計算機、嵌入 式處理機或其他可編程數據處理設備的處理器以產生一個機器,使得通過計算機或其他可編程數據處理設備的處理器執(zhí)行的指令產生用于實現在流程圖一個流程或多個流程和/或方框圖一個方框或多個方框中指定的功能的裝置。這些計算機程序指令也可存儲在能引導計算機或其他可編程數據處理設備以特定方式工作的計算機可讀存儲器中,使得存儲在該計算機可讀存儲器中的指令產生包括指令裝置的制造品,該指令裝置實現在流程圖一個流程或多個流程和/或方框圖一個方框或多個方框中指定的功能。這些計算機程序指令也可裝載到計算機或其他可編程數據處理設備上,使得在計算機或其他可編程設備上執(zhí)行一系列操作步驟以產生計算機實現的處理,從而在計算機或其他可編程設備上執(zhí)行的指令提供用于實現在流程圖一個流程或多個流程和/或方框圖一個方框或多個方框中指定的功能的步驟。顯然,本領域的技術人員可以對本發(fā)明進行各種改動和變型而不脫離本發(fā)明的精神和范圍。這樣,倘若本發(fā)明的這些修改和變型屬于本發(fā)明權利要求及其等同技術的范圍之內,則本發(fā)明也意圖包含這些改動和變型在內。