一種程序升級文件的數(shù)據(jù)存儲方法、裝置和升級系統(tǒng)的制作方法
【技術領域】
[0001] 本發(fā)明涉及空調(diào)升級技術領域,具體地,涉及一種程序升級文件的數(shù)據(jù)存儲方法、 裝置和升級系統(tǒng)。
【背景技術】
[0002] 目前,大型中央空調(diào)機組程序升級一般采用遠程升級的方式實現(xiàn),此種方式省去 了大量的維護成本和對專業(yè)人員的需求,已經(jīng)逐漸在中央空調(diào)領域大量普及。
[0003] 但是,目前空調(diào)機組(例如:大型中央空調(diào)機組)遠程升級的程序文件,基本上都是 對所有的源代碼統(tǒng)一編譯后生成。其中,該空調(diào)機組,還可以是其他空調(diào)機組,例如:多聯(lián) 機、機房空調(diào)等具有網(wǎng)絡(例如:以太網(wǎng)、無線網(wǎng)絡)連接的其他空調(diào)。通過此種方式生成的 程序升級文件,隨著程序不斷完善和功能的增加,程序的升級文件所占用的存儲越來越大, 這樣就導致了兩個問題:
[0004]⑴空調(diào)機組的控制器固有的存儲器空間,隨著程序文件的增大已不能滿足程序升 級的開銷需求,面臨升級控制器硬件的問題;可參見表1顯示的傳統(tǒng)方式的存儲器映射表。 [0005]表一
Ι???τ]~(2)程序升級文件的增大,也加長了程序的整個升級過程,存在用戶體驗差、可能引 起用戶投訴的問題。
[0008] 所以,程序升級文件的增大已經(jīng)嚴重影響了空調(diào)程序遠程升級的正常功能和用戶 體驗,亟需一種解決方案以解決此問題。
[0009] 現(xiàn)有技術中,存在占用空間大、升級效果差和用戶體驗差等缺陷。
【發(fā)明內(nèi)容】
[0010] 本發(fā)明的目的在于,針對上述缺陷,提出一種程序升級文件的數(shù)據(jù)存儲方法、裝置 和升級系統(tǒng),以解決通過程序升級文件的分塊存儲進行數(shù)據(jù)更新,更高效地更新數(shù)據(jù),提升 升級效率、減小存儲成本的問題,從而達到占用空間小、升級效果好和用戶體驗好等效果。
[0011] 本發(fā)明一方面提供一種程序升級文件的數(shù)據(jù)存儲方法,包括:對原始程序升級文 件進行劃分處理,以得到包含可編譯數(shù)據(jù)和固化數(shù)據(jù)的劃分結(jié)果;基于所述劃分結(jié)果,對程 序升級文件進行分塊處理,以實現(xiàn)程序升級文件中可編譯數(shù)據(jù)和固化數(shù)據(jù)的分離;對所述 分離得到的固化數(shù)據(jù)進行存儲處理。
[0012] 其中,對所述分離得到的固化數(shù)據(jù)進行存儲處理,包括:通過預設的軟件解析所述 固化數(shù)據(jù)并配置地址空間,將解析后的固化數(shù)據(jù)存儲在預設存儲器的固化數(shù)據(jù)區(qū)。進一步, 對所述分離得到的固化數(shù)據(jù)進行存儲處理,還包括:通過預設的源代碼中數(shù)據(jù)位置的定義 規(guī)則,解析并指定所述固有數(shù)據(jù)的讀取位置,以在程序運行時讀取相應的固有數(shù)據(jù)。
[0013] 優(yōu)選地,該方法還包括;對所述分離得到的可編譯數(shù)據(jù)進行編譯處理,以獲得新的 程序升級文件。
[0014] 其中,對所述分離得到的可編譯數(shù)據(jù)進行編譯處理,包括:通過預設的編譯規(guī)則, 對所述可編譯數(shù)據(jù)進行編譯處理,生成當前所需的所述新的程序升級文件。
[0015] 具體地,所述可編譯數(shù)據(jù),包括系統(tǒng)文件和邏輯內(nèi)容。
[0016] 與上述方法相匹配,本發(fā)明另一方面提供一種程序升級文件的數(shù)據(jù)存儲裝置,包 括:文件劃分單元,用于對原始程序升級文件進行劃分處理,以得到包含可編譯數(shù)據(jù)和固化 數(shù)據(jù)的劃分結(jié)果;分塊處理單元,用于基于所述劃分結(jié)果,對程序升級文件進行分塊處理,, 以實現(xiàn)程序升級文件中可編譯數(shù)據(jù)和固化數(shù)據(jù)的分離;固化數(shù)據(jù)處理單元,用于對所述分 離得到的固化數(shù)據(jù)進行存儲處理。
[0017] 其中,固化數(shù)據(jù)處理單元,包括:存儲模塊,用于通過預設的軟件解析所述固化數(shù) 據(jù)并配置地址空間,將解析后的固化數(shù)據(jù)存儲在預設存儲器的固化數(shù)據(jù)區(qū)。進一步,固化數(shù) 據(jù)處理單元,還包括:讀取模塊,用于通過預設的源代碼中數(shù)據(jù)位置的定義規(guī)則,解析并指 定所述固有數(shù)據(jù)的讀取位置,以在程序運行時讀取相應的固有數(shù)據(jù)。
[0018] 優(yōu)選地,該裝置還包括;可編譯數(shù)據(jù)處理單元,用于對所述分離得到的可編譯數(shù)據(jù) 進行編譯處理,以獲得新的程序升級文件。
[0019] 其中,可編譯數(shù)據(jù)處理單元,包括:編譯器,用于通過預設的編譯規(guī)則,對所述可編 譯數(shù)據(jù)進行編譯處理,生成當前所需的所述新的程序升級文件。
[0020] 具體地,所述可編譯數(shù)據(jù),包括系統(tǒng)文件和邏輯內(nèi)容。
[0021] 與上述方法和/或系統(tǒng)相匹配,本發(fā)明另一方面提供一種空調(diào)控制程序的升級系 統(tǒng),包括以上所述的裝置。
[0022] 本發(fā)明的方案,通過對程序升級文件的劃分,進而剝離或提取得到固化數(shù)據(jù)和可 編譯數(shù)據(jù)(例如:系統(tǒng)文件和邏輯內(nèi)容),對固化數(shù)據(jù)進行固化存儲并在程序運行時讀取,對 可編譯數(shù)據(jù)進行相應編譯生成當前所需程序升級文件,避免了大量的不需要更新的數(shù)據(jù)編 譯在程序升級文件中導致的程序文件過大問題,同時也解決了程序文件過大導致的程序升 級時間長、用戶體驗差的問題。
[0023] 進一步,本發(fā)明的方案,對固化數(shù)據(jù)部分,通過相應的軟件解析及配置地址空間, 將其存儲在存儲器的固化數(shù)據(jù)區(qū);并通過對源代碼中的數(shù)據(jù)位置統(tǒng)一管理定義,解析固有 數(shù)據(jù)的讀取位置,從而,實現(xiàn)了程序的正常運行,同時達到了減少程序存儲空間的效果。
[0024] 由此,本發(fā)明的方案解決利用程序升級文件的分塊存儲進行數(shù)據(jù)更新,更高效地 更新數(shù)據(jù),提升升級效率、減小存儲成本的問題,從而,克服現(xiàn)有技術中占用空間大、升級效 果差和用戶體驗差的缺陷,實現(xiàn)占用空間小、升級效果好和用戶體驗好的有益效果。
[0025] 本發(fā)明的其它特征和優(yōu)點將在隨后的說明書中闡述,并且,部分地從說明書中變 得顯而易見,或者通過實施本發(fā)明而了解。
[0026] 下面通過附圖和實施例,對本發(fā)明的技術方案做進一步的詳細描述。
【附圖說明】
[0027] 附圖用來提供對本發(fā)明的進一步理解,并且構(gòu)成說明書的一部分,與本發(fā)明的實 施例一起用于解釋本發(fā)明,并不構(gòu)成對本發(fā)明的限制。在附圖中:
[0028] 圖1為本發(fā)明的程序升級文件的數(shù)據(jù)存儲方法的一實施例的流程圖;
[0029] 圖2為本發(fā)明的方法中分塊、存儲及更新處理的一實施例的流程圖;
[0030] 圖3為本發(fā)明的方法中固化數(shù)據(jù)處理的一實施例的流程圖;
[0031] 圖4為本發(fā)明的程序升級文件的數(shù)據(jù)存儲裝置的一實施例的結(jié)構(gòu)示意圖;
[0032] 圖5為本發(fā)明的系統(tǒng)中固化數(shù)據(jù)處理單元的一實施例的結(jié)構(gòu)示意圖;
[0033] 圖6為本發(fā)明的系統(tǒng)中可編譯數(shù)據(jù)處理單元的一實施例的結(jié)構(gòu)示意圖;
[0034] 圖7為本發(fā)明中程序升級文件的一實施例的內(nèi)部結(jié)構(gòu)示意圖;
[0035]圖8為本發(fā)明中提取固化數(shù)據(jù)的一實施例的流程圖;
[0036]圖9為本發(fā)明中固有數(shù)據(jù)讀取流程的一實施例的流程圖。
[0037]結(jié)合附圖,本發(fā)明實施例中附圖標記如下:
[0038] 102-文件劃分單元;104-分塊處理單元;1042-數(shù)據(jù)分離模塊;106-固化數(shù)據(jù)處理 單元;1062-存儲模塊;1064-讀取模塊;108-可編譯數(shù)據(jù)處理單元;1082-編譯器。
【具體實施方式】
[0039]為使本發(fā)明的目的、技術方案和優(yōu)點更加清楚,下面將結(jié)合本發(fā)明具體實施例及 相應的附圖對本發(fā)明技術方案進行清楚、完整地描述。顯然,所描述的實施例僅是本發(fā)明一 部分實施例,而不是全部的實施例?;诒景l(fā)明中的實施例,本領域普通技術人員在沒有做 出創(chuàng)造性勞動前提下所獲得的所有其他實施例,都屬于本發(fā)明保護的范圍。
[0040] 根據(jù)本發(fā)明的實施例,提供了一種程序升級文件的數(shù)據(jù)存儲方法,如圖1所示本發(fā) 明的方法的一實施例的流程圖所示。該方法至少包括:
[0041] 在步驟S110處,對原始程序升級文件進行劃分處理,以得到包含可編譯數(shù)據(jù)和固 化數(shù)據(jù)的劃分結(jié)果。通過劃分處理的方式,將程序升級文件分成可編譯數(shù)據(jù)和固化數(shù)據(jù),劃 分方式簡單、可靠,劃分結(jié)果精準性好,有利于提升對固化數(shù)據(jù)存儲的安全性、對可編譯數(shù) 據(jù)編譯的可靠性。
[0042] 例如:在空調(diào)控制器中,存在很多的傳感器,其傳感器對應的采樣值基本由廠家提 供,其數(shù)據(jù)為一個表格,在程序中體現(xiàn)為一個數(shù)組,一般不會對其進行更改,在這里稱為固 化數(shù)據(jù)。
[0043]例如:在控制器程序中,包含了邏輯控制及模數(shù)(AD)采樣值,在這里AD采樣值是不 隨程序升級而改變的,在編譯器中,設置其表格在FLASH起始地址遠離主程序區(qū)(如:主程序 起始地址及結(jié)束地址在0x00-0x55,AD表格地址放在OxEE-OxFF,則當邏輯有更改時,修改的 是0X00-0X55處的數(shù)