亚洲狠狠干,亚洲国产福利精品一区二区,国产八区,激情文学亚洲色图

一種嵌入式系統(tǒng)開發(fā)程序校驗碼自動生成的方法

文檔序號:6337058閱讀:1195來源:國知局
專利名稱:一種嵌入式系統(tǒng)開發(fā)程序校驗碼自動生成的方法
技術(shù)領(lǐng)域
本發(fā)明涉及嵌入式系統(tǒng)開發(fā)程序校驗碼自動生成的方法。
背景技術(shù)
現(xiàn)有技術(shù)中,針對程序的校驗管理方式,目前的處理方式有以下幾種1)采用專用的代碼管理系統(tǒng)或工具專用的代碼管理系統(tǒng)和工具能夠根據(jù)代碼的功能、模塊分類、系統(tǒng)整合起到很 好的管理作用。但是這個方式在不能夠在嵌入式系統(tǒng)的最終過程中體現(xiàn)出其特有的專用 型,或者這個專用型沒有與最后生成的嵌入式系統(tǒng)結(jié)合起來,沒有一個形成一個整體, 很容易造成代碼的混亂。2)采用手動設(shè)定的版本號對程序進(jìn)行規(guī)劃后,根據(jù)統(tǒng)一的規(guī)劃、功能的升級等方式,逐步提升程序的版 本號,如V1.01,V2.10。這種方式由于引入了人為的操作,需要編程人員的參與,如果 出現(xiàn)人為疏忽、編碼出錯、重復(fù)編號等原因,導(dǎo)致版本的錯亂、重復(fù),最終出現(xiàn)錯誤的 情況。另外這種方式?jīng)]有把代碼的差異性進(jìn)行體現(xiàn)。以上的辦法都沒有很好的把代碼的唯一性、差異性在最終的下載程序中體現(xiàn)出 來,也沒有能夠?qū)ο螺d程序的正確性進(jìn)行驗證,都是沒有校驗的。

發(fā)明內(nèi)容
本發(fā)明所要解決的技術(shù)問題是提供一種嵌入式系統(tǒng)開發(fā)程序校驗碼自動生成的 方法,在對代碼進(jìn)行編譯完成后自動生成校驗碼,并自動的根據(jù)生成的十六進(jìn)制或者二 進(jìn)制文件的變化自動生成并添加唯一的校驗碼;同時實現(xiàn)程序校驗碼的自動生成,不需 要人為的操作,使得程序的校驗碼更加具有唯一性和可靠性。為解決上述技術(shù)問題,本發(fā)明的技術(shù)方案是一種嵌入式系統(tǒng)開發(fā)程序校驗碼 自動生成的方法,包括以下步驟(1)編寫計算校驗碼的命令CommA,根據(jù)編譯器的輸出文件自動計算校驗碼命 令;(2)編寫把CommA命令生成的校驗碼添加寫入生成的十六進(jìn)制或二進(jìn)制文件的 命令CommB ;(3)根據(jù)嵌入式系統(tǒng)編譯開發(fā)環(huán)境提供的開放接口,在編譯器成功編譯并生成 十六進(jìn)制或者二進(jìn)制出處文件后自動運行計算程序的校驗碼命令;(4)再次執(zhí)行編譯的過程,并燒制已經(jīng)自動添加校驗碼的代碼到設(shè)備中。在對代碼進(jìn)行編譯完成后自動生成校驗碼,并自動的根據(jù)生成的十六進(jìn)制或者 二進(jìn)制文件的變化自動生成并添加唯一的校驗碼;當(dāng)通過程序燒寫器、下載工具進(jìn)行程 序下載、燒錄的過程中完成校驗碼的裝載過程,實現(xiàn)程序校驗碼的自動生成,不需要人 為的操作,使得程序的校驗碼更加具有唯一性和可靠性。當(dāng)程序運行時,程序可以對本身進(jìn)行一次校驗碼的計算,計算的結(jié)果與存儲于程序中的校驗碼進(jìn)行比對,確認(rèn)無誤后 才進(jìn)入運行,以防止程序由于各種原因(程序存儲器損壞、病毒入侵等原因)使得程序出 現(xiàn)損壞而運行,從而導(dǎo)致一些致命性的錯誤發(fā)生,對提高裝置的安全性起到防護(hù)作用。作為改進(jìn),所述步驟(1)的具體步驟如下(SlOl)查找并進(jìn)入編譯器生成的最終目錄;(S102)判斷編譯器生成的文件是16進(jìn)制還是2進(jìn)制,若是16進(jìn)制,則選擇16 進(jìn)制的算法;若是2進(jìn)制,則選擇2進(jìn)制的算法;(S103)逐一讀取并解析文件的數(shù)據(jù)域;(S104)根據(jù)校驗算法計算校驗碼;(S105)判斷文件是否結(jié)束,是則輸出文件校驗碼,否則返回(S103)。作為改 進(jìn),所述步驟(2)的具體步驟如下(S201)判斷處理的文件是否存在,否則返回,是則進(jìn)入下一步;(S202)獲取當(dāng)前系統(tǒng)程序儲存空間的大小Flash_Size ;(S203)判斷編譯器生成的文件是16進(jìn)制還是2進(jìn)制;(S204)若是16進(jìn)制,則在文件最后一部分插入一條記錄,指定在FlaSh_Size 地址寫入程序校驗碼;若是2進(jìn)制,則獲取已經(jīng)生成的2進(jìn)制文件占用的空間大小Bin_ Size,然后在Bin_Size至Flash_Size空間填充0XFF,最后在Flash_Size地址寫入程序校驗 碼;(S205)顯示程序校驗碼;(S206)提示成功并返回。本發(fā)明與現(xiàn)有技術(shù)相比所帶來的有益效果是1)本方法的校驗碼可以自動生成,無需人工干預(yù);使得校驗碼更具有唯一性和 可靠性;2)經(jīng)過算法生成的校驗碼自動添加到編譯器生成的十六進(jìn)制或二進(jìn)制文件中;3)使得整個編譯過程與原有的編譯過程一致,對原有的所有操作過程沒有任何 改變,更加易于讓使用者接受;4)生成的程序校驗碼可以用于代碼的自檢,有效的提高開發(fā)產(chǎn)品的安全性和可靠性。


