專利名稱:一種系統(tǒng)數(shù)據(jù)初始化的方法
技術(shù)領(lǐng)域:
本發(fā)明涉及電子領(lǐng)域,尤其一種系統(tǒng)數(shù)據(jù)初始化的方法。
背景技術(shù):
在液晶電視領(lǐng)域,系統(tǒng)軟件由于功能、需求、修訂補丁等原因重復(fù)升級的概率比較 大。升級后,為了保證EEPROM或FLASH中保存的數(shù)據(jù)正確,需要執(zhí)行系統(tǒng)數(shù)據(jù)初始化的操 作。然而,目前在液晶電視生產(chǎn)領(lǐng)域,采用在工廠生產(chǎn)線上加一個工位,通過人工操作的方 式執(zhí)行系統(tǒng)數(shù)據(jù)初始化。這個做法費時、費力,而且還可能存在部分機器在生產(chǎn)線上漏了執(zhí) 行數(shù)據(jù)初始化操作而造成EEPROM、FLASH數(shù)據(jù)錯誤、個別機器工作異常的情況。
發(fā)明內(nèi)容
本發(fā)明解決的問題在于,提供一種系統(tǒng)數(shù)據(jù)初始化的方法,可由系統(tǒng)替代人工完 成系統(tǒng)數(shù)據(jù)初始化,避免了系統(tǒng)數(shù)據(jù)錯誤,提高了系統(tǒng)可靠性。具體的,本發(fā)明實施例提供的系統(tǒng)數(shù)據(jù)初始化的方法,包括
在系統(tǒng)內(nèi)部存儲器中預(yù)先存儲系統(tǒng)軟件的程序代碼校驗和CHECKSUM ; 在系統(tǒng)軟件設(shè)計階段,在僅包含程序代碼的系統(tǒng)軟件中加入所述系統(tǒng)軟件的程序代碼 的校驗和CHECKSUM ;
在所述系統(tǒng)軟件加載入系統(tǒng)后的上電階段,判斷所述系統(tǒng)內(nèi)部存儲器中存儲的所述系 統(tǒng)軟件的程序代碼的校驗和CHECKSUM和所述系統(tǒng)軟件中所記錄的校驗和CHECKSUM是否相 同;
如果判斷為是,保留所述系統(tǒng)內(nèi)部存儲器中存儲的所述系統(tǒng)軟件的程序代碼的校驗和 CHECKSUM ;
如果判斷為否,將所述系統(tǒng)內(nèi)部存儲器中存儲的校驗和CHECKSUM替換為所述系統(tǒng)軟 件中記錄的校驗和CHECKSUM,并根據(jù)系統(tǒng)軟件自動對系統(tǒng)數(shù)據(jù)執(zhí)行初始化。較佳的,所述在系統(tǒng)軟件設(shè)計階段,在僅包含程序代碼的系統(tǒng)軟件中加入所述系 統(tǒng)軟件的程序代碼的校驗和CHECKSUM,具體包括
在系統(tǒng)軟件設(shè)計階段,通過一執(zhí)行腳本統(tǒng)計所述僅包含有程序代碼的系統(tǒng)軟件的程序 代碼的校驗和CHECKSUM ;
在所述僅包含程序代碼的系統(tǒng)軟件中加入所述系統(tǒng)軟件的程序代碼的校驗和 CHECKSUM。較佳的,
當(dāng)所述系統(tǒng)為Iinux系統(tǒng)時,所述執(zhí)行腳本為Python ; 當(dāng)所述系統(tǒng)為windows系統(tǒng)時,所述執(zhí)行腳本為vbscript。較佳的,所述在系統(tǒng)軟件設(shè)計階段,通過一執(zhí)行腳本統(tǒng)計所述僅包含有程序代碼 的系統(tǒng)軟件的程序代碼的校驗和CHECKSUM,具體包括
在系統(tǒng)軟件的設(shè)計階段,將僅包含有程序代碼的系統(tǒng)軟件的程序代碼進(jìn)行累加,得到代碼累加值valOl ;
基于所述代碼累加值valOl計算得到所述程序代碼的校驗和CHECKSUM,計算公式如
下
CHECKSUM=Ox 10000- (val01%0xl0000),其中,0x10000 為一系統(tǒng)內(nèi)存地址。較佳的,所述系統(tǒng)軟件為液晶電視系統(tǒng)軟件。較佳的,所系統(tǒng)內(nèi)部存儲器為EEPROM和FLASH任一種。實施本發(fā)明實施例,具有如下有益效果
本發(fā)明實施例在系統(tǒng)軟件加載到系統(tǒng)內(nèi)部之前,在系統(tǒng)內(nèi)部的存儲器中預(yù)先存儲所述系統(tǒng)軟件的程序代碼校驗和CHECKSUM ;在系統(tǒng)軟件設(shè)計階段,實時根據(jù)軟件的代碼數(shù)計算 所述程序代碼的校驗和CHECKSUM,在此基礎(chǔ)上,當(dāng)系統(tǒng)軟件被加載入系統(tǒng)后,系統(tǒng)判斷其內(nèi) 部存儲的CHECKSUM和系統(tǒng)軟件帶有的CHECKSUM是否相同,當(dāng)不同的時候?qū)⑺鱿到y(tǒng)內(nèi)部 存儲器中存儲的校驗和CHECKSUM替換為所述系統(tǒng)軟件文件中記錄的校驗和CHECKSUM,并 根據(jù)系統(tǒng)軟件自動對系統(tǒng)數(shù)據(jù)執(zhí)行初始化,以此完成系統(tǒng)數(shù)據(jù)的初始化。本發(fā)明由于在程 序設(shè)計階段實時統(tǒng)計所述程序代碼的CHECKSUM,那么程序代碼發(fā)生的任何修改,系統(tǒng)文件 中的CHECKSUM都會跟著發(fā)生變化,所以系統(tǒng)文件中的CHECKSUM實時反應(yīng)了程序是否發(fā)生 更新,基于更新后的系統(tǒng)文件中的CHECKSUM替換系統(tǒng)內(nèi)存儲器中的CHECKSUM當(dāng)然數(shù)據(jù)準(zhǔn) 確,因此,采用本發(fā)明之后,避免了系統(tǒng)數(shù)據(jù)錯誤,提高了系統(tǒng)的可靠性。
圖1是本發(fā)明的系統(tǒng)數(shù)據(jù)初始化的方法的一實施例流程示意圖。圖2是本發(fā)明的系統(tǒng)數(shù)據(jù)初始化方法應(yīng)用在液晶電視領(lǐng)域的流程示意圖。
具體實施例方式下面將結(jié)合本發(fā)明實施例中的附圖,對本發(fā)明實施例中的技術(shù)方案進(jìn)行清楚、完 整地描述。圖1是本發(fā)明的系統(tǒng)數(shù)據(jù)初始化的方法的一實施例流程示意圖。如圖1所示,本 發(fā)明的系統(tǒng)數(shù)據(jù)初始化的方法包括
步驟S110,在系統(tǒng)內(nèi)部存儲器中預(yù)先存儲系統(tǒng)軟件的程序代碼校驗和CHECKSUM。具體 實現(xiàn)中,所述系統(tǒng)內(nèi)部存儲器可為EEPROM和FLASH任一種。具體實現(xiàn)中,步驟SllO可發(fā)生 在系統(tǒng)軟件首次設(shè)計之前,或者是系統(tǒng)軟件發(fā)生修改之前(比如升級之前)。步驟S111,在系統(tǒng)軟件設(shè)計階段,在僅包含程序代碼的系統(tǒng)軟件中加入所述系 統(tǒng)軟件的程序代碼的校驗和CHECKSUM。具體實現(xiàn)中,步驟Slll具體可包括在系統(tǒng)軟件 設(shè)計階段,通過一執(zhí)行腳本統(tǒng)計所述僅包含有程序代碼的系統(tǒng)軟件的程序代碼的校驗和 CHECKSUM;在所述僅包含程序代碼的系統(tǒng)軟件中加入所述系統(tǒng)軟件的程序代碼的校驗和 CHECKSUM。當(dāng)所述系統(tǒng)為Iinux系統(tǒng)時,所述執(zhí)行腳本為Python ;當(dāng)所述系統(tǒng)為windows系 統(tǒng)時,所述執(zhí)行腳本為vbscript。所述程序代碼校驗和CHECKSUM的獲得具體采用如下方 式在系統(tǒng)軟件的設(shè)計階段,將僅包含有程序代碼的系統(tǒng)軟件的程序代碼進(jìn)行累加,得到代 碼累加值valOl ;基于所述代碼累加值valOl計算得到所述程序代碼的校驗和CHECKSUM,計 算公式如下CHECKSUM=0x 10000- (val01%0xl0000),其中,0x10000為一系統(tǒng)內(nèi)存地址。比如,將僅包含有程序代碼的系統(tǒng)軟件命名為fVOl,將fVOl的程序代碼進(jìn)行累加后得到數(shù)值 valOl,而 CHECKSUM=0xl0000- (val01%0xl0000)。當(dāng)計算出 CHECKSUM 后,生成一個新系統(tǒng) 軟件,命名為fw02,將fwOl中的程序代碼全部寫入fw02中,并且在fw02的后端或其他位置 的某個地址寫入為fVOl計算的CHECKSUM,以在實現(xiàn)在僅包含程序代碼的fwOl中加入了為 fwOl計算的CHECKSUM。由于fwOl中程序代碼做的任何修改后,根據(jù)其計算的CHECKSUM均 會隨著發(fā)生變化,因此,本發(fā)明使用CHECKSUM來監(jiān)控系統(tǒng)軟件是否發(fā)生修改非??煽俊2襟ES112,在所述系統(tǒng)軟件加載入系統(tǒng)后的上電階段,判斷所述系統(tǒng)內(nèi)部存儲器 中存儲的所述系統(tǒng)軟件的程序代碼的校驗和CHECKSUM和所述系統(tǒng)軟件文件中所記錄的校 驗和CHECKSUM是否相同,如果判斷為是,執(zhí)行步驟Sl 13 ;如果判斷為否,執(zhí)行步驟S114。步驟S113,保留所述系統(tǒng)內(nèi)部存儲器中存儲的所述系統(tǒng)軟件的程序代碼的校驗和 CHECKSUM。此時表示,系統(tǒng)軟件較系統(tǒng)內(nèi)記錄的狀態(tài)未發(fā)生變化,比如未被升級或修改。步驟S114,將所述系統(tǒng)內(nèi)部存儲器中存儲的校驗和CHECKSUM替換為所述系統(tǒng)軟 件文件中記錄的校驗和CHECKSUM,并根據(jù)系統(tǒng)軟件自動對系統(tǒng)數(shù)據(jù)執(zhí)行初始化。此時表示, 系統(tǒng)軟件交系統(tǒng)內(nèi)記錄的狀態(tài)已經(jīng)發(fā)生變化,比如已經(jīng)被修改或者進(jìn)行了升級。此時系統(tǒng) 數(shù)據(jù)就需要根據(jù)系統(tǒng)軟件的變化進(jìn)行適應(yīng)性的變化,比如,將存儲升級前軟件的存儲器中 的數(shù)據(jù)進(jìn)行清零,以防止系統(tǒng)數(shù)據(jù)出錯,提高系統(tǒng)的可靠性。比如,具體實現(xiàn)中,在EEPROM或FLASH的地址adr02中存儲有系統(tǒng)軟件的程序代 碼校驗和CHECKSUM。則在步驟S112對系統(tǒng)上電后,比較所述adr02中存儲的CHECKSUM與系 統(tǒng)軟件中存儲的CHECKSUM是否相同,如果相同,則不對EEPROM或FLASH的地址adr02中存 儲的CHECKSUM進(jìn)行修改,如果不同,則將系統(tǒng)軟件中存儲的CHECKSUM寫入EEPROM或FLASH 的地址adr02中,以對EEPROM或FLASH中存儲的CHECKSUM進(jìn)行更新,并將EEPROM中與系 統(tǒng)軟件升級前相關(guān)的數(shù)據(jù)進(jìn)行清零,已完成EEPROM的初始化,保證系統(tǒng)數(shù)據(jù)的準(zhǔn)確性。具體實現(xiàn)中,本發(fā)明的系統(tǒng)數(shù)據(jù)初始化的方法可用于液晶電視領(lǐng)域,下面結(jié)合液 晶電視的上電過程對發(fā)明實施例進(jìn)一步進(jìn)行說明。具體參考圖2所示,在圖2中已經(jīng)預(yù)先在 液晶電視的EEPROM或FLASH中存儲了液晶電視系統(tǒng)軟件的CHECKSUM。因此,在步驟S210 當(dāng)給液晶電視供電后,在步驟S211系統(tǒng)會開始啟動,當(dāng)系統(tǒng)啟動后,在步驟S212時,系統(tǒng) 會讀取加載的系統(tǒng)軟件中的CHECKSUM,并將所述CHECKSUM與系統(tǒng)的EEPROM或FLASH中存 儲的液晶電視系統(tǒng)軟件的CHECKSUM進(jìn)行比較,當(dāng)二者相同時,進(jìn)入步驟S214,液晶電視系 統(tǒng)自動進(jìn)入待機狀態(tài),而當(dāng)二者不同時,進(jìn)入步驟S213,電視系統(tǒng)采用加載的系統(tǒng)軟件中的 CHECKSUM替換EEPROM或FLASH中存儲的CHECKSUM,并完成系統(tǒng)數(shù)據(jù)的初始化,然后進(jìn)入步 驟S214,電視系統(tǒng)自動進(jìn)入待機狀態(tài)。由前面的實施例可知本發(fā)明實施例在系統(tǒng)軟件加載到系統(tǒng)內(nèi)部之前,在系統(tǒng)內(nèi) 部的存儲器中預(yù)先存儲所述系統(tǒng)軟件的程序代碼校驗和CHECKSUM ;在系統(tǒng)軟件設(shè)計階段, 實時根據(jù)軟件的代碼數(shù)計算所述程序代碼的校驗和CHECKSUM,在此基礎(chǔ)上,當(dāng)系統(tǒng)軟件被 加載入系統(tǒng)后,系統(tǒng)判斷其內(nèi)部存儲的CHECKSUM和系統(tǒng)軟件帶有的CHECKSUM是否相同,當(dāng) 不同的時候?qū)⑺鱿到y(tǒng)內(nèi)部存儲器中存儲的校驗和CHECKSUM替換為所述系統(tǒng)軟件文件中 記錄的校驗和CHECKSUM,以此完成系統(tǒng)數(shù)據(jù)的初始化。本發(fā)明由于在程序設(shè)計階段實時統(tǒng) 計所述程序代碼的CHECKSUM,那么程序代碼發(fā)生的任何修改,系統(tǒng)文件中的CHECKSUM都會 跟著發(fā)生變化,所以系統(tǒng)文件中的CHECKSUM實時反應(yīng)了程序是否發(fā)生更新,基于更新后的系統(tǒng)文件中的CHECKSUM替換系統(tǒng)內(nèi)存儲器中的CHECKSUM當(dāng)然數(shù)據(jù)準(zhǔn)確,因此,采用本發(fā)明 之后,避免了系統(tǒng)數(shù)據(jù)錯誤,提高了系統(tǒng)的可靠性。 以上所揭露的僅為本發(fā)明較佳實施例而已,當(dāng)然不能以此來限定本發(fā)明之權(quán)利范 圍,因此依本發(fā)明權(quán)利要求所作的等同變化,仍屬本發(fā)明所涵蓋的范圍。
權(quán)利要求
1.一種系統(tǒng)數(shù)據(jù)初始化的方法,其特征在于,包括在系統(tǒng)內(nèi)部存儲器中預(yù)先存儲系統(tǒng)軟件的程序代碼的校驗和CHECKSUM ;在系統(tǒng)軟件設(shè)計階段,在僅包含程序代碼的系統(tǒng)軟件中加入所述系統(tǒng)軟件的程序代碼 的校驗和CHECKSUM ;在所述系統(tǒng)軟件加載入系統(tǒng)后的上電階段,判斷所述系統(tǒng)內(nèi)部存儲器中存儲的所述系 統(tǒng)軟件的程序代碼的校驗和CHECKSUM和所述系統(tǒng)軟件中所記錄的校驗和CHECKSUM是否相 同;如果判斷為是,保留所述系統(tǒng)內(nèi)部存儲器中存儲的所述系統(tǒng)軟件的程序代碼的校驗和 CHECKSUM ;如果判斷為否,將所述系統(tǒng)內(nèi)部存儲器中存儲的校驗和CHECKSUM替換為所述系統(tǒng)軟 件中記錄的校驗和CHECKSUM,并根據(jù)系統(tǒng)軟件自動對系統(tǒng)數(shù)據(jù)執(zhí)行初始化。
2.如權(quán)利要求1所述的系統(tǒng)數(shù)據(jù)初始化的方法,其特征在于,所述在系統(tǒng)軟件設(shè)計階 段,在僅包含程序代碼的系統(tǒng)軟件中加入所述系統(tǒng)軟件的程序代碼的校驗和CHECKSUM,具 體包括在系統(tǒng)軟件設(shè)計階段,通過一執(zhí)行腳本統(tǒng)計所述僅包含有程序代碼的系統(tǒng)軟件的程序 代碼的校驗和CHECKSUM ;在所述僅包含程序代碼的系統(tǒng)軟件中加入所述系統(tǒng)軟件的程序代碼的校驗和 CHECKSUM。
3.如權(quán)利要求2所述的系統(tǒng)數(shù)據(jù)初始化的方法,其特征在于,當(dāng)所述系統(tǒng)為Iinux系統(tǒng)時,所述執(zhí)行腳本為Python ;當(dāng)所述系統(tǒng)為windows系統(tǒng)時,所述執(zhí)行腳本為vbscript。
4.如權(quán)利要求2所述的系統(tǒng)數(shù)據(jù)初始化的方法,其特征在于,所述在系統(tǒng)軟件設(shè) 計階段,通過一執(zhí)行腳本統(tǒng)計所述僅包含有程序代碼的系統(tǒng)軟件的程序代碼的校驗和 CHECKSUM,具體包括在系統(tǒng)軟件的設(shè)計階段,將僅包含有程序代碼的系統(tǒng)軟件的程序代碼進(jìn)行累加,得到 代碼累加值valOl ;基于所述代碼累加值valOl計算得到所述程序代碼的校驗和CHECKSUM,計算公式如下CHECKSUM=0x 10000- (val01%0xl0000),其中,0x10000 為一系統(tǒng)內(nèi)存地址。
5.如權(quán)利要求1所述的系統(tǒng)數(shù)據(jù)初始化的方法,其特征在于,所述系統(tǒng)軟件為液晶電 視系統(tǒng)軟件。
6.如權(quán)利要求1所述的系統(tǒng)數(shù)據(jù)初始化的方法,其特征在于,所系統(tǒng)內(nèi)部存儲器為 EEPROM 禾口 FLASH 任一種。
全文摘要
本發(fā)明實施例公開了一種系統(tǒng)數(shù)據(jù)初始化的方法,包括在系統(tǒng)內(nèi)部存儲器中預(yù)先存儲系統(tǒng)軟件的程序代碼的校驗和CHECKSUM;在系統(tǒng)軟件設(shè)計階段,在僅包含程序代碼的系統(tǒng)軟件中加入所述系統(tǒng)軟件的CHECKSUM;在所述系統(tǒng)軟件加載入系統(tǒng)后的上電階段,判斷所述系統(tǒng)內(nèi)部存儲器中存儲的所述系統(tǒng)軟件的程序代碼的CHECKSUM和所述系統(tǒng)軟件中所記錄的CHECKSUM是否相同;如果判斷為是,保留所述系統(tǒng)內(nèi)部存儲器中存儲的CHECKSUM;如果判斷為否,將所述系統(tǒng)內(nèi)部存儲器中存儲的CHECKSUM替換為所述系統(tǒng)軟件中記錄CHECKSUM,并根據(jù)系統(tǒng)軟件自動對系統(tǒng)數(shù)據(jù)執(zhí)行初始化。實施本發(fā)明實施例,可由系統(tǒng)替代人工完成系統(tǒng)數(shù)據(jù)初始化,避免了系統(tǒng)數(shù)據(jù)錯誤,提高了系統(tǒng)可靠性。
文檔編號G06F11/10GK102147745SQ20111013512
公開日2011年8月10日 申請日期2011年5月24日 優(yōu)先權(quán)日2011年5月24日
發(fā)明者李忠杰 申請人:廣州視源電子科技有限公司