專利名稱::程序執(zhí)行追蹤方法及系統(tǒng)以及計(jì)算機(jī)可讀取儲(chǔ)存介質(zhì)的制作方法
技術(shù)領(lǐng)域:
:此發(fā)明是一種程序調(diào)試(programdebugging)技術(shù),特別是一種可應(yīng)用于嵌入式裝置的執(zhí)行追蹤方法及系統(tǒng)。
背景技術(shù):
:在程序測(cè)試階段,程序開(kāi)發(fā)人員通常會(huì)使用各式各樣測(cè)試個(gè)案(testcases)于一個(gè)程序中執(zhí)行,試圖了解特定測(cè)試個(gè)案在執(zhí)行時(shí),執(zhí)行過(guò)哪些指令(instruction)或子例程(subroutine),亦即是程序代碼覆蓋性(codecoverage),以及執(zhí)行過(guò)哪些條件分支(conditionbranch),亦即是分支覆蓋性(branchcoverage)。通常,程序開(kāi)發(fā)人員會(huì)利用整合性開(kāi)發(fā)環(huán)境(IntegratedDevelopmentEnvironment,IDE)在測(cè)試個(gè)案執(zhí)行前,在受測(cè)程序中的特定位置,如子例程中的開(kāi)始位置、條件分支中的開(kāi)始位置、執(zhí)行子例程之前的位置或其它,埋藏產(chǎn)生執(zhí)行日志(executionlog)的指令。當(dāng)受測(cè)程序在執(zhí)行測(cè)試個(gè)案時(shí),執(zhí)行到這些產(chǎn)生執(zhí)行日志的指令時(shí),即會(huì)將程序目前的執(zhí)行狀態(tài)輸出至一個(gè)日志文件(logfile)、日志數(shù)據(jù)表(logtable)或日志數(shù)據(jù)對(duì)象(logdataobject)中。然而,埋藏產(chǎn)生執(zhí)行日志的指令至受測(cè)程序中的活動(dòng),相當(dāng)耗時(shí)。除此之外,當(dāng)程序測(cè)試完成后,還需要將這些預(yù)先埋藏的指令移除,更需要花費(fèi)時(shí)間與精神。因此,需要一個(gè)用以克服上述缺點(diǎn)并便于檢測(cè)出程序代碼覆蓋性以及程序分支覆蓋性的程序執(zhí)行追蹤方法及系統(tǒng)。
發(fā)明內(nèi)容本發(fā)明的目的在于提供一種便于檢測(cè)出程序代碼覆蓋性以及程序分支覆蓋性的程序執(zhí)行追蹤方法及系統(tǒng)。本發(fā)明揭露一種程序執(zhí)行追蹤方法,由處理單元加載并執(zhí)行。此方法接收一個(gè)符號(hào)表或一個(gè)二位文件,依據(jù)符號(hào)表或二位文件的內(nèi)容檢測(cè)出至少一個(gè)斷點(diǎn),依據(jù)檢測(cè)出的斷點(diǎn)產(chǎn)生執(zhí)行追蹤腳本指令。而此執(zhí)行追蹤腳本指令用以于相應(yīng)于二位文件的程序執(zhí)行至斷點(diǎn)時(shí),輸出執(zhí)行狀態(tài)信息至儲(chǔ)存介質(zhì)中。于適當(dāng)?shù)那闆r下,此方法可另包括依據(jù)符號(hào)表的內(nèi)容檢測(cè)出子例程的起始位置,以及將子例程的起始位置當(dāng)做斷點(diǎn)。此方法可另包括依據(jù)二位文件的內(nèi)容檢測(cè)出執(zhí)行條件分支的起始位置,以及將上述執(zhí)行條件分支的起始位置當(dāng)做上述斷點(diǎn)。本發(fā)明另揭露一種計(jì)算機(jī)可讀取儲(chǔ)存介質(zhì),用以儲(chǔ)存一個(gè)計(jì)算機(jī)程序,該計(jì)算機(jī)程序用以加載至一部計(jì)算機(jī)系統(tǒng)中并且使得該計(jì)算機(jī)系統(tǒng)執(zhí)行如上所述的程序執(zhí)行追蹤方法。本發(fā)明更揭露一種程序執(zhí)行追蹤系統(tǒng),其包括一部計(jì)算機(jī),用以接收符號(hào)表或二位文件,依據(jù)符號(hào)表或二位文件的內(nèi)容檢測(cè)出至少一斷點(diǎn),以及依據(jù)檢測(cè)出的斷點(diǎn)產(chǎn)生執(zhí)行追蹤腳本指令。而此執(zhí)行追蹤腳本指令用以于相應(yīng)于二位文件的程序執(zhí)行至斷點(diǎn)時(shí),輸出執(zhí)行狀態(tài)信息至儲(chǔ)存介質(zhì)中。于適當(dāng)?shù)那闆r下,計(jì)算機(jī)可另包括依據(jù)符號(hào)表的內(nèi)容檢測(cè)出子例程的起始位置,以及將子例程的起始位置當(dāng)做斷點(diǎn)。計(jì)算機(jī)可另包括依據(jù)二位文件的內(nèi)容檢測(cè)出執(zhí)行條件分支的起始位置,以及將上述執(zhí)行條件分支的起始位置當(dāng)做上述斷點(diǎn)。于適當(dāng)?shù)那闆r下,程序執(zhí)行追蹤系統(tǒng)可還包括嵌入式裝置以及調(diào)試接口裝置。嵌入式裝置執(zhí)行程序,調(diào)試接口裝置用以于嵌入式裝置與計(jì)算機(jī)間傳遞信號(hào),使得執(zhí)行追蹤腳本指令用以于嵌入式裝置中的程序執(zhí)行至斷點(diǎn)時(shí),輸出執(zhí)行狀態(tài)信息至儲(chǔ)存介質(zhì)中。于適當(dāng)?shù)那闆r下,計(jì)算機(jī)中更可包括用以仿真嵌入式裝置的仿真器。仿真器執(zhí)行程序,使得執(zhí)行追蹤腳本指令用以于仿真器中的程序執(zhí)行至斷點(diǎn)時(shí),輸出執(zhí)行狀態(tài)信息至儲(chǔ)存介質(zhì)中。于較佳的情況下,執(zhí)行追蹤腳本指令包括設(shè)定上述斷點(diǎn)指令;配置調(diào)試環(huán)境指令;以及輸出執(zhí)行狀態(tài)信息指令。儲(chǔ)存介質(zhì)中包括執(zhí)行日志文件、數(shù)據(jù)表或數(shù)據(jù)對(duì)象,使得執(zhí)行追蹤腳本指令可于相應(yīng)于上述二位文件的程序執(zhí)行至斷點(diǎn)時(shí),輸出執(zhí)行狀態(tài)信息至執(zhí)行日志文件、數(shù)據(jù)表或數(shù)據(jù)對(duì)象中。執(zhí)行狀態(tài)信息用以追蹤程序代碼覆蓋性(codecoverage)以及分支覆蓋性(branchcoverage)。第1圖是表示應(yīng)用于本發(fā)明實(shí)施例的執(zhí)行追蹤系統(tǒng)的系統(tǒng)架構(gòu)圖;第2圖是表示應(yīng)用于本發(fā)明實(shí)施例的計(jì)算機(jī)21的硬件架構(gòu)圖;第3圖是表示應(yīng)用于本發(fā)明實(shí)施例的范例程序、符號(hào)表與二位文件示意圖;第4圖是表示依據(jù)本發(fā)明實(shí)施例的執(zhí)行追蹤腳本指令產(chǎn)生方法的方法流程圖;第5圖是表示應(yīng)用于本發(fā)明實(shí)施例的范例執(zhí)行追蹤腳本指令示意圖;第6圖是表示依據(jù)本發(fā)明實(shí)施例的執(zhí)行追蹤腳本指令產(chǎn)生方法的儲(chǔ)存介質(zhì)示意圖;第7圖與第8圖是表示依據(jù)本發(fā)明實(shí)施例的應(yīng)用環(huán)境。標(biāo)號(hào)說(shuō)明10~程序執(zhí)行追蹤系統(tǒng);11~處理單元;12~存儲(chǔ)器;13~儲(chǔ)存裝置;14~輸出裝置;15~輸入裝置;16~通訊裝置;17~總線;21~計(jì)算機(jī);22~調(diào)試接口裝置;23~嵌入式裝置;31~程序;32~符號(hào)表;33~二位文件;S411、S413、S415、S421~流程步驟;51a、51b、51c、51d、51e~設(shè)定斷點(diǎn)指令;52a、52b、52c~配置調(diào)試環(huán)境指令;53a、53b~輸出執(zhí)行狀態(tài)信息指令;60~儲(chǔ)存介質(zhì);620~程序執(zhí)行追蹤計(jì)算機(jī)程序;621~接收符號(hào)表以及二位文件邏輯;622~由符號(hào)表中檢測(cè)出子例程的起始位置邏輯;623~由二位文件中檢測(cè)出執(zhí)行條件分支的起始位置邏輯;624~依據(jù)檢測(cè)出的起始位置產(chǎn)生執(zhí)行追蹤腳本指令邏輯;711~符號(hào)表;713~二位文件;721~執(zhí)行追蹤腳本指令產(chǎn)生單元;731~執(zhí)行追蹤腳本指令;741~執(zhí)行日志文件/數(shù)據(jù)表/數(shù)據(jù)對(duì)象;811~仿真器。具體實(shí)施例方式第1圖是表示應(yīng)用于本發(fā)明實(shí)施例的程序執(zhí)行追蹤系統(tǒng)的系統(tǒng)架構(gòu)圖。依據(jù)本發(fā)明實(shí)施例的程序執(zhí)行追蹤系統(tǒng)10包括計(jì)算機(jī)21、調(diào)試接口裝置22以及嵌入式裝置23,用以于嵌入式裝置23中的程序執(zhí)行時(shí),檢測(cè)出程序代碼覆蓋性以及程序分支覆蓋性。調(diào)試接口裝置22用以于計(jì)算機(jī)21以及嵌入式裝置23間傳遞信號(hào)。嵌入式裝置23可為智能電話(smartphone)、個(gè)人數(shù)字助理(PersonalDigitalAssistant,PDA)或其它具有運(yùn)算能力的嵌入式裝置23。于此須注意的是,若計(jì)算機(jī)21中具有仿真嵌入式裝置23中的軟硬件環(huán)境的仿真器(emulator)時(shí),執(zhí)行追蹤系統(tǒng)10亦可只包括計(jì)算機(jī)21。第2圖是表示應(yīng)用于本發(fā)明實(shí)施例的計(jì)算機(jī)21的硬件架構(gòu)圖。依據(jù)本發(fā)明實(shí)施例的計(jì)算機(jī)21包括處理單元11、存儲(chǔ)器12、儲(chǔ)存裝置13、輸出裝置14、輸入裝置15、通訊裝置16,并使用總線17將其連結(jié)在一起。除此之外,本領(lǐng)域技術(shù)人員也可將本發(fā)明實(shí)施于其它計(jì)算機(jī)系統(tǒng)配置(configuration)上,例如,手持式設(shè)備(hand-helddevices)、多處理器系統(tǒng)、以微處理器為基礎(chǔ)或可程序化的消費(fèi)性電子產(chǎn)品(microprocessor-basedorprogrammableconsumerelectronics)、網(wǎng)絡(luò)計(jì)算機(jī)、迷你計(jì)算機(jī)、大型主機(jī)以及類似的設(shè)備。處理單元11可包含單一中央處理單元(central-processingunit;CPU)或者是關(guān)連于平行運(yùn)算環(huán)境(parallelprocessingenvironment)的多個(gè)平行處理單元。存儲(chǔ)器12包含只讀存儲(chǔ)器(readonlymemory;ROM)、閃存(flashROM)以及/或動(dòng)態(tài)存取存儲(chǔ)器(randomaccessmemory;RAM),用以儲(chǔ)存可供處理單元11執(zhí)行的程序模塊。一般而言,程序模塊包含例程(routines)、程序(program)、對(duì)象(object)、組件(component)等,用以執(zhí)行嵌入式裝置的執(zhí)行追蹤功能。本發(fā)明亦可以實(shí)施于分布式運(yùn)算環(huán)境,其運(yùn)算工作被連結(jié)于通訊網(wǎng)路的遠(yuǎn)程處理設(shè)備所執(zhí)行。在分布式環(huán)境中,嵌入式裝置的執(zhí)行追蹤功能的執(zhí)行也許由本地以及多部遠(yuǎn)程計(jì)算機(jī)系統(tǒng)共同完成。儲(chǔ)存裝置13包含硬盤裝置、軟盤裝置、光盤裝置或隨身碟裝置。執(zhí)行于嵌入式裝置23中的程序,在編譯與組譯完成后,會(huì)產(chǎn)生符號(hào)表(symboltable)以及二位文件(binaryfile)。符號(hào)表中包含程序中所包含的常序名稱以及起始地址。二位文件則為包含可被嵌入式裝置23加載并執(zhí)行的機(jī)器碼(machinecode)。第3圖是表示應(yīng)用于本發(fā)明實(shí)施例的范例程序、符號(hào)表與二位文件示意圖。范例的程序31包含一個(gè)判斷邏輯,用以于變量a等于變量b時(shí),執(zhí)行子例程P1,否則執(zhí)行子例程P2。程序31在編譯(compile)與組譯(assemble)完成后,產(chǎn)生符號(hào)表32以及二位文件33。符號(hào)表32中包含子例程P1與P2的起始地址為FF12與FF17。二位文件33中包含可被嵌入式裝置23加載并執(zhí)行的條件判斷邏輯,其執(zhí)行條件分支位于地址FF02與FF03。第4圖是表示依據(jù)本發(fā)明實(shí)施例的執(zhí)行追蹤腳本指令(scripts)產(chǎn)生方法的方法流程圖。于步驟S411,接收符號(hào)表以及二位文件,范例的符號(hào)表以及二位文件可分別參考第3圖的32與33。于步驟S413,由符號(hào)表中檢測(cè)出子例程的起始位置,以符號(hào)表32為例,子例程的起始地址分別為FF12與FF17。于步驟S415,由二位文件中檢測(cè)出執(zhí)行條件分支的起始位置,以二位文件33為例,執(zhí)行條件分支的起始地址分別為FF02與FF03。于步驟S421,依據(jù)檢測(cè)出的起始位置產(chǎn)生執(zhí)行追蹤腳本指令。新產(chǎn)生的執(zhí)行追蹤腳本指令包含以下類型的指令,(1)設(shè)定斷點(diǎn)于檢測(cè)出的起始位置;(2)配置調(diào)試環(huán)境(例如Trace32的調(diào)試環(huán)境);與(3)當(dāng)檢測(cè)到程序中斷時(shí),輸出執(zhí)行狀態(tài)信息(例如,時(shí)間、子例程名稱、中斷地址、條件分支識(shí)別碼、存儲(chǔ)器大小、各個(gè)變量的變量值等)至儲(chǔ)存介質(zhì)13中,詳而言之,即輸出執(zhí)行狀態(tài)信息至儲(chǔ)存介質(zhì)13中的執(zhí)行日志文件/數(shù)據(jù)表/對(duì)象。執(zhí)行日志文件/數(shù)據(jù)表/數(shù)據(jù)對(duì)象中的執(zhí)行狀態(tài)信息有利于追蹤程序代碼覆蓋性(codecoverage)以及分支覆蓋性(branchcoverage)。第5圖是表示應(yīng)用于本發(fā)明實(shí)施例的范例執(zhí)行追蹤腳本指令示意圖。其中,51a至51e是代表設(shè)定斷點(diǎn)于檢測(cè)出的起始位置的指令;52a至52c是代表配置調(diào)試環(huán)境的指令;53a至53b是代表輸出執(zhí)行狀態(tài)信息至執(zhí)行日志文件的指令。再者,本發(fā)明實(shí)施例提出一種儲(chǔ)存介質(zhì),用以儲(chǔ)存計(jì)算機(jī)程序,上述計(jì)算機(jī)程序用以實(shí)現(xiàn)執(zhí)行追蹤腳本指令產(chǎn)生方法,此方法會(huì)執(zhí)行如上所述的步驟。第6圖是表示依據(jù)本發(fā)明實(shí)施例的執(zhí)行追蹤腳本指令產(chǎn)生方法的儲(chǔ)存介質(zhì)示意圖。此儲(chǔ)存介質(zhì)60,用以儲(chǔ)存計(jì)算機(jī)程序620,其計(jì)算機(jī)程序包含四個(gè)邏輯,分別為接收符號(hào)表以及二位文件邏輯621、由符號(hào)表中檢測(cè)出子例程的起始位置邏輯622、由二位文件中檢測(cè)出執(zhí)行條件分支的起始位置邏輯623以及依據(jù)檢測(cè)出的起始位置產(chǎn)生執(zhí)行追蹤腳本指令邏輯624。本發(fā)明實(shí)施例所揭露的應(yīng)用于嵌入式裝置的執(zhí)行追蹤方法及系統(tǒng)可實(shí)施于如第7圖與第8圖所示的環(huán)境。第7圖與第8圖是表示依據(jù)本發(fā)明實(shí)施例的應(yīng)用環(huán)境。如第7圖所示,計(jì)算機(jī)21中可包含符號(hào)表711、二位文件713、執(zhí)行追蹤腳本指令產(chǎn)生單元721、執(zhí)行追蹤腳本指令731與執(zhí)行日志文件/數(shù)據(jù)表/數(shù)據(jù)對(duì)象741。執(zhí)行追蹤腳本指令產(chǎn)生單元721可執(zhí)行如上所述的執(zhí)行追蹤腳本指令產(chǎn)生方法,用以依據(jù)符號(hào)表711與二位文件713中的內(nèi)容產(chǎn)生執(zhí)行追蹤腳本指令731。執(zhí)行追蹤腳本指令731則用以當(dāng)嵌入式裝置23執(zhí)行相應(yīng)的程序并進(jìn)入到預(yù)先設(shè)定的斷點(diǎn)時(shí),輸出執(zhí)行狀態(tài)信息至執(zhí)行日志文件/數(shù)據(jù)表/數(shù)據(jù)對(duì)象741。調(diào)試接口裝置22可為兼容于聯(lián)合測(cè)試行動(dòng)組(JointTestActionGroup,JTAG)所定義使用5-pin串行協(xié)議的裝置,于計(jì)算機(jī)21以及嵌入式裝置23間傳遞信號(hào),用以測(cè)試嵌入式裝置23中的芯片本身的電路。調(diào)試接口裝置22中可包含五個(gè)管腳(pin),包括四個(gè)輸入管腳(分別為TRST、TCK、TMS與TDI)以及一個(gè)輸出管腳(TDO)。TRST(TestReset)管腳用以傳遞初始化測(cè)試信號(hào)。TCK(TestClock)管腳用以傳遞測(cè)試時(shí)所使用的時(shí)脈(clock)。TMS(TestModeSelection)管腳用以傳遞測(cè)試時(shí)所使用的測(cè)試接口狀態(tài)機(jī)(statemachine)中的狀態(tài)。TDI(TestDataInput)管腳用以傳遞測(cè)試輸入數(shù)據(jù)。TDO(TestDataOutput)管腳用以傳遞測(cè)試輸出數(shù)據(jù)。如第8圖所示,計(jì)算機(jī)21中可包含符號(hào)表711、二位文件713、執(zhí)行追蹤腳本指令產(chǎn)生單元721、執(zhí)行追蹤腳本指令731、執(zhí)行日志文件/數(shù)據(jù)表/數(shù)據(jù)對(duì)象741與仿真器811。執(zhí)行追蹤腳本指令產(chǎn)生單元721可執(zhí)行如上所述的執(zhí)行追蹤腳本指令產(chǎn)生方法,用以依據(jù)符號(hào)表711與二位文件713中的內(nèi)容產(chǎn)生執(zhí)行追蹤腳本指令731。仿真器811可用以仿真嵌入式裝置23中的軟硬件環(huán)境。執(zhí)行追蹤腳本指令731則用以當(dāng)仿真器811執(zhí)行相應(yīng)的程序并進(jìn)入到預(yù)先設(shè)定的斷點(diǎn)時(shí),輸出執(zhí)行狀態(tài)信息至執(zhí)行日志文件/數(shù)據(jù)表/數(shù)據(jù)對(duì)象741。雖然本發(fā)明的實(shí)施例揭露如上,然其并非用以限定本發(fā)明,任何本領(lǐng)域技術(shù)人員,在不脫離本發(fā)明的精神和范圍內(nèi),當(dāng)可做些許更動(dòng)與潤(rùn)飾,因此本發(fā)明的保護(hù)范圍當(dāng)視所附的權(quán)利要求范圍所界定者為準(zhǔn)。權(quán)利要求1.一種程序執(zhí)行追蹤方法,被處理單元加載并執(zhí)行,其方法包括接收符號(hào)表或二位文件;依據(jù)上述符號(hào)表或上述二位文件的內(nèi)容檢測(cè)出至少一斷點(diǎn);以及依據(jù)上述檢測(cè)出的斷點(diǎn)產(chǎn)生執(zhí)行追蹤腳本指令,其中,上述執(zhí)行追蹤腳本指令用以于相應(yīng)于上述二位文件的程序執(zhí)行至上述斷點(diǎn)時(shí),輸出執(zhí)行狀態(tài)信息至儲(chǔ)存介質(zhì)中。2.根據(jù)權(quán)利要求1所述的程序執(zhí)行追蹤方法,還包括依據(jù)上述符號(hào)表的內(nèi)容檢測(cè)出子例程的起始位置;以及將上述子例程的起始位置當(dāng)做上述斷點(diǎn)。3.根據(jù)權(quán)利要求1所述的程序執(zhí)行追蹤方法,還包括依據(jù)上述二位文件的內(nèi)容檢測(cè)出執(zhí)行條件分支的起始位置;以及將上述執(zhí)行條件分支的起始位置當(dāng)做上述斷點(diǎn)。4.根據(jù)權(quán)利要求1所述的程序執(zhí)行追蹤方法,還包括依據(jù)上述符號(hào)表的內(nèi)容檢測(cè)出子例程的起始位置;依據(jù)上述二位文件的內(nèi)容檢測(cè)出執(zhí)行條件分支的起始位置;以及將上述子例程的起始位置以及上述執(zhí)行條件分支的起始位置當(dāng)做上述斷點(diǎn)。5.根據(jù)權(quán)利要求1所述的程序執(zhí)行追蹤方法,其中上述執(zhí)行追蹤腳本指令包括設(shè)定上述斷點(diǎn)指令;配置調(diào)試環(huán)境指令;以及輸出執(zhí)行狀態(tài)信息指令。6.根據(jù)權(quán)利要求1所述的程序執(zhí)行追蹤方法,其中上述儲(chǔ)存介質(zhì)中包括執(zhí)行日志文件、數(shù)據(jù)表或數(shù)據(jù)對(duì)象,以及上述執(zhí)行追蹤腳本指令用以于相應(yīng)于上述二位文件的程序執(zhí)行至上述斷點(diǎn)時(shí),輸出上述執(zhí)行狀態(tài)信息至上述執(zhí)行日志文件、上述數(shù)據(jù)表或上述數(shù)據(jù)對(duì)象中。7.根據(jù)權(quán)利要求1所述的程序執(zhí)行追蹤方法,其中上述執(zhí)行狀態(tài)信息用以追蹤程序代碼覆蓋性以及分支覆蓋性。8.一種計(jì)算機(jī)可讀取儲(chǔ)存介質(zhì),用以儲(chǔ)存計(jì)算機(jī)程序,該計(jì)算機(jī)程序用以加載至計(jì)算機(jī)系統(tǒng)中并且使得該計(jì)算機(jī)系統(tǒng)執(zhí)行程序執(zhí)行追蹤方法,其方法包括下列步驟接收符號(hào)表或二位文件;依據(jù)上述符號(hào)表或上述二位文件的內(nèi)容檢測(cè)出至少一斷點(diǎn);以及依據(jù)上述檢測(cè)出的斷點(diǎn)產(chǎn)生執(zhí)行追蹤腳本指令,其中上述執(zhí)行追蹤腳本指令用以于相應(yīng)于上述二位文件的程序執(zhí)行至上述斷點(diǎn)時(shí),輸出執(zhí)行狀態(tài)信息至儲(chǔ)存介質(zhì)中。9.一種程序執(zhí)行追蹤系統(tǒng),其包括計(jì)算機(jī),用以接收符號(hào)表或二位文件,依據(jù)上述符號(hào)表或上述二位文件的內(nèi)容檢測(cè)出至少一斷點(diǎn),以及依據(jù)上述檢測(cè)出的斷點(diǎn)產(chǎn)生執(zhí)行追蹤腳本指令,其中,上述執(zhí)行追蹤腳本指令用以于相應(yīng)于上述二位文件的程序執(zhí)行至上述斷點(diǎn)時(shí),輸出執(zhí)行狀態(tài)信息至儲(chǔ)存介質(zhì)中。10.根據(jù)權(quán)利要求9所述的程序執(zhí)行追蹤系統(tǒng),其中上述計(jì)算機(jī)依據(jù)上述符號(hào)表的內(nèi)容檢測(cè)出子例程的起始位置,以及將上述子例程的起始位置當(dāng)做上述斷點(diǎn)。11.根據(jù)權(quán)利要求9所述的程序執(zhí)行追蹤系統(tǒng),其中上述計(jì)算機(jī)依據(jù)上述二位文件的內(nèi)容檢測(cè)出執(zhí)行條件分支的起始位置,以及將上述執(zhí)行條件分支的起始位置當(dāng)做上述斷點(diǎn)。12.根據(jù)權(quán)利要求9所述的程序執(zhí)行追蹤系統(tǒng),其中上述計(jì)算機(jī)依據(jù)上述符號(hào)表的內(nèi)容檢測(cè)出子例程的起始位置,依據(jù)上述二位文件的內(nèi)容檢測(cè)出執(zhí)行條件分支的起始位置,以及將上述子例程的起始位置以及上述執(zhí)行條件分支的起始位置當(dāng)做上述斷點(diǎn)。13.根據(jù)權(quán)利要求9所述的程序執(zhí)行追蹤系統(tǒng),其中上述執(zhí)行追蹤腳本指令包括設(shè)定上述斷點(diǎn)指令;配置調(diào)試環(huán)境指令;以及輸出執(zhí)行狀態(tài)信息指令。全文摘要一種程序執(zhí)行追蹤方法,由處理單元加載并執(zhí)行。此方法接收一個(gè)符號(hào)表或一個(gè)二位文件,依據(jù)符號(hào)表或二位文件的內(nèi)容檢測(cè)出至少一個(gè)斷點(diǎn),依據(jù)檢測(cè)出的斷點(diǎn)產(chǎn)生執(zhí)行追蹤腳本指令。而此執(zhí)行追蹤腳本指令用以于相應(yīng)于二位文件的程序執(zhí)行至斷點(diǎn)時(shí),輸出執(zhí)行狀態(tài)信息至儲(chǔ)存介質(zhì)中。文檔編號(hào)G06F11/36GK1936861SQ20051010378公開(kāi)日2007年3月28日申請(qǐng)日期2005年9月23日優(yōu)先權(quán)日2005年9月23日發(fā)明者辛志浩,袁嘉尚申請(qǐng)人:明基電通股份有限公司