圖1為本發(fā)明流程圖;圖2為計算效驗碼命令流程圖;圖3為自動添加校驗碼流程圖。
具體實施例方式下面結(jié)合說明書附圖對本發(fā)明作進(jìn)一步說明。如圖1所示,一種嵌入式系統(tǒng)開發(fā)程序校驗碼自動生成的方法,包括以下步 驟(1)編寫計算校驗碼的命令CommA,根據(jù)編譯器的輸出文件自動計算校驗碼命令;(2)編寫把CommA命令生成的校驗碼添加寫入生成的十六進(jìn)制或二進(jìn)制文件的 命令CommB ;(3)根據(jù)嵌入式系統(tǒng)編譯開發(fā)環(huán)境提供的開放接口,在編譯器成功編譯并生成 十六進(jìn)制或者二進(jìn)制出處文件后自動運行計算程序的校驗碼命令;(4)再次執(zhí)行編譯的過程,并燒制已經(jīng)自動添加校驗碼的代碼到設(shè)備中。如圖2所示,所述步驟(1)的具體步驟如下(SlOl)查找并進(jìn)入編譯器生成的最終目錄;(S102)判斷編譯器生成的文件是16進(jìn)制還是2進(jìn)制,若是16進(jìn)制,則選擇16 進(jìn)制的算法;若是2進(jìn)制,則選擇2進(jìn)制的算法;(S103)逐一讀取并解析文件的數(shù)據(jù)域;(S104)根據(jù)校驗算法計算校驗碼;(S105)判斷文件是否結(jié)束,是則輸出文件校驗碼,否則返回(S103)。如圖3所 示,所述步驟(2)的具體步驟如下(S201)判斷處理的文件是否存在,否則返回,是則進(jìn)入下一步;(S202)獲取當(dāng)前系統(tǒng)程序儲存空間的大小Flash_Size ;(S203)判斷編譯器生成的文件是16進(jìn)制還是2進(jìn)制;(S204)若是16進(jìn)制,則在文件最后一部分插入一條記錄,指定在FlaSh_Size 地址寫入程序校驗碼;若是2進(jìn)制,則獲取已經(jīng)生成的2進(jìn)制文件占用的空間大小Bin_ Size,然后在Bin_Size至Flash_Size空間填充0XFF,最后在Flash_Size地址寫入程序校驗 碼;(S205)顯示程序校驗碼;(S206)提示成功并返回。在對代碼進(jìn)行編譯完成后自動生成校驗碼,并自動的根據(jù)生成的十六進(jìn)制或者 二進(jìn)制文件的變化自動生成并添加唯一的校驗碼;當(dāng)通過程序燒寫器、下載工具進(jìn)行程 序下載、燒錄的過程中完成校驗碼的裝載過程,實現(xiàn)程序校驗碼的自動生成,不需要人 為的操作,使得程序的校驗碼更加具有唯一性和可靠性。當(dāng)程序運行時,程序可以對本 身進(jìn)行一次校驗碼的計算,計算的結(jié)果與存儲于程序中的校驗碼進(jìn)行比對,確認(rèn)無誤后 才進(jìn)入運行,以防止程序由于各種原因(程序存儲器損壞、病毒入侵等原因)使得程序出 現(xiàn)損壞而運行,從而導(dǎo)致一些致命性的錯誤發(fā)生,對提高裝置的安全性起到防護(hù)作用。
權(quán)利要求
1.一種嵌入式系統(tǒng)開發(fā)程序校驗碼自動生成的方法,其特征在于,包括以下步驟(1)編寫計算校驗碼的命令CommA,根據(jù)編譯器的輸出文件自動計算校驗碼命令;(2)編寫把CommA命令生成的校驗碼添加寫入生成的十六進(jìn)制或二進(jìn)制文件的命令 CommB ;(3)根據(jù)嵌入式系統(tǒng)編譯開發(fā)環(huán)境提供的開放接口,在編譯器成功編譯并生成十六進(jìn) 制或者二進(jìn)制出處文件后自動運行計算程序的校驗碼命令;(4)再次執(zhí)行編譯的過程,并燒制已經(jīng)自動添加校驗碼的代碼到設(shè)備中。
2.根據(jù)權(quán)利要求1所述的一種嵌入式系統(tǒng)開發(fā)程序校驗碼自動生成的方法,其特征在 于所述步驟(1)的具體步驟如下(5101)查找并進(jìn)入編譯器生成的最終目錄;(5102)判斷編譯器生成的文件是16進(jìn)制還是2進(jìn)制,若是16進(jìn)制,則選擇16進(jìn)制 的算法;若是2進(jìn)制,則選擇2進(jìn)制的算法;(5103)逐一讀取并解析文件的數(shù)據(jù)域;(5104)根據(jù)校驗算法計算校驗碼;(5105)判斷文件是否結(jié)束,是則輸出文件校驗碼,否則返回步驟(S103)。
3.根據(jù)權(quán)利要求1所述的一種嵌入式系統(tǒng)開發(fā)程序校驗碼自動生成的方法,其特征在 于所述步驟(2)的具體步驟如下(5201)判斷處理的文件是否存在,否則返回,是則進(jìn)入下一步;(5202)獲取當(dāng)前系統(tǒng)程序儲存空間的大小FlaSh_Size;(5203)判斷編譯器生成的文件是16進(jìn)制還是2進(jìn)制;(5204)若是16進(jìn)制,則在文件最后一部分插入一條記錄,指定在FlaSh_Size地址寫 入程序校驗碼;若是2進(jìn)制,則獲取已經(jīng)生成的2進(jìn)制文件占用的空間大小Bin_Size,然 后在Bin_Size至Flash_Size空間填充OXFF,最后在Flash_Size地址寫入程序校驗碼;(5205)顯示程序校驗碼;(5206)提示成功并返回。
全文摘要
一種嵌入式系統(tǒng)開發(fā)程序校驗碼自動生成的方法,(1)編寫計算校驗碼的命令CommA,根據(jù)編譯器的輸出文件自動計算校驗碼命令;(2)編寫把CommA命令生成的校驗碼添加寫入生成的十六進(jìn)制或二進(jìn)制文件的命令CommB;(3)根據(jù)嵌入式系統(tǒng)編譯開發(fā)環(huán)境提供的開放接口,在編譯器成功編譯并生成十六進(jìn)制或者二進(jìn)制出處文件后自動運行計算程序的校驗碼命令;(4)再次執(zhí)行編譯的過程,并燒制已經(jīng)自動添加校驗碼的代碼到設(shè)備中。在對代碼進(jìn)行編譯完成后自動生成校驗碼,并自動的根據(jù)生成的十六進(jìn)制或者二進(jìn)制文件的變化自動生成并添加唯一的校驗碼;同時實現(xiàn)程序校驗碼的自動生成,不需要人為的操作,使得程序的校驗碼更加具有唯一性和可靠性。
文檔編號G06F9/45GK102023884SQ201010565309
公開日2011年4月20日 申請日期2010年11月25日 優(yōu)先權(quán)日2010年11月25日
發(fā)明者劉波 申請人:深圳市科陸電子科技股份有限公司
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點贊!
1