欧美在线观看视频网站,亚洲熟妇色自偷自拍另类,啪啪伊人网,中文字幕第13亚洲另类,中文成人久久久久影院免费观看 ,精品人妻人人做人人爽,亚洲a视频

一種程序調(diào)試方法及系統(tǒng)的制作方法

文檔序號(hào):6339070閱讀:630來(lái)源:國(guó)知局
專(zhuān)利名稱(chēng):一種程序調(diào)試方法及系統(tǒng)的制作方法
技術(shù)領(lǐng)域
本發(fā)明涉及軟件測(cè)試領(lǐng)域,特別是涉及一種程序調(diào)試方法及系統(tǒng)。
背景技術(shù)
伴隨著電子技術(shù)的發(fā)展,眾多的CPU芯片被研發(fā)出來(lái)。一種CPU芯片的研制,從設(shè)計(jì)、驗(yàn)證、流片到量產(chǎn)的過(guò)程中往往需要一個(gè)比較長(zhǎng)的周期。與此同時(shí),針對(duì)該CPU芯片的程序也要同步進(jìn)行開(kāi)發(fā)。在CPU芯片尚未研制出成品的情況下,通常需要依賴(lài)模擬器對(duì)CPU芯片進(jìn)行功能和性能的模擬,此模擬器必須支持該CPU芯片的體系結(jié)構(gòu),即體系結(jié)構(gòu)模擬器。體系結(jié)構(gòu)模擬器使用高級(jí)語(yǔ)言將新的體系結(jié)構(gòu)設(shè)計(jì)實(shí)現(xiàn)為一個(gè)虛擬系統(tǒng),在已有的計(jì)算機(jī)上運(yùn)行,對(duì)所研發(fā)CPU芯片的程序進(jìn)行模擬,從而對(duì)此程序進(jìn)行調(diào)試,并對(duì)程序的正確性和性能進(jìn)行分析和評(píng)估。目前,國(guó)際上最為流行的體系結(jié)構(gòu)模擬器是Simpl必calar,它是一個(gè)集成了 ARM和Alpha21264體系結(jié)構(gòu)的模擬器。我國(guó)中科院也在研發(fā)龍芯2號(hào)微處理器過(guò)程中研制了 Sim-Godsim體系結(jié)構(gòu)模擬器,能夠支持龍芯指令集的模擬。但是,因?yàn)轶w系結(jié)構(gòu)層次上的計(jì)算機(jī)系統(tǒng)很復(fù)雜,如果通過(guò)體系結(jié)構(gòu)模擬器來(lái)模擬諸多細(xì)節(jié),處理速度會(huì)非常慢。另外,由于模擬器本身的復(fù)雜性,在運(yùn)行過(guò)程中不可避免的會(huì)出現(xiàn)諸多問(wèn)題,所以體系結(jié)構(gòu)軟件模擬器的可靠性也不高。

