本發明專利技術實施例公開了一種終端設備開機、升級方法和終端設備,涉及電子終端設備領域,用于提高終端設備開機的成功率。本發明專利技術中,終端設備中存儲兩套系統引導程序,在一套系統引導程序損壞時可以使用另一套系統引導程序進行開機,在進行程序升級時,若對其中一套系統引導程序的升級失敗,則不再對另一套系統引導程序進行升級,從而保證終端設備中始終存有至少一套完整的系統引導程序,進而提高終端設備的開機成功率。
【技術實現步驟摘要】
本專利技術涉及無線通信領域,尤其涉及一種終端設備開機、升級方法和終端設備。
技術介紹
隨著安卓(Android)系統的迅速發展和其市場份額的不斷增大,其客戶群也在迅猛增長。隨之而來的就是系統在使用中問題的不斷暴露。其中困擾各個廠家最大的問題就是系統的升級失敗而導致產品返廠的問題。Android的開放性造就了用戶在使用上的最大靈活性。包括自主刷機,自主安裝未授權的第三方軟件等。其中,出現最嚴重的就是將系統的系統引導程序(bootloader)刷壞。 直接導致產品無法升級,無法開機。唯一途徑就是返廠,這樣會對企業造成重大的損失。目前防止bootloader被刷壞的技術主要包括禁止升級bootloader或者對 bootloader升級進行嚴格的安全限制。這樣做的有一個很大的缺陷當整個系統確實需要升級bootloader時,若不能及時升級bootloader,會對系統帶來很大的風險,并且靈活性很差。
技術實現思路
本專利技術實施例提供一種終端設備開機、升級方法和終端設備,用于提高終端設備開機的成功率。一種終端設備開機方法,該終端設備的存儲單元包含第一引導BOOT分區和第二 BOOT分區,第一 BOOT分區和第二 BOOT分區中各存儲有一份相同的系統引導程序,并在第三分區中存儲有第一 BOOT分區中的系統引導程序的哈希值和第二 BOOT分區中的系統引導程序的哈希值,該方法包括在接收到開機指令后,從第三分區中讀取第一 BOOT分區中的系統引導程序的哈希值;根據讀取到的哈希值對第一 BOOT分區中的系統引導程序進行完整性驗證,若驗證成功,則根據第一 BOOT分區中的系統引導程序執行開機流程;否則,從第三分區中讀取第二 BOOT分區中的系統引導程序的哈希值;根據讀取到的哈希值對第二 BOOT分區中的系統引導程序進行完整性驗證,在驗證成功后,根據第二 BOOT分區中的系統引導程序執行開機流程。一種終端設備升級方法,該終端設備的存儲單元包含第一引導BOOT分區和第二 BOOT分區,第一 BOOT分區和第二 BOOT分區中各存儲有一份相同的系統引導程序,該方法包括在下載到系統引導程序的升級包后,根據該升級包對第一 BOOT分區中的系統引導程序進行升級,若升級成功,則根據該升級包對第二 BOOT分區中的系統引導程序進行升級,否則,停止升級并關機。一種終端設備,該終端設備的存儲單元包含第一引導BOOT分區和第二 BOOT分區,第一 BOOT分區和第二 BOOT分區中各存儲有一份相同的系統引導程序,并在第三分區中存儲有第一 BOOT分區中的系統引導程序的哈希值和第二 BOOT分區中的系統引導程序的哈希值,該終端設備還包括主處理器,用于在接收到開機指令后,從第三分區中讀取第一 BOOT分區中的系統引導程序的哈希值;根據讀取到的哈希值對第一 BOOT分區中的系統引導程序進行完整性驗證,若驗證成功,則根據第一 BOOT分區中的系統引導程序執行開機流程;否則,從第三分區中讀取第二 BOOT分區中的系統引導程序的哈希值;根據讀取到的哈希值對第二 BOOT分區中的系統引導程序進行完整性驗證,在驗證成功后,根據第二 BOOT分區中的系統引導程序執行開機流程。一種終端設備,該終端設備的存儲單元包含第一引導BOOT分區和第二 BOOT分區, 第一 BOOT分區和第二 BOOT分區中各存儲有一份相同的系統引導程序,該終端設備還包括主處理器,用于在下載到系統引導程序的升級包后,根據該升級包對第一 BOOT分區中的系統引導程序進行升級,若升級成功,則根據該升級包對第二 BOOT分區中的系統引導程序進行升級,否則,停止升級并關機。本專利技術實施例提供的一種方案中,終端設備的存儲單元包含第一引導(BOOT)分區和第二 BOOT分區,第一 BOOT分區和第二 BOOT分區中各存儲有一份相同的系統引導程序, 并在第三分區中存儲有第一 BOOT分區中的系統引導程序的哈希值和第二 BOOT分區中的系統引導程序的哈希值,在開機時,根據其中一個哈希值驗證對應的系統引導程序的完整性, 若驗證成功,則根據該系統引導程序執行開機流程,否則,根據另外一個哈希值驗證另一個系統引導程序的完整性,在驗證成功后根據該系統引導程序執行開機流程??梢?,本方案中存儲兩套系統引導程序,在一套系統引導程序損壞時還可以使用另一套系統引導程序進行開機,從而提高了終端設備的開機成功率。本專利技術實施例提供的另一種方案中,在下載到系統引導程序的升級包后,根據該升級包對第一 BOOT分區中的系統引導程序進行升級,若升級成功,則根據該升級包對第二 BOOT分區中的系統引導程序進行升級,否則,停止升級并關機;可見,本方案中,若對存儲的兩套系統引導程序中的一套系統引導程序的升級失敗,則不再對另一套系統引導程序進行升級,從而能夠保證終端設備中始終存儲有至少一套完整的系統引導程序,進而能夠使用該完整的系統引導程序進行開機,提高了終端設備的開機成功率。附圖說明圖I為本專利技術實施例提供的方法流程示意圖2為本專利技術實施例提供的另一方法流程示意圖3a為本專利技術實施例一的流程示意圖3b為本專利技術實施例二的流程示意圖4為本專利技術實施例提供的終端設備結構示意圖。具體實施方式為了提高終端設備的開機成功率,本專利技術實施例提供一種終端設備開機方法,終端設備的存儲單元包含第一引導(BOOT)分區和第二 BOOT分區,第一 BOOT分區和第二 BOOT 分區中各存儲有一份相同的系統引導程序,并在第三分區中存儲有第一 BOOT分區中的系統引導程序的哈希值和第二 BOOT分區中的系統引導程序的哈希值,在開機時,根據其中一個哈希值驗證對應的系統引導程序的完整性,若驗證成功,則根據該系統引導程序執行開機流程,否則,根據另外一個哈希值驗證另一個系統引導程序的完整性,在驗證成功后根據該系統引導程序執行開機流程。系統引導程序的哈希值,是采用哈希算法計算得到的該系統引導程序哈希值。參見圖1,本專利技術實施例提供的終端設備開機方法,包括以下步驟步驟10 :在接收到開機指令后,從第三分區中讀取第一 BOOT分區中的系統引導程序的哈希值;根據讀取到的哈希值對第一 BOOT分區中的系統引導程序進行完整性驗證;若驗證成功,則到步驟11,否則,到步驟12 ;這里,對第一 BOOT分區中的系統引導程序進行完整性驗證的方法為根據哈希算法計算第一 BOOT分區中的系統引導程序的哈希值,將計算得到的哈希值與從第三分區中讀取到的第一 BOOT分區中的系統引導程序的哈希值進行比較,若兩者一致,則確定驗證成功,否則,驗證失敗。步驟11 :若驗證成功,則根據第一 BOOT分區中的系統引導程序執行開機流程;步驟12 :從第三分區中讀取第二BOOT分區中的系統引導程序的哈希值;根據讀取到的哈希值對第二 BOOT分區中的系統引導程序進行完整性驗證,在驗證成功后,根據第二 BOOT分區中的系統引導程序執行開機流程。這里,對第二 BOOT分區中的系統引導程序進行完整性驗證的方法為根據哈希算法計算第二 BOOT分區中的系統引導程序的哈希值,將計算得到的哈希值與從第三分區中讀取到的第二 BOOT分區中的系統引導程序的哈希值進行比較,若兩者一致,則確定驗證成功,否則,驗證失敗。較佳的,在根據第二 BOOT分區中的本文檔來自技高網...
【技術保護點】
一種終端設備開機方法,其特征在于,該終端設備的存儲單元包含第一引導BOOT分區和第二BOOT分區,第一BOOT分區和第二BOOT分區中各存儲有一份相同的系統引導程序,并在第三分區中存儲有第一BOOT分區中的系統引導程序的哈希值和第二BOOT分區中的系統引導程序的哈希值,該方法包括:在接收到開機指令后,從第三分區中讀取第一BOOT分區中的系統引導程序的哈希值;根據讀取到的哈希值對第一BOOT分區中的系統引導程序進行完整性驗證,若驗證成功,則根據第一BOOT分區中的系統引導程序執行開機流程;否則,從第三分區中讀取第二BOOT分區中的系統引導程序的哈希值;根據讀取到的哈希值對第二BOOT分區中的系統引導程序進行完整性驗證,在驗證成功后,根據第二BOOT分區中的系統引導程序執行開機流程。
【技術特征摘要】
【專利技術屬性】
技術研發人員:王永清,
申請(專利權)人:青島海信移動通信技術股份有限公司,
類型:發明
國別省市:
還沒有人留言評論。發表了對其他瀏覽者有用的留言會獲得科技券。