本發(fā)明涉及嵌入式設備,特別涉及一種精簡flash占用的ota(over-the-air?technology,空中下載技術)功能實現(xiàn)方法、裝置及設備。
背景技術:
1、在嵌入式設備領域,為提升用戶體驗和產品競爭力,普遍需要實現(xiàn)ota功能,以便及時更新設備軟件。但是實現(xiàn)ota功能是需要占用不少flash存儲空間的,因為沒辦法在當前運行的固件中自己更新自己,所以普遍需要再多分配另一片flash存儲空間來存放下載的ota固件,然后再重啟切換或更新ota固件為主運行固件。
2、然而,在上述過程中需要分配一塊跟當前固件差不多大小的flash存儲空間,利用額外增加的flash存儲空間實現(xiàn)ota功能,但是額外增加的flash存儲空間僅用于實現(xiàn)ota功能,造成flash存儲空間的浪費,同時為了實現(xiàn)ota功能增加了flash存儲空間,也提升了嵌入式設備的成本。
技術實現(xiàn)思路
1、本發(fā)明提供一種精簡flash占用的ota功能實現(xiàn)方法、裝置及設備,以解決如何降低嵌入式設備實現(xiàn)ota功能的占用空間及成本等問題。
2、本發(fā)明第一方面實施例提供一種精簡flash占用的ota功能實現(xiàn)方法,包括以下步驟:將嵌入式設備的目標flash存儲空間劃分為第一存儲空間和第二存儲空間,其中,第一存儲空間的空間大小大于第二存儲空間的空間大?。辉诘谝淮鎯臻g上運行目標軟件的完整操作系統(tǒng),在第二存儲空間上創(chuàng)建實現(xiàn)ota功能的最小化操作系統(tǒng),其中,最小化操作系統(tǒng)具有ota更新任務所需的最小化功能和引導加載程序;利用完整操作系統(tǒng)、最小化操作系統(tǒng)和引導加載程序更新目標軟件。
3、可選地,最小化功能包括驗證更新文件功能、管理flash擦寫功能和執(zhí)行系統(tǒng)切換功能。
4、可選地,利用完整操作系統(tǒng)、最小化操作系統(tǒng)和引導加載程序更新目標軟件,包括:在利用完整操作系統(tǒng)檢測到ota更新任務后,利用完整操作系統(tǒng)設置引導加載程序下次啟動時加載最小化操作系統(tǒng)、以及目標軟件的軟件更新包的下載位置為第一存儲空間;控制嵌入式設備重啟后利用引導加載程序加載最小化操作系統(tǒng),利用最小化操作系統(tǒng)執(zhí)行ota更新任務,在執(zhí)行ota更新任務過程中,利用最小化操作系統(tǒng)的管理flash擦寫功能管理第一存儲空間的擦寫,利用最小化操作系統(tǒng)的驗證更新文件功能校驗軟件更新包的完整性和安全性;若檢測到ota更新任務執(zhí)行完成,則利用最小化操作系統(tǒng)的執(zhí)行系統(tǒng)切換功能設置引導加載程序下次啟動時加載完整操作系統(tǒng),控制嵌入式設備重啟后利用引導加載程序加載完整操作系統(tǒng)。
5、可選地,在執(zhí)行ota更新任務過程中,軟件更新包覆蓋第一存儲空間內的目標軟件的固件。
6、可選地,若嵌入式設備包括一個核心,則目標flash存儲空間為對應核心的flash存儲空間;若嵌入式設備包括多個核心,則目標flash存儲空間為任意一個核心的flash存儲空間。
7、可選地,嵌入式設備的每個核心的flash存儲空間允許復用目標flash存儲空間的最小化操作系統(tǒng)實現(xiàn)ota功能。
8、可選地,若多個核心的flash存儲空間同時復用目標flash存儲空間的最小化操作系統(tǒng)實現(xiàn)ota功能,包括:獲取多個核心中每個核心的執(zhí)行優(yōu)先級;根據(jù)執(zhí)行優(yōu)先級確定多個核心的每個核心復用順序。
9、可選地,目標flash存儲空間對應核心的執(zhí)行優(yōu)先級設置為最高優(yōu)先級。
10、本發(fā)明第二方面實施例提供一種精簡flash占用的ota功能實現(xiàn)裝置,包括:劃分模塊,用于將嵌入式設備的目標flash存儲空間劃分為第一存儲空間和第二存儲空間;創(chuàng)建模塊,用于在第一存儲空間上運行目標軟件的完整操作系統(tǒng),在第二存儲空間上創(chuàng)建實現(xiàn)ota功能的最小化操作系統(tǒng),其中,最小化操作系統(tǒng)具有ota更新任務所需的最小化功能和引導加載程序;更新模塊,用于利用完整操作系統(tǒng)、最小化操作系統(tǒng)和引導加載程序更新目標軟件。
11、本發(fā)明第三方面實施例提供一種嵌入式設備,包括:存儲器、處理器及存儲在存儲器上并可在處理器上運行的計算機程序,處理器執(zhí)行程序,以實現(xiàn)上述精簡flash占用的ota功能實現(xiàn)方法。
12、由此,本發(fā)明包括如下有益效果:
13、本發(fā)明實施例可以在目標flash存儲空間上創(chuàng)建最小化操作系統(tǒng),通過最小化操作系統(tǒng)實現(xiàn)ota功能,由于最小化操作系統(tǒng)可以最大程度減少對flash存儲空間的空間占用,且基于一個flash存儲空間即可實現(xiàn)ota功能,因此無需額外增加flash存儲空間實現(xiàn)ota功能,可以大幅減少ota功能對flash存儲空間的空間消耗,從而達到節(jié)約成本又不影響ota功能的目的;同時無需對更新固件進行壓縮,因此不需要編碼支持壓縮解壓等復雜功能代碼,具有更低的開發(fā)成本和開發(fā)周期,適用性和實用性更好。由此,解決了如何降低設備實現(xiàn)ota功能的占用空間及成本等技術問題。
14、本發(fā)明附加的方面和優(yōu)點將在下面的描述中部分給出,部分將從下面的描述中變得明顯,或通過本發(fā)明的實踐了解到。
1.一種精簡flash占用的ota功能實現(xiàn)方法,其特征在于,包括以下步驟:
2.根據(jù)權利要求1所述的精簡flash占用的ota功能實現(xiàn)方法,其特征在于,所述最小化功能包括驗證更新文件功能、管理flash擦寫功能和執(zhí)行系統(tǒng)切換功能。
3.根據(jù)權利要求2所述的精簡flash占用的ota功能實現(xiàn)方法,其特征在于,所述利用所述完整操作系統(tǒng)、所述最小化操作系統(tǒng)和所述引導加載程序更新所述目標軟件,包括:
4.根據(jù)權利要求3所述的精簡flash占用的ota功能實現(xiàn)方法,其特征在于,在執(zhí)行所述ota更新任務過程中,所述軟件更新包覆蓋所述第一存儲空間內的目標軟件的固件。
5.根據(jù)權利要求1所述的精簡flash占用的ota功能實現(xiàn)方法,其特征在于,若所述嵌入式設備包括一個核心,則所述目標flash存儲空間為對應核心的flash存儲空間;若所述嵌入式設備包括多個核心,則所述目標flash存儲空間為任意一個核心的flash存儲空間。
6.根據(jù)權利要求1或5所述的精簡flash占用的ota功能實現(xiàn)方法,其特征在于,所述嵌入式設備的每個核心的flash存儲空間允許復用所述目標flash存儲空間的最小化操作系統(tǒng)實現(xiàn)ota功能。
7.根據(jù)權利要求6所述的精簡flash占用的ota功能實現(xiàn)方法,其特征在于,若多個核心的flash存儲空間同時復用所述目標flash存儲空間的最小化操作系統(tǒng)實現(xiàn)ota功能,包括:
8.根據(jù)權利要求7所述的精簡flash占用的ota功能實現(xiàn)方法,其特征在于,所述目標flash存儲空間對應核心的執(zhí)行優(yōu)先級設置為最高優(yōu)先級。
9.一種精簡flash占用的ota功能實現(xiàn)裝置,其特征在于,包括:
10.一種嵌入式設備,其特征在于,包括:存儲器、處理器及存儲在所述存儲器上并可在所述處理器上運行的計算機程序,所述處理器執(zhí)行所述程序,以實現(xiàn)權利要求1-8任一項所述的精簡flash占用的ota功能實現(xiàn)方法。