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

一種嵌入式系統(tǒng)中rom代碼的修改方法

文檔序號(hào):6521735閱讀:411來(lái)源:國(guó)知局
專(zhuān)利名稱(chēng):一種嵌入式系統(tǒng)中rom代碼的修改方法
技術(shù)領(lǐng)域
本發(fā)明涉及嵌入式系統(tǒng)中固件代碼的修改和升級(jí)技術(shù),特別是涉及一種ROM代碼的修改方法。
背景技術(shù)
嵌入式系統(tǒng)中固件(firmware)代碼的組成常常分為兩部分,一部分代碼編譯后被放進(jìn)ROM區(qū),另一部分代碼編譯后放進(jìn)RAM區(qū)。當(dāng)要對(duì)ROM區(qū)的代碼做某些修改時(shí)(打補(bǔ)丁),則必須把ROM區(qū)中的要修改的代碼及相關(guān)代碼重新編譯放進(jìn)RAM區(qū)中。這種修改方法的缺點(diǎn)是,由于嵌入式系統(tǒng)中的RAM通常比較少,修改ROM時(shí)必然占用較多的RAM空間。

發(fā)明內(nèi)容
本發(fā)明要解決的技術(shù)問(wèn)題是提供一種嵌入式系統(tǒng)中ROM代碼的修改方法,它可以減少修改ROM時(shí)所使用的RAM空間。
為解決上述技術(shù)問(wèn)題,本發(fā)明嵌入式系統(tǒng)中ROM代碼的修改方法是,在程序的總線上實(shí)現(xiàn)多個(gè)比較器,每一個(gè)比較器比較的是程序當(dāng)前的運(yùn)行地址和ROM空間中所要修改的某個(gè)函數(shù)的地址,當(dāng)某一個(gè)比較器輸出為真時(shí),系統(tǒng)則會(huì)停止當(dāng)前的程序運(yùn)行,并發(fā)送中斷給系統(tǒng),在中斷服務(wù)程序中,可以調(diào)用修改后的函數(shù)來(lái)取代ROM中的函數(shù)。
采用本發(fā)明的方法,當(dāng)某一個(gè)比較器輸出為真時(shí),說(shuō)明當(dāng)前ROM中所要修改的函數(shù)被調(diào)用了,在中斷服務(wù)程序中,可以調(diào)用修改后的函數(shù)來(lái)取代ROM中的函數(shù)。這樣可以有效減少修改ROM時(shí)所使用的RAM空間。


下面結(jié)合附圖與具體實(shí)施方式
對(duì)本發(fā)明作進(jìn)一步詳細(xì)的說(shuō)明。
圖1是傳統(tǒng)的對(duì)ROM代碼修改的方法示意圖;圖2是本發(fā)明采用的對(duì)ROM代碼修改的實(shí)現(xiàn)框圖。
具體實(shí)施例方式
嵌入式系統(tǒng)中的RAM空間通常比較少,本發(fā)明的目的是為了減少修改ROM時(shí)使用的RAM空間。
如圖一所示,設(shè)定,RAM的代碼區(qū)有主函數(shù)Main(),ROM代碼區(qū)有函數(shù)Func1(),F(xiàn)unc2(),F(xiàn)unc3()。現(xiàn)在假定函數(shù)Func3有問(wèn)題,需要打補(bǔ)丁。傳統(tǒng)的做法是把修改后(打過(guò)補(bǔ)丁后)的函數(shù)Func3_patch()從ROM區(qū)提出放到RAM區(qū),并且把直接和間接調(diào)用函數(shù)Func3的函數(shù)Func1和Func2都從ROM區(qū)提出放到RAM區(qū)。這樣必然會(huì)占用很多RAM存儲(chǔ)空間,使本來(lái)就較少的RAM空間,不能發(fā)揮其應(yīng)有的資源作用。
在本發(fā)明中,在程序的總線上實(shí)現(xiàn)了多個(gè)比較器,每一個(gè)比較器比較的是程序當(dāng)前的運(yùn)行地址和ROM空間中所要修改的某個(gè)函數(shù)的地址。
如圖2所示,其中地址比較器不斷比較從RAM或ROM讀取的當(dāng)前代碼運(yùn)行地址Paddr是否等于Func3。當(dāng)它輸出為真時(shí),說(shuō)明當(dāng)前ROM中Func3函數(shù)被調(diào)用了,系統(tǒng)則會(huì)停止當(dāng)前的程序運(yùn)行,并發(fā)送中斷給系統(tǒng)。在中斷服務(wù)程序中,可以調(diào)用修改后的Func3_patch函數(shù)來(lái)取代ROM中的Func3函數(shù)。
權(quán)利要求
1.一種嵌入式系統(tǒng)中ROM代碼的修改方法,其特征在于在程序的總線上實(shí)現(xiàn)多個(gè)比較器,每一個(gè)比較器比較的是程序當(dāng)前的運(yùn)行地址和ROM空間中所要修改的某個(gè)函數(shù)的地址,當(dāng)某一個(gè)比較器輸出為真時(shí),系統(tǒng)則會(huì)停止當(dāng)前的程序運(yùn)行,并發(fā)送中斷給系統(tǒng),在中斷服務(wù)程序中,可以調(diào)用修改后的函數(shù)來(lái)取代ROM中的函數(shù)。
全文摘要
本發(fā)明公開(kāi)了一種嵌入式系統(tǒng)中ROM代碼的修改方法,在程序的總線上實(shí)現(xiàn)多個(gè)比較器,當(dāng)某一個(gè)比較器輸出為真時(shí),說(shuō)明當(dāng)前ROM中所要修改的函數(shù)被調(diào)用了,在中斷服務(wù)程序中,可以調(diào)用修改后的函數(shù)來(lái)取代ROM中的函數(shù)。本發(fā)明可以有效減少修改ROM代碼時(shí)所使用的RAM空間。
文檔編號(hào)G06F11/36GK1862509SQ20051002570
公開(kāi)日2006年11月15日 申請(qǐng)日期2005年5月10日 優(yōu)先權(quán)日2005年5月10日
發(fā)明者謝非, 姚晶晶, 田鷹, 趙彤 申請(qǐng)人:展訊通信(上海)有限公司
網(wǎng)友詢(xún)問(wèn)留言 已有0條留言
  • 還沒(méi)有人留言評(píng)論。精彩留言會(huì)獲得點(diǎn)贊!
1