發(fā)明內(nèi)容
為解決上述技術(shù)問(wèn)題,本發(fā)明實(shí)施例提供一種程序調(diào)試方法及系統(tǒng),以實(shí)現(xiàn)程序調(diào)試的快捷和高可靠性,技術(shù)方案如下一種程序調(diào)試方法,包括讀入待調(diào)試的第一平臺(tái)程序;對(duì)所述第一平臺(tái)程序進(jìn)行反匯編,生成第一平臺(tái)指令;將所述第一平臺(tái)指令逐條跨平臺(tái)等價(jià)轉(zhuǎn)換為第二平臺(tái)指令,所述第二平臺(tái)指令為標(biāo)準(zhǔn)調(diào)試器能夠識(shí)別的指令;對(duì)所述第二平臺(tái)指令進(jìn)行編譯,生成第二平臺(tái)程序;將所述第二平臺(tái)程序輸出到標(biāo)準(zhǔn)調(diào)試器進(jìn)行調(diào)試。優(yōu)選的,所述將第一平臺(tái)指令逐條跨平臺(tái)等價(jià)轉(zhuǎn)換為第二平臺(tái)指令,包括逐條判斷所述反匯編生成的第一平臺(tái)指令與所述第二平臺(tái)指令是否為指令集架構(gòu)兼容指令,如果是,則執(zhí)行一對(duì)一等價(jià)轉(zhuǎn)換;否則,執(zhí)行一對(duì)多等價(jià)轉(zhuǎn)換;其中,所述一對(duì)一等價(jià)轉(zhuǎn)換為將一個(gè)第一平臺(tái)指令等價(jià)轉(zhuǎn)換為一個(gè)第二平臺(tái)指令;所述一對(duì)多等價(jià)轉(zhuǎn)換為將一個(gè)第一平臺(tái)指令等價(jià)轉(zhuǎn)換為多個(gè)第二平臺(tái)指令。優(yōu)選的,所述執(zhí)行一對(duì)多等價(jià)轉(zhuǎn)換,包括當(dāng)預(yù)留的指令空間的空余空間大于一對(duì)多等價(jià)轉(zhuǎn)換所需空間時(shí),執(zhí)行所述一對(duì)多等價(jià)轉(zhuǎn)換。優(yōu)選的,在所述一對(duì)多等價(jià)轉(zhuǎn)換過(guò)程中,還包括實(shí)時(shí)判斷所述一對(duì)多等價(jià)轉(zhuǎn)換所需的空間是否超過(guò)預(yù)留的指令空間,如果是,則報(bào)錯(cuò)并停止指令轉(zhuǎn)換。優(yōu)選的,當(dāng)所述一對(duì)多等價(jià)轉(zhuǎn)換所需的空間超過(guò)預(yù)留的指令空間并引起報(bào)錯(cuò)和指令轉(zhuǎn)換停止時(shí),增大所述預(yù)留的指令空間的大小,繼續(xù)執(zhí)行將所述第一平臺(tái)指令跨平臺(tái)轉(zhuǎn)換為第二平臺(tái)指令的操作。相應(yīng)于本發(fā)明提供的一種程序調(diào)試方法,本發(fā)明還同時(shí)提供了一種程序調(diào)試系統(tǒng)一種程序調(diào)試系統(tǒng),包括標(biāo)準(zhǔn)調(diào)試器和程序調(diào)試裝置,所述程序調(diào)試裝置包括程序讀入模塊、反匯編模塊、跨平臺(tái)指令轉(zhuǎn)換模塊、編譯模塊,程序輸出模塊;所述程序讀入模塊,用于讀入待調(diào)試的第一平臺(tái)程序;所述反匯編模塊,用于對(duì)所述第一平臺(tái)程序進(jìn)行反匯編,生成第一平臺(tái)指令;所述跨平臺(tái)指令轉(zhuǎn)換模塊,用于將所述第一平臺(tái)指令逐條跨平臺(tái)等價(jià)轉(zhuǎn)換為第二平臺(tái)指令,所述第二平臺(tái)指令為標(biāo)準(zhǔn)調(diào)試器能夠識(shí)別的指令;所述編譯模塊,用于對(duì)所述第二平臺(tái)指令進(jìn)行編譯,生成第二平臺(tái)程序;所述程序輸出模塊,用于將所述第二平臺(tái)程序輸出到標(biāo)準(zhǔn)調(diào)試器進(jìn)行調(diào)試。優(yōu)選的,所述跨平臺(tái)指令轉(zhuǎn)換模塊包括指令集構(gòu)架兼容指令判斷子模塊、一對(duì)一等價(jià)轉(zhuǎn)換子模塊和一對(duì)多等價(jià)轉(zhuǎn)換子模塊;所述指令集構(gòu)架兼容指令判斷子模塊,用于逐條判斷反匯編生成的第一平臺(tái)指令與第二平臺(tái)指令是否為指令集架構(gòu)兼容指令;所述一對(duì)一等價(jià)轉(zhuǎn)換子模塊,用于對(duì)指令集構(gòu)架兼容指令進(jìn)行一對(duì)一等價(jià)轉(zhuǎn)換, 其中,所述一對(duì)一等價(jià)轉(zhuǎn)換為將一個(gè)第一平臺(tái)指令等價(jià)轉(zhuǎn)換為一個(gè)第二平臺(tái)指令;所述一對(duì)多等價(jià)轉(zhuǎn)換子模塊,用于對(duì)非指令集構(gòu)架兼容指令進(jìn)行一對(duì)多等價(jià)轉(zhuǎn)換,其中,所述一對(duì)多等價(jià)轉(zhuǎn)換為將一個(gè)第一平臺(tái)指令等價(jià)轉(zhuǎn)換為多個(gè)第二平臺(tái)指令,所述多個(gè)第二平臺(tái)指令存儲(chǔ)在預(yù)留的指令空間中。優(yōu)選的,當(dāng)預(yù)留的指令空間的空余空間大于一對(duì)多等價(jià)轉(zhuǎn)換所需空間時(shí),執(zhí)行所述一對(duì)多等價(jià)轉(zhuǎn)換。優(yōu)選的,所述跨平臺(tái)指令轉(zhuǎn)換模塊,還包括越界判斷子模塊和指令轉(zhuǎn)換停止子模塊;所述越界判斷子模塊用于實(shí)時(shí)判斷所述一對(duì)多等價(jià)轉(zhuǎn)換所需的空間是否超過(guò)預(yù)留的指令空間;所述指令轉(zhuǎn)換停止子模塊,用于在所述一對(duì)多等價(jià)轉(zhuǎn)換所需的空間超過(guò)預(yù)留的指令空間時(shí),進(jìn)行報(bào)錯(cuò)并停止指令轉(zhuǎn)換。優(yōu)選的,所述跨平臺(tái)指令轉(zhuǎn)換模塊,還包括空間調(diào)整模塊,用于當(dāng)所述一對(duì)多等價(jià)轉(zhuǎn)換所需的空間超過(guò)預(yù)留的指令空間并引起報(bào)錯(cuò)和指令轉(zhuǎn)換停止時(shí),增大所述預(yù)留的指令空間的大小。通過(guò)應(yīng)用以上技術(shù)方案,本發(fā)明的方法及系統(tǒng)能夠?qū)⑨槍?duì)尚未研制成功的CPU芯片的程序轉(zhuǎn)換為針對(duì)已研制成功并可靠性高的CPU芯片體系結(jié)構(gòu)上的程序,并使用標(biāo)準(zhǔn)的調(diào)試器進(jìn)行調(diào)試,對(duì)程序的正確性和性能進(jìn)行分析和評(píng)估,從而避免了使用體系結(jié)構(gòu)模擬器進(jìn)行模擬所帶來(lái)的處理速度慢、可靠性低的缺點(diǎn)。由于使用了已有的硬件資源和標(biāo)準(zhǔn)的調(diào)試器,所以處理速度較快,并且可靠性較高。


為了更清楚地說(shuō)明本發(fā)明實(shí)施例或現(xiàn)有技術(shù)中的技術(shù)方案,下面將對(duì)實(shí)施例或現(xiàn)有技術(shù)描述中所需要使用的附圖作簡(jiǎn)單地介紹,顯而易見(jiàn)地,下面描述中的附圖僅僅是本發(fā)明中記載的一些實(shí)施例,對(duì)于本領(lǐng)域普通技術(shù)人員來(lái)講,還可以根據(jù)這些附圖獲得其他的附圖。圖1為本發(fā)明實(shí)施例提供的一種程序調(diào)試方法的流程圖;圖2為本發(fā)明實(shí)施例提供的另一種程序調(diào)試方法的流程圖;圖3為本發(fā)明實(shí)施例提供的另一種程序調(diào)試方法的流程圖;圖4為本發(fā)明實(shí)施例提供的一種程序調(diào)試系統(tǒng)的結(jié)構(gòu)示意圖;圖5為本發(fā)明實(shí)施例提供的跨平臺(tái)指令轉(zhuǎn)換模塊的結(jié)構(gòu)示意圖;圖6為本發(fā)明實(shí)施例提供的另一跨平臺(tái)指令轉(zhuǎn)換模塊的結(jié)構(gòu)示意圖。
具體實(shí)施例方式為了使本技術(shù)領(lǐng)域的人員更好地理解本發(fā)明中的技術(shù)方案,下面將結(jié)合本發(fā)明實(shí)施例中的附圖,對(duì)本發(fā)明實(shí)施例中的技術(shù)方案進(jìn)行清楚、完整地描述,顯然,所描述的實(shí)施例僅僅是本發(fā)明一部分實(shí)施例,而不是全部的實(shí)施例?;诒景l(fā)明中的實(shí)施例,本領(lǐng)域普通技術(shù)人員所獲得的所有其他實(shí)施例,都應(yīng)當(dāng)屬于本發(fā)明保護(hù)的范圍。圖1所示為本發(fā)明實(shí)施例提供的一種程序調(diào)試方法的流程圖。如圖1所示,本發(fā)明實(shí)施例提供的一種程序調(diào)試方法包括S101、讀入待調(diào)試的第一平臺(tái)程序;本領(lǐng)域技術(shù)人員可以理解的是,第一平臺(tái)程序可以為a.out格式可執(zhí)行文件。 a. out格式文件為一種匯編和鏈接輸出(Assembly & linker editor output)的目標(biāo)格式文件,它由一個(gè)文件頭和隨后的代碼部分(Text section,也稱(chēng)文本段)、已初始化數(shù)據(jù)部分、重定位信息部分等組成。其中,所述第一平臺(tái)程序?yàn)樯形囱兄瞥晒Φ腃PU芯片的程序。S102、對(duì)所述第一平臺(tái)程序進(jìn)行反匯編,生成第一平臺(tái)指令;其中,對(duì)所述第一平臺(tái)程序進(jìn)行反匯編可以為對(duì)a. out格式文件的文本段進(jìn)行反匯編。反匯編即將可執(zhí)行文件反編譯還原成匯編語(yǔ)言或其他高級(jí)語(yǔ)言,執(zhí)行效果相同。S103、將第一平臺(tái)指令逐條跨平臺(tái)等價(jià)轉(zhuǎn)換為第二平臺(tái)指令,所述第二平臺(tái)指令為標(biāo)準(zhǔn)調(diào)試器能夠識(shí)別的指令;本領(lǐng)域技術(shù)人員可以理解的是,等價(jià)轉(zhuǎn)換即為執(zhí)行效果相同的轉(zhuǎn)換。當(dāng)然,為解決跨平臺(tái)等價(jià)轉(zhuǎn)換可能帶來(lái)的轉(zhuǎn)換后的指令比轉(zhuǎn)換前的指令需要更多指令空間的問(wèn)題,可以在執(zhí)行步驟SlOl之前為第一平臺(tái)指令等價(jià)轉(zhuǎn)換為第二平臺(tái)指令預(yù)留一定數(shù)量的指令空間。本領(lǐng)域技術(shù)人員可以理解的是,預(yù)留指令空間的大小可以根據(jù)實(shí)際經(jīng)驗(yàn)設(shè)定,例如,預(yù)留IM的指令空間能基本滿(mǎn)足大部分指令轉(zhuǎn)換的需要,那就可以預(yù)留IM的指令空間。 需要說(shuō)明的是,為了滿(mǎn)足更多的指令轉(zhuǎn)換的需要可以適當(dāng)增大預(yù)留指令空間的大小,但是如果預(yù)留指令空間過(guò)大,而大量空間被占用的機(jī)會(huì)又很少,這樣會(huì)造成系統(tǒng)資源利用率的降低。為了能更合理、高效的利用空間資源,本發(fā)明實(shí)施例還可以增加對(duì)預(yù)留空間是否滿(mǎn)足指令轉(zhuǎn)換需要的步驟,當(dāng)不能滿(mǎn)足指令轉(zhuǎn)換需要時(shí),增大預(yù)留空間,然后繼續(xù)執(zhí)行將所述將第一平臺(tái)指令跨平臺(tái)轉(zhuǎn)換為第二平臺(tái)指令的操作。將所述第一平臺(tái)指令跨平臺(tái)等價(jià)轉(zhuǎn)換為第二平臺(tái)指令可以具體為逐條判斷所述反匯編生成的第一平臺(tái)指令與所述第二平臺(tái)指令是否為指令集架構(gòu)(ISA,Instruction Set Architecture)兼容指令,如果是,則執(zhí)行一對(duì)一等價(jià)轉(zhuǎn)換;否貝U,執(zhí)行一對(duì)多等價(jià)轉(zhuǎn)換。其中,所述一對(duì)一等價(jià)轉(zhuǎn)換為將一個(gè)第一平臺(tái)指令等價(jià)轉(zhuǎn)換為一個(gè)第二平臺(tái)指令;所述一對(duì)多等價(jià)轉(zhuǎn)換為將一個(gè)第一平臺(tái)指令等價(jià)轉(zhuǎn)換為多個(gè)第二平臺(tái)指令。為了方便理解,現(xiàn)舉例說(shuō)明本領(lǐng)域技術(shù)人員可以理解的是,符號(hào)/**/中的內(nèi)容為各指令的中文釋義。假設(shè)第一平臺(tái)程序反編譯為以下5條指令1. Iaddr rl,32,r2/*取地址指令,以寄存器rl內(nèi)容為基地址,加上32字節(jié)的值存放到寄存器r2中*/2. addl r2, r3, r4/* 普通加法,r2+r3 的結(jié)果存入 r4*/3. Idmem rl,0,r4/*訪(fǎng)存指令,取以rl寄存器內(nèi)容為基地址,偏移為0字節(jié)的內(nèi)存內(nèi)容存放到寄存器r4中*/4. vadd4r4,r5,r6/*寬度為4個(gè)整數(shù)類(lèi)型的向量加法,向量寄存器r4和r5相加, 結(jié)果存放到r6*/5. stmem r6,24,r2/*寬度為4個(gè)整數(shù)類(lèi)型的向量存儲(chǔ),將向量寄存器r6的內(nèi)容存放到以r2為基地址,偏移為M字節(jié)的內(nèi)存中*/其中,第1、2、3條為ISA兼容指令,第4、5條為非ISA兼容指令,則將這5條指令跨平臺(tái)等價(jià)轉(zhuǎn)換為以下的指令序列1. Idi rl,32,r2/*取地址指令,以寄存器rl內(nèi)容為基地址,加上32字節(jié)的值存放到寄存器r2中*/2. addw r2, r3, r4/* 普通加法,r2+r3 的結(jié)果存入 r4*/3. Idw rl,0,r4/*訪(fǎng)存指令,取以rl寄存器內(nèi)容為基地址,偏移為0字節(jié)的內(nèi)存內(nèi)容存放到寄存器r4中*/4. br offset4Mr是一條跳轉(zhuǎn)指令,該指令將控制流跳轉(zhuǎn)到指令預(yù)留緩沖區(qū)的 offset4 位置 */5. br offset5Mr是一條跳轉(zhuǎn)指令,該指令將控制流跳轉(zhuǎn)到指令預(yù)留緩沖區(qū)的 offset5 位置 */
7
...offset 4 4. 1. addwl2r4, r5,r6/*寬度為2個(gè)整數(shù)類(lèi)型的短向量加法*/4. 2. addwh2r4, r5,r6/*寬度為2個(gè)整數(shù)類(lèi)型的短向量加法*/4. 3. mergec r6, r6, r6/*向量寄存器內(nèi)數(shù)據(jù)整理*/4. 4. return 5/*返回指令,控制流返回到正文段5的位置*/offset 5 5. 1. stwh2r6, 24,r2/*寬度為2個(gè)整數(shù)類(lèi)型的存儲(chǔ)指令*/5. 2. stwl2r6, 20,r2/*寬度為2個(gè)整數(shù)類(lèi)型的存儲(chǔ)指令*/5. 3return 6/*返回指令,控制流返回到正文段6的位置*/其中第1、2、3條指令進(jìn)行了一對(duì)一等價(jià)轉(zhuǎn)換,而第4、5條指令則分別跳轉(zhuǎn)到預(yù)留指令空間中offset4和offset5的位置,并分別轉(zhuǎn)換成了 4. 1,4.2,4.3,4.4四條指令和 5. 1,5. 2、5. 3三條指令。需要說(shuō)明的是,以上舉例僅為方便理解,不對(duì)本發(fā)明做任何限定。其中,標(biāo)準(zhǔn)調(diào)試器可以為標(biāo)準(zhǔn)的⑶B調(diào)試器。⑶B是GNU開(kāi)源組織發(fā)布的一個(gè)強(qiáng)大的UNIX下的程序調(diào)試工具,被廣泛使用。與VC、BCB等圖形界面調(diào)試工具不同的是,GDB是一種命令行調(diào)試工具。命令行可以形成執(zhí)行序列,形成腳本。命令行軟件的優(yōu)點(diǎn)是可以使命令行集成在一起,使用簡(jiǎn)單的已有的工具命令,形成一個(gè)強(qiáng)大的功能。當(dāng)然,也以采用其他形式的的標(biāo)準(zhǔn)調(diào)試器,本發(fā)明實(shí)施例對(duì)此并不進(jìn)行限定。S104、對(duì)所述第二平臺(tái)指令進(jìn)行編譯,生成第二平臺(tái)程序;其中,生成的第二平臺(tái)程序可以寫(xiě)入新的第二平臺(tái)格式的可執(zhí)行文件,第二平臺(tái)程序?yàn)橐蜒兄瞥晒Σ⒖煽啃愿叩?CPU芯片體系結(jié)構(gòu)上的程序。S105、將所述第二平臺(tái)程序輸出到標(biāo)準(zhǔn)調(diào)試器進(jìn)行調(diào)試。通過(guò)應(yīng)用以上技術(shù)方案,本發(fā)明的方法能夠?qū)⑨槍?duì)尚未研制成功的CPU芯片的程序轉(zhuǎn)換為針對(duì)已研制成功并可靠性高的CPU芯片體系結(jié)構(gòu)上的程序,并使用標(biāo)準(zhǔn)的調(diào)試器進(jìn)行調(diào)試,對(duì)程序的正確性和性能進(jìn)行分析和評(píng)估。從而避免了使用體系結(jié)構(gòu)模擬器進(jìn)行模擬所帶來(lái)的處理速度慢、可靠性低的缺點(diǎn)。由于使用了已有的硬件資源和標(biāo)準(zhǔn)的調(diào)試器, 所以處理速度較快,并且可靠性較高。圖2所示為本發(fā)明實(shí)施例提供的另一種程序調(diào)試方法的流程圖。如圖2所示,本實(shí)施例提供的方法包括S201、讀入待調(diào)試的第一平臺(tái)程序;本領(lǐng)域技術(shù)人員可以理解的是,第一平臺(tái)程序可以為a.out格式可執(zhí)行文件。 a. out格式文件為一種匯編和鏈接輸出(Assembly & linker editor output)的目標(biāo)格式文件,它由一個(gè)文件頭和隨后的代碼部分(Text section,也稱(chēng)文本段)、已初始化數(shù)據(jù)部分、重定位信息部分等組成。其中,所述第一平臺(tái)程序?yàn)樯形囱兄瞥晒Φ腃PU芯片的程序。S202、對(duì)第一平臺(tái)程序進(jìn)行反匯編,生成第二平臺(tái)指令;其中,對(duì)所述第一平臺(tái)程序進(jìn)行反匯編可以為對(duì)a. out格式文件的文本段進(jìn)行反匯編。
反匯編即將可執(zhí)行文件反編譯還原成匯編語(yǔ)言或其他高級(jí)語(yǔ)言,執(zhí)行效果相同。S203、為第一平臺(tái)指令等價(jià)轉(zhuǎn)換為第二平臺(tái)指令預(yù)留一定數(shù)量的指令空間;本領(lǐng)域技術(shù)人員可以理解的是,預(yù)留指令空間的大小可以根據(jù)實(shí)際經(jīng)驗(yàn)設(shè)定,例如,預(yù)留IM的指令空間能基本滿(mǎn)足大部分指令轉(zhuǎn)換的需要,那就可以預(yù)留IM的指令空間。 需要說(shuō)明的是,為了滿(mǎn)足更多的指令轉(zhuǎn)換的需要可以適當(dāng)增大預(yù)留指令空間的大小,但是如果預(yù)留指令空間過(guò)大,而大量空間被占用的機(jī)會(huì)又很少,這樣會(huì)造成系統(tǒng)資源利用率的降低。S204、逐條判斷反匯編生成的第一平臺(tái)指令與第二平臺(tái)指令是否為ISA兼容指令,如果是,則執(zhí)行步驟S205,否則執(zhí)行步驟S206 ;S205、進(jìn)行一對(duì)一等價(jià)轉(zhuǎn)換,執(zhí)行步驟S208 ;其中,一對(duì)一等價(jià)轉(zhuǎn)換為將一個(gè)第一平臺(tái)指令等價(jià)轉(zhuǎn)換為一個(gè)第二平臺(tái)指令,轉(zhuǎn)換過(guò)程占用的空間相同。S206、進(jìn)行一對(duì)多等價(jià)轉(zhuǎn)換;其中,所述一對(duì)多等價(jià)轉(zhuǎn)換為將一個(gè)第一平臺(tái)指令等價(jià)轉(zhuǎn)換為多個(gè)第二平臺(tái)指令,所述多個(gè)第二平臺(tái)指令存儲(chǔ)在預(yù)留的指令空間中。因?yàn)檗D(zhuǎn)換后的第二平臺(tái)指令多于第一平臺(tái)指令,因而需要更多的指令空間。S207、實(shí)時(shí)判斷所述一對(duì)多等價(jià)轉(zhuǎn)換所需的空間是否超過(guò)預(yù)留的指令空間的空余空間,如果是,則執(zhí)行步驟S211,否則,執(zhí)行步驟S208 ;在實(shí)際應(yīng)用中,預(yù)留指令空間可以設(shè)置成一個(gè)能滿(mǎn)足大部分程序調(diào)試的大小,但為了節(jié)省指令空間,不宜設(shè)置的過(guò)大。所以可以進(jìn)行所轉(zhuǎn)換指令所需空間是否超過(guò)預(yù)留的指令空間的判斷。需要說(shuō)明的是,在指令空間資源充足或者不需要考慮節(jié)省指令空間問(wèn)題的時(shí)候, 也可以將指令空間設(shè)置為一個(gè)較大的數(shù)值,這種情況下,可以不需要執(zhí)行所述一對(duì)多等價(jià)轉(zhuǎn)換所需的空間是否超過(guò)預(yù)留的指令空間空余空間的判斷。S208、判斷第一平臺(tái)指令是否全部轉(zhuǎn)換完畢,如果是,則執(zhí)行步驟S209,否則,執(zhí)行步驟S204 ;S209、將第二平臺(tái)指令進(jìn)行編譯,生成第二平臺(tái)程序;S210、將所述第二平臺(tái)程序輸出到標(biāo)準(zhǔn)調(diào)試器進(jìn)行調(diào)試;S211、報(bào)錯(cuò)并停止指令轉(zhuǎn)換。在實(shí)際應(yīng)用中,報(bào)錯(cuò)可以為顯示“空間不足! ”內(nèi)容的報(bào)警。需要說(shuō)明的是,當(dāng)所述一對(duì)多等價(jià)轉(zhuǎn)換所需的空間超過(guò)預(yù)留的指令空間并引起報(bào)錯(cuò)和指令轉(zhuǎn)換停止時(shí),可以增大所述預(yù)留的指令空間的大小,使空余空間變大,繼續(xù)執(zhí)行將所述將第一平臺(tái)指令跨平臺(tái)轉(zhuǎn)換為第二平臺(tái)指令的操作,以確保跨平臺(tái)轉(zhuǎn)換的完成。圖3所示為本發(fā)明實(shí)施例提供的另一種程序調(diào)試方法的流程圖,包括以下步驟S301、讀入待調(diào)試的第一平臺(tái)程序;S302、對(duì)第一平臺(tái)程序進(jìn)行反匯編,生成第二平臺(tái)指令;S303、為第一平臺(tái)指令預(yù)留一定數(shù)量的指令空間;S304、逐條判斷反匯編生成的第一平臺(tái)指令與第二平臺(tái)指令是否為ISA兼容指令,如果是,則執(zhí)行步驟S305,否則執(zhí)行步驟S306 ;
S305、進(jìn)行一對(duì)一等價(jià)轉(zhuǎn)換,執(zhí)行步驟S308 ;其中,一對(duì)一等價(jià)轉(zhuǎn)換為將一個(gè)第一平臺(tái)指令等價(jià)轉(zhuǎn)換為一個(gè)第二平臺(tái)指令,轉(zhuǎn)換過(guò)程占用的空間相同。S306、進(jìn)行一對(duì)多等價(jià)轉(zhuǎn)換;S307、實(shí)時(shí)判斷所述一對(duì)多等價(jià)轉(zhuǎn)換所需的空間是否超過(guò)預(yù)留的指令空間,如果是,則執(zhí)行步驟S311,否則,執(zhí)行步驟S308 ;S308、判斷第一平臺(tái)指令是否全部轉(zhuǎn)換完畢,如果是,則執(zhí)行步驟S309,否則,執(zhí)行步驟S304 ;S309、將第二平臺(tái)指令進(jìn)行編譯,生成第二平臺(tái)程序;S310、將所述第二平臺(tái)程序輸出到標(biāo)準(zhǔn)調(diào)試器進(jìn)行調(diào)試;S311、報(bào)錯(cuò)并停止指令轉(zhuǎn)換;S312、增大所述預(yù)留的指令空間的大小,執(zhí)行步驟S306。由于預(yù)留空間過(guò)大會(huì)導(dǎo)致系統(tǒng)資源利用率的降低,所以本方法只需為第一平臺(tái)指令等價(jià)轉(zhuǎn)換為第二平臺(tái)指令預(yù)留適量的、能滿(mǎn)足大部分指令轉(zhuǎn)換需要的指令空間。對(duì)于少數(shù)情況下,預(yù)留的指令空間不能滿(mǎn)足指令轉(zhuǎn)換需要,本方法中的S312步驟可以對(duì)預(yù)留空間大小進(jìn)行修改,增大預(yù)留指令空間的大小,進(jìn)而滿(mǎn)足指令轉(zhuǎn)換的需要。本領(lǐng)域技術(shù)人員可以理解的是,本方法能夠更高效的利用空間資源。相應(yīng)于上面的方法實(shí)施例,本發(fā)明還提供一種程序調(diào)試系統(tǒng)。圖4所示為本發(fā)明實(shí)施例提供的一種程序調(diào)試系統(tǒng)的結(jié)構(gòu)示意圖。如圖4所示, 本實(shí)施例提供程序調(diào)試系統(tǒng)包括程序調(diào)試裝置100和標(biāo)準(zhǔn)調(diào)試器200,所述程序調(diào)試裝置100包括程序讀入模塊110、反匯編模塊120、跨平臺(tái)指令轉(zhuǎn)換模塊130、編譯模塊140,程序輸出模塊150 ;所述程序讀入模塊110,用于讀入待調(diào)試的第一平臺(tái)程序;其中,所述第一平臺(tái)程序?yàn)樯形囱兄瞥晒Φ腃PU芯片的程序。所述反匯編模塊120,用于對(duì)所述第一平臺(tái)程序進(jìn)行反匯編,生成第一平臺(tái)指令;反匯編即將可執(zhí)行文件反編譯還原成匯編語(yǔ)言或其他高級(jí)語(yǔ)言,執(zhí)行效果相同。所述跨平臺(tái)指令轉(zhuǎn)換模塊130,用于將所述第一平臺(tái)指令逐條跨平臺(tái)等價(jià)轉(zhuǎn)換為第二平臺(tái)指令,所述第二平臺(tái)指令為標(biāo)準(zhǔn)調(diào)試器200能夠識(shí)別的指令;本領(lǐng)域技術(shù)人員可以理解的是,等價(jià)轉(zhuǎn)換即為執(zhí)行效果相同的轉(zhuǎn)換。當(dāng)然,為解決跨平臺(tái)等價(jià)轉(zhuǎn)換可能帶來(lái)的轉(zhuǎn)換后的指令比轉(zhuǎn)換前的指令需要更多指令空間的問(wèn)題,可以為第一平臺(tái)指令等價(jià)轉(zhuǎn)換為第二平臺(tái)指令預(yù)留一定數(shù)量的指令空間。將所述第一平臺(tái)指令跨平臺(tái)等價(jià)轉(zhuǎn)換為第二平臺(tái)指令可以具體為逐條判斷所述反匯編生成的第一平臺(tái)指令與所述第二平臺(tái)指令是否為ISA兼容指令,如果是,則執(zhí)行一對(duì)一等價(jià)轉(zhuǎn)換;否則,執(zhí)行一對(duì)多等價(jià)轉(zhuǎn)換。其中,所述一對(duì)一等價(jià)轉(zhuǎn)換為將一個(gè)第一平臺(tái)指令等價(jià)轉(zhuǎn)換為一個(gè)第二平臺(tái)指令;所述一對(duì)多等價(jià)轉(zhuǎn)換為將一個(gè)第一平臺(tái)指令等價(jià)轉(zhuǎn)換為多個(gè)第二平臺(tái)指令,所
10述多個(gè)第二平臺(tái)指令存儲(chǔ)在預(yù)留的指令空間中。其中,標(biāo)準(zhǔn)調(diào)試器200可以為標(biāo)準(zhǔn)的GDB調(diào)試器。當(dāng)然,也以采用其他形式的的標(biāo)準(zhǔn)調(diào)試器,本發(fā)明實(shí)施例對(duì)此并不進(jìn)行限定。所述編譯模塊140,用于對(duì)所述第二平臺(tái)指令進(jìn)行編譯,生成第二平臺(tái)程序;其中,生成的第二平臺(tái)程序可以寫(xiě)入新的第二平臺(tái)格式的可執(zhí)行文件,第二平臺(tái)程序?yàn)橐蜒兄瞥晒Σ⒖煽啃愿叩腃PU芯片體系結(jié)構(gòu)上的程序。所述程序輸出模塊150,用于將所述第二平臺(tái)程序輸出到標(biāo)準(zhǔn)調(diào)試器200進(jìn)行調(diào)
試ο通過(guò)應(yīng)用以上技術(shù)方案,本發(fā)明的系統(tǒng)能夠?qū)⑨槍?duì)尚未研制成功的CPU芯片的程序轉(zhuǎn)換為針對(duì)已研制成功并可靠性高的CPU芯片體系結(jié)構(gòu)上的程序,并使用標(biāo)準(zhǔn)的調(diào)試器進(jìn)行調(diào)試,對(duì)程序的正確性和性能進(jìn)行分析和評(píng)估。從而避免了使用體系結(jié)構(gòu)模擬器進(jìn)行模擬所帶來(lái)的處理速度慢、可靠性低的缺點(diǎn)。由于使用了已有的硬件資源和標(biāo)準(zhǔn)的調(diào)試器, 所以處理速度較快,并且可靠性較高。圖5為本發(fā)明實(shí)施例提供的跨平臺(tái)指令轉(zhuǎn)換模塊的結(jié)構(gòu)示意圖。如圖5所示,所述跨平臺(tái)指令轉(zhuǎn)換模塊130包括ISA兼容指令判斷子模塊131、一對(duì)一等價(jià)轉(zhuǎn)換子模塊132、越界判斷子模塊133、一對(duì)多等價(jià)轉(zhuǎn)換子模塊134、轉(zhuǎn)換完畢判斷子模塊135和指令轉(zhuǎn)換停止子模塊136 ;ISA兼容指令判斷子模塊131,用于判斷反匯編生成的第一平臺(tái)指令與第二平臺(tái)指令是否為ISA兼容指令;一對(duì)一等價(jià)轉(zhuǎn)換子模塊132,用于對(duì)ISA兼容指令進(jìn)行一對(duì)一等價(jià)轉(zhuǎn)換,其中,所述一對(duì)一等價(jià)轉(zhuǎn)換為將一個(gè)第一平臺(tái)指令等價(jià)轉(zhuǎn)換為一個(gè)第二平臺(tái)指令;越界判斷子模塊133,用于實(shí)時(shí)判斷所述一對(duì)多等價(jià)轉(zhuǎn)換所需的空間是否超過(guò)預(yù)留的指令空間,如果超過(guò),則發(fā)送一信號(hào)到所述指令轉(zhuǎn)換停止子模塊136,否則發(fā)送一信號(hào)到一對(duì)多等價(jià)轉(zhuǎn)換子模塊134 ;一對(duì)多等價(jià)轉(zhuǎn)換子模塊134,用于對(duì)非ISA兼容指令進(jìn)行一對(duì)多等價(jià)轉(zhuǎn)換,其中, 所述一對(duì)多等價(jià)轉(zhuǎn)換為將一個(gè)第一平臺(tái)指令等價(jià)轉(zhuǎn)換為多個(gè)第二平臺(tái)指令;轉(zhuǎn)換完畢判斷模塊135,用于判斷第一平臺(tái)指令是否已全部轉(zhuǎn)換為第二平臺(tái)指令, 如果已轉(zhuǎn)換完畢,則發(fā)送一信號(hào)到編譯模塊140,由編譯模塊140對(duì)第二平臺(tái)指令進(jìn)行編譯,生成第二平臺(tái)程序,否則發(fā)送一信號(hào)到ISA兼容指令判斷子模塊131,由ISA兼容指令判斷子模塊131繼續(xù)對(duì)其他第一平臺(tái)指令進(jìn)行ISA兼容判斷;指令轉(zhuǎn)換停止子模塊136,用于在接收到越界判斷子模塊133發(fā)送的信號(hào)后,進(jìn)行報(bào)錯(cuò)并停止指令轉(zhuǎn)換。圖6為本發(fā)明實(shí)施例提供的另一跨平臺(tái)指令轉(zhuǎn)換模塊的結(jié)構(gòu)示意圖。圖6所示的跨平臺(tái)指令轉(zhuǎn)換模塊與圖5所示的跨平臺(tái)指令轉(zhuǎn)換模塊的區(qū)別在于 跨平臺(tái)指令轉(zhuǎn)換模塊130還包括空間調(diào)整模塊137,用于當(dāng)一對(duì)多等價(jià)轉(zhuǎn)換所需的空間超過(guò)預(yù)留的指令空間并引起報(bào)錯(cuò)和指令轉(zhuǎn)換停止時(shí),增大預(yù)留的指令空間的大小,然后輸出一信號(hào)到ISA兼容指令判斷子模塊131,由ISA兼容指令判斷子模塊131繼續(xù)對(duì)其他第一平臺(tái)指令進(jìn)行ISA兼容判斷。為了描述的方便,描述以上裝置時(shí)以功能分為各種單元分別描述。當(dāng)然,在實(shí)施本
11發(fā)明時(shí)可以把各單元的功能在同一個(gè)或多個(gè)軟件和/或硬件中實(shí)現(xiàn)。通過(guò)以上的實(shí)施方式的描述可知,本領(lǐng)域的技術(shù)人員可以清楚地了解到本發(fā)明可借助軟件加必需的通用硬件平臺(tái)的方式來(lái)實(shí)現(xiàn)?;谶@樣的理解,本發(fā)明的技術(shù)方案本質(zhì)上或者說(shuō)對(duì)現(xiàn)有技術(shù)做出貢獻(xiàn)的部分可以以軟件產(chǎn)品的形式體現(xiàn)出來(lái),該計(jì)算機(jī)軟件產(chǎn)品可以存儲(chǔ)在存儲(chǔ)介質(zhì)中,如ROM/RAM、磁碟、光盤(pán)等,包括若干指令用以使得一臺(tái)計(jì)算機(jī)設(shè)備 (可以是個(gè)人計(jì)算機(jī),服務(wù)器,或者網(wǎng)絡(luò)設(shè)備等)執(zhí)行本發(fā)明各個(gè)實(shí)施例或者實(shí)施例的某些部分所述的方法。本說(shuō)明書(shū)中的各個(gè)實(shí)施例均采用遞進(jìn)的方式描述,各個(gè)實(shí)施例之間相同相似的部分互相參見(jiàn)即可,每個(gè)實(shí)施例重點(diǎn)說(shuō)明的都是與其他實(shí)施例的不同之處。尤其,對(duì)于系統(tǒng)實(shí)施例而言,由于其基本相似于方法實(shí)施例,所以描述得比較簡(jiǎn)單,相關(guān)之處參見(jiàn)方法實(shí)施例的部分說(shuō)明即可。以上所描述的系統(tǒng)實(shí)施例僅僅是示意性的,其中所述作為分離部件說(shuō)明的單元可以是或者也可以不是物理上分開(kāi)的,作為單元顯示的部件可以是或者也可以不是物理單元,即可以位于一個(gè)地方,或者也可以分布到多個(gè)網(wǎng)絡(luò)單元上??梢愿鶕?jù)實(shí)際的需要選擇其中的部分或者全部模塊來(lái)實(shí)現(xiàn)本實(shí)施例方案的目的。本領(lǐng)域普通技術(shù)人員在不付出創(chuàng)造性勞動(dòng)的情況下,即可以理解并實(shí)施。本發(fā)明可用于眾多通用或?qū)S玫挠?jì)算系統(tǒng)環(huán)境或配置中。例如個(gè)人計(jì)算機(jī)、服務(wù)器計(jì)算機(jī)、手持設(shè)備或便攜式設(shè)備、平板型設(shè)備、多處理器系統(tǒng)、基于微處理器的系統(tǒng)、置頂盒、可編程的消費(fèi)電子設(shè)備、網(wǎng)絡(luò)PC、小型計(jì)算機(jī)、大型計(jì)算機(jī)、包括以上任何系統(tǒng)或設(shè)備的分布式計(jì)算環(huán)境等等。本發(fā)明可以在由計(jì)算機(jī)執(zhí)行的計(jì)算機(jī)可執(zhí)行指令的一般上下文中描述,例如程序模塊。一般地,程序模塊包括執(zhí)行特定任務(wù)或?qū)崿F(xiàn)特定抽象數(shù)據(jù)類(lèi)型的例程、程序、對(duì)象、組件、數(shù)據(jù)結(jié)構(gòu)等等。也可以在分布式計(jì)算環(huán)境中實(shí)踐本發(fā)明,在這些分布式計(jì)算環(huán)境中,由通過(guò)通信網(wǎng)絡(luò)而被連接的遠(yuǎn)程處理設(shè)備來(lái)執(zhí)行任務(wù)。在分布式計(jì)算環(huán)境中,程序模塊可以位于包括存儲(chǔ)設(shè)備在內(nèi)的本地和遠(yuǎn)程計(jì)算機(jī)存儲(chǔ)介質(zhì)中。以上所述僅是本發(fā)明的具體實(shí)施方式
,應(yīng)當(dāng)指出,對(duì)于本技術(shù)領(lǐng)域的普通技術(shù)人員來(lái)說(shuō),在不脫離本發(fā)明原理的前提下,還可以做出若干改進(jìn)和潤(rùn)飾,這些改進(jìn)和潤(rùn)飾也應(yīng)視為本發(fā)明的保護(hù)范圍。
權(quán)利要求
1.一種程序調(diào)試方法,其特征在于,包括 讀入待調(diào)試的第一平臺(tái)程序;對(duì)所述第一平臺(tái)程序進(jìn)行反匯編,生成第一平臺(tái)指令;將所述第一平臺(tái)指令逐條跨平臺(tái)等價(jià)轉(zhuǎn)換為第二平臺(tái)指令,所述第二平臺(tái)指令為標(biāo)準(zhǔn)調(diào)試器能夠識(shí)別的指令;對(duì)所述第二平臺(tái)指令進(jìn)行編譯,生成第二平臺(tái)程序; 將所述第二平臺(tái)程序輸出到標(biāo)準(zhǔn)調(diào)試器進(jìn)行調(diào)試。
2.根據(jù)權(quán)利要求1所述的方法,其特征在于,所述將第一平臺(tái)指令逐條跨平臺(tái)等價(jià)轉(zhuǎn)換為第二平臺(tái)指令,包括逐條判斷所述反匯編生成的第一平臺(tái)指令與所述第二平臺(tái)指令是否為指令集架構(gòu)兼容指令,如果是,則執(zhí)行一對(duì)一等價(jià)轉(zhuǎn)換;否則,執(zhí)行一對(duì)多等價(jià)轉(zhuǎn)換;其中,所述一對(duì)一等價(jià)轉(zhuǎn)換為將一個(gè)第一平臺(tái)指令等價(jià)轉(zhuǎn)換為一個(gè)第二平臺(tái)指令; 所述一對(duì)多等價(jià)轉(zhuǎn)換為將一個(gè)第一平臺(tái)指令等價(jià)轉(zhuǎn)換為多個(gè)第二平臺(tái)指令。
3.根據(jù)權(quán)利要求2所述的方法,其特征在于,所述執(zhí)行一對(duì)多等價(jià)轉(zhuǎn)換,包括當(dāng)預(yù)留的指令空間的空余空間大于一對(duì)多等價(jià)轉(zhuǎn)換所需空間時(shí),執(zhí)行所述一對(duì)多等價(jià)轉(zhuǎn)換。
4.根據(jù)權(quán)利要求3所述的方法,其特征在于,在所述一對(duì)多等價(jià)轉(zhuǎn)換過(guò)程中,還包括 實(shí)時(shí)判斷所述一對(duì)多等價(jià)轉(zhuǎn)換所需的空間是否超過(guò)預(yù)留的指令空間,如果是,則報(bào)錯(cuò)并停止指令轉(zhuǎn)換。
5.根據(jù)權(quán)利要求4所述的方法,其特征在于,當(dāng)所述一對(duì)多等價(jià)轉(zhuǎn)換所需的空間超過(guò)預(yù)留的指令空間并引起報(bào)錯(cuò)和指令轉(zhuǎn)換停止時(shí),增大所述預(yù)留的指令空間的大小,繼續(xù)執(zhí)行將所述第一平臺(tái)指令跨平臺(tái)轉(zhuǎn)換為第二平臺(tái)指令的操作。
6.一種程序調(diào)試系統(tǒng),其特征在于,包括標(biāo)準(zhǔn)調(diào)試器和程序調(diào)試裝置,所述程序調(diào)試裝置包括程序讀入模塊、反匯編模塊、跨平臺(tái)指令轉(zhuǎn)換模塊、編譯模塊, 程序輸出模塊;所述程序讀入模塊,用于讀入待調(diào)試的第一平臺(tái)程序; 所述反匯編模塊,用于對(duì)所述第一平臺(tái)程序進(jìn)行反匯編,生成第一平臺(tái)指令; 所述跨平臺(tái)指令轉(zhuǎn)換模塊,用于將所述第一平臺(tái)指令逐條跨平臺(tái)等價(jià)轉(zhuǎn)換為第二平臺(tái)指令,所述第二平臺(tái)指令為標(biāo)準(zhǔn)調(diào)試器能夠識(shí)別的指令;所述編譯模塊,用于對(duì)所述第二平臺(tái)指令進(jìn)行編譯,生成第二平臺(tái)程序; 所述程序輸出模塊,用于將所述第二平臺(tái)程序輸出到標(biāo)準(zhǔn)調(diào)試器進(jìn)行調(diào)試。
7.根據(jù)權(quán)利要求6所述的系統(tǒng),其特征在于,所述跨平臺(tái)指令轉(zhuǎn)換模塊包括指令集構(gòu)架兼容指令判斷子模塊、一對(duì)一等價(jià)轉(zhuǎn)換子模塊和一對(duì)多等價(jià)轉(zhuǎn)換子模塊;所述指令集構(gòu)架兼容指令判斷子模塊,用于逐條判斷反匯編生成的第一平臺(tái)指令與第二平臺(tái)指令是否為指令集架構(gòu)兼容指令;所述一對(duì)一等價(jià)轉(zhuǎn)換子模塊,用于對(duì)指令集構(gòu)架兼容指令進(jìn)行一對(duì)一等價(jià)轉(zhuǎn)換,其中, 所述一對(duì)一等價(jià)轉(zhuǎn)換為將一個(gè)第一平臺(tái)指令等價(jià)轉(zhuǎn)換為一個(gè)第二平臺(tái)指令;所述一對(duì)多等價(jià)轉(zhuǎn)換子模塊,用于對(duì)非指令集構(gòu)架兼容指令進(jìn)行一對(duì)多等價(jià)轉(zhuǎn)換,其中,所述一對(duì)多等價(jià)轉(zhuǎn)換為將一個(gè)第一平臺(tái)指令等價(jià)轉(zhuǎn)換為多個(gè)第二平臺(tái)指令,所述多個(gè)第二平臺(tái)指令存儲(chǔ)在預(yù)留的指令空間中。
8.根據(jù)權(quán)利要求7所述的系統(tǒng),其特征在于,當(dāng)預(yù)留的指令空間的空余空間大于一對(duì)多等價(jià)轉(zhuǎn)換所需空間時(shí),執(zhí)行所述一對(duì)多等價(jià)轉(zhuǎn)換。
9.根據(jù)權(quán)利要求8所述的系統(tǒng),其特征在于,所述跨平臺(tái)指令轉(zhuǎn)換模塊,還包括越界判斷子模塊和指令轉(zhuǎn)換停止子模塊;所述越界判斷子模塊用于實(shí)時(shí)判斷所述一對(duì)多等價(jià)轉(zhuǎn)換所需的空間是否超過(guò)預(yù)留的指令空間;所述指令轉(zhuǎn)換停止子模塊,用于在所述一對(duì)多等價(jià)轉(zhuǎn)換所需的空間超過(guò)預(yù)留的指令空間時(shí),進(jìn)行報(bào)錯(cuò)并停止指令轉(zhuǎn)換。
10.根據(jù)權(quán)利要求9所述的系統(tǒng),其特征在于,所述跨平臺(tái)指令轉(zhuǎn)換模塊,還包括空間調(diào)整模塊,用于當(dāng)所述一對(duì)多等價(jià)轉(zhuǎn)換所需的空間超過(guò)預(yù)留的指令空間并引起報(bào)錯(cuò)和指令轉(zhuǎn)換停止時(shí),增大所述預(yù)留的指令空間的大小。
全文摘要
本發(fā)明公開(kāi)了一種程序調(diào)試方法及系統(tǒng),能夠?qū)⑨槍?duì)尚未研制成功的CPU芯片的程序轉(zhuǎn)換為針對(duì)已研制成功并可靠性高的CPU芯片體系結(jié)構(gòu)上的程序,并使用標(biāo)準(zhǔn)的調(diào)試器進(jìn)行調(diào)試,對(duì)程序的正確性和性能進(jìn)行分析和評(píng)估,從而避免了使用體系結(jié)構(gòu)模擬器進(jìn)行模擬所帶來(lái)的處理速度慢、可靠性低的缺點(diǎn)。由于使用了已有的硬件資源和標(biāo)準(zhǔn)的調(diào)試器,所以處理速度較快,并且可靠性較高。
文檔編號(hào)G06F11/36GK102541727SQ20101059400
公開(kāi)日2012年7月4日 申請(qǐng)日期2010年12月17日 優(yōu)先權(quán)日2010年12月17日
發(fā)明者吳佩華, 尉紅梅, 李中升, 沈莉, 王飛, 龔傳 申請(qǐng)人:無(wú)錫江南計(jì)算技術(shù)研究所
網(wǎng)友詢(xún)問(wèn)留言 已有0條留言
  • 還沒(méi)有人留言評(píng)論。精彩留言會(huì)獲得點(diǎn)贊!
1
连平县| 永嘉县| 丹棱县| 武胜县| 阳信县| 天长市| 成都市| 镇赉县| 成都市| 五莲县| 保山市| 梅河口市| 蓝田县| 敦煌市| 黑水县| 望江县| 梅州市| 麟游县| 新田县| 丽水市| 台北县| 桂林市| 大城县| 丰顺县| 武定县| 北安市| 洪湖市| 犍为县| 喜德县| 通山县| 浦县| 广汉市| 斗六市| 盐源县| 金华市| 霸州市| 兴安县| 东乡族自治县| 永昌县| 西林县| 疏勒县|