專利名稱:計(jì)算機(jī)程序查錯(cuò)輔助方法及系統(tǒng)的制作方法
技術(shù)領(lǐng)域:
本發(fā)明是關(guān)于一種計(jì)算機(jī)信息技術(shù),特別是關(guān)于一種計(jì)算機(jī)程序查錯(cuò)輔助方法及系統(tǒng),應(yīng)用在計(jì)算機(jī)平臺(tái),當(dāng)該計(jì)算機(jī)平臺(tái)上的一個(gè)計(jì)算機(jī)程序,例如基本輸出入系統(tǒng)(Basic Input/Output System,BIOS)程序,發(fā)生錯(cuò)碼狀況未能順利執(zhí)行時(shí),對(duì)該BIOS程序提供有效率的查錯(cuò)輔助功能,協(xié)助程序開(kāi)發(fā)人員更快速地找到該BIOS程序中的錯(cuò)碼所在的位置。
背景技術(shù):
在計(jì)算機(jī)程序的開(kāi)發(fā)上,當(dāng)程序開(kāi)發(fā)人員開(kāi)發(fā)出一個(gè)計(jì)算機(jī)程序(例如BIOS程序)之后,通常需要首先在計(jì)算機(jī)平臺(tái)上對(duì)該BIOS程序進(jìn)行測(cè)試程序,也就是在該計(jì)算機(jī)平臺(tái)上實(shí)際執(zhí)行該BIOS程序,測(cè)試該BIOS程序是否可正常運(yùn)行。若是該BIOS程序無(wú)法通過(guò)正常運(yùn)行提供預(yù)定的功能、或是在實(shí)際執(zhí)行時(shí)導(dǎo)致該計(jì)算機(jī)平臺(tái)發(fā)生當(dāng)機(jī)狀況,程序開(kāi)發(fā)人員便需要對(duì)該BIOS程序進(jìn)行查錯(cuò)工作,找出及更正該BIOS程序中的錯(cuò)碼。
斷點(diǎn)查錯(cuò)方法是一種常用的BIOS程序查錯(cuò)方法,它是由程序開(kāi)發(fā)人員在BIOS程序指令串中的一個(gè)特定位置(也就是程序開(kāi)發(fā)人員認(rèn)為最可能發(fā)生錯(cuò)碼處附近),預(yù)先經(jīng)由修改程序設(shè)定一斷點(diǎn)(breakpoint),使得BIOS程序執(zhí)行到此斷點(diǎn)時(shí)即會(huì)自動(dòng)停止,程序開(kāi)發(fā)人員在此時(shí)可檢查各個(gè)緩存器和變量值來(lái)逐步找出出錯(cuò)的位置。
然而上述斷點(diǎn)查錯(cuò)方法在實(shí)際應(yīng)用上的一項(xiàng)缺點(diǎn)是,程序開(kāi)發(fā)人員須以人工方式在BIOS程序的編譯上相關(guān)的*.MAP(Link Editor Map)文檔中,搜尋BIOS程序中的各個(gè)程序模塊在實(shí)際執(zhí)行時(shí)的內(nèi)存地址,也就是區(qū)段(segment)及起始值(offset),此作業(yè)過(guò)程頗為繁瑣而效率較低。此外,現(xiàn)有的斷點(diǎn)查錯(cuò)方法是以整個(gè)BIOS程序(即所有程序模塊)為范圍進(jìn)行查錯(cuò),因此作業(yè)過(guò)程也頗為費(fèi)時(shí)費(fèi)力而沒(méi)有效率。
此外,目前業(yè)界常用的另一種查錯(cuò)方法是由程序開(kāi)發(fā)人員在BIOS程序因發(fā)生錯(cuò)碼狀況中止執(zhí)行時(shí),通過(guò)計(jì)算機(jī)主板上一組特定的指示燈,例如BIOS芯片的Port84和Port84相關(guān)的指示號(hào),判斷錯(cuò)碼可能的位置。然而這種查錯(cuò)方法不是很準(zhǔn)確,因此程序開(kāi)發(fā)人員無(wú)法準(zhǔn)確地推測(cè)出錯(cuò)碼所在的位置。
再者,目前常用的另一種查錯(cuò)方法是由程序開(kāi)發(fā)人員在原始程序代碼可能發(fā)生錯(cuò)碼的前后范圍內(nèi)添加一些測(cè)試用的臨時(shí)指令,由這些測(cè)試用的臨時(shí)指令的執(zhí)行結(jié)果判斷錯(cuò)碼所在的位置;在最后找到及修正錯(cuò)碼之后,再將這些測(cè)試用的臨時(shí)指令刪除。這種查錯(cuò)方法需要在事前添加及事后刪除這些測(cè)試用的臨時(shí)指令的過(guò)程頗為費(fèi)力費(fèi)時(shí),因此并非一種快速且有效率的查錯(cuò)方法。
發(fā)明內(nèi)容
為克服上述現(xiàn)有技術(shù)的缺點(diǎn),本發(fā)明的主要目的在于提供一種可協(xié)助程序開(kāi)發(fā)人員更有效地對(duì)發(fā)生錯(cuò)碼的BIOS程序進(jìn)行查錯(cuò)工作的計(jì)算機(jī)程序查錯(cuò)輔助方法及系統(tǒng)。
本發(fā)明的計(jì)算機(jī)程序查錯(cuò)輔助方法及系統(tǒng)是應(yīng)用在計(jì)算機(jī)平臺(tái),在該計(jì)算機(jī)平臺(tái)上的一個(gè)計(jì)算機(jī)程序,例如BIOS程序發(fā)生錯(cuò)碼狀況未能順利執(zhí)行時(shí),對(duì)該BIOS程序提供一有效的查錯(cuò)輔助功能,協(xié)助程序開(kāi)發(fā)人員更為快速地找到該BIOS程序中錯(cuò)碼所在的位置。
本發(fā)明的計(jì)算機(jī)程序查錯(cuò)輔助方法至少包括整編該計(jì)算機(jī)程序在實(shí)際執(zhí)行時(shí)包括的所有程序模塊;計(jì)算出整編成的各個(gè)程序模塊在實(shí)際執(zhí)行時(shí)所在的內(nèi)存地址;利用一當(dāng)機(jī)點(diǎn)地址作為關(guān)鍵詞,檢索出該發(fā)生錯(cuò)碼狀況的計(jì)算機(jī)程序的當(dāng)機(jī)點(diǎn)所相關(guān)的程序模塊;以及針對(duì)該檢索出的當(dāng)機(jī)點(diǎn)相關(guān)程序模塊進(jìn)行除錯(cuò)工作。
在實(shí)體架構(gòu)上,本發(fā)明的計(jì)算機(jī)程序查錯(cuò)輔助系統(tǒng)至少包括一使用者操控接口模塊,可提供一使用者操控接口;一程序整編模塊,其可整編該計(jì)算機(jī)程序于實(shí)際執(zhí)行時(shí)所包括的所有的程序模塊,并將這些程序模塊以一使用者可感知的信息形式通過(guò)該使用者操控接口模塊而顯示于該計(jì)算機(jī)平臺(tái)上;一執(zhí)行地址計(jì)算模塊,其可計(jì)算出該程序整編模塊所整編成的各個(gè)程序模塊于實(shí)際執(zhí)行時(shí)所在的內(nèi)存地址,并將所求得的執(zhí)行地址數(shù)據(jù)以一使用者可感知的信息形式通過(guò)該使用者操控接口模塊而顯示于該計(jì)算機(jī)平臺(tái)上;一檢索模塊,其可通過(guò)該使用者操控接口模塊來(lái)提供一使用者操控的檢索功能,借以利用一當(dāng)機(jī)點(diǎn)地址來(lái)檢索出該發(fā)生錯(cuò)碼狀況的計(jì)算機(jī)程序的當(dāng)機(jī)點(diǎn)所相關(guān)的程序模塊;以及一除錯(cuò)模塊,其可提供一使用者操控的除錯(cuò)功能,借以針對(duì)該檢索模塊所檢索出的當(dāng)機(jī)點(diǎn)相關(guān)的程序模塊來(lái)進(jìn)行除錯(cuò)工作。
本發(fā)明的計(jì)算機(jī)程序查錯(cuò)輔助方法及系統(tǒng)可自動(dòng)整編發(fā)生錯(cuò)碼的計(jì)算機(jī)程序中所有的程序模塊,并自動(dòng)計(jì)算出各個(gè)程序模塊在實(shí)際執(zhí)行時(shí)所在的內(nèi)存地址,程序開(kāi)發(fā)人員可利用發(fā)生錯(cuò)碼的計(jì)算機(jī)程序的當(dāng)機(jī)點(diǎn)地址檢索出當(dāng)機(jī)點(diǎn)相關(guān)的程序模塊。本發(fā)明讓程序開(kāi)發(fā)人員將查錯(cuò)范圍縮小到當(dāng)機(jī)點(diǎn)所相關(guān)的程序模塊,不必如現(xiàn)有作法以整個(gè)計(jì)算機(jī)程序(即所有的程序模塊)為范圍進(jìn)行查錯(cuò),因此可協(xié)助程序開(kāi)發(fā)人員更為快速及有效地找到錯(cuò)碼所在的位置。
圖1是本發(fā)明計(jì)算機(jī)程序查錯(cuò)輔助系統(tǒng)的應(yīng)用方式及其對(duì)象導(dǎo)向組件模型的系統(tǒng)架構(gòu)示意圖;圖2是本發(fā)明計(jì)算機(jī)程序查錯(cuò)輔助系統(tǒng)顯示的使用者操控接口的示意圖。
具體實(shí)施例方式
以下配合附圖,詳細(xì)說(shuō)明本發(fā)明計(jì)算機(jī)程序查錯(cuò)輔助方法及系統(tǒng)。
圖1顯示本發(fā)明的計(jì)算機(jī)程序查錯(cuò)輔助系統(tǒng)(如標(biāo)號(hào)100所指的方塊)的應(yīng)用方式。如圖所示,本發(fā)明的計(jì)算機(jī)程序查錯(cuò)輔助系統(tǒng)100在實(shí)際應(yīng)用是搭配到一計(jì)算機(jī)平臺(tái)10,在該計(jì)算機(jī)平臺(tái)10上的一個(gè)計(jì)算機(jī)程序,例如BIOS程序,發(fā)生錯(cuò)碼狀況未能順利執(zhí)行時(shí),對(duì)該具有錯(cuò)碼的BIOS程序20提供一查錯(cuò)輔助功能,協(xié)助程序開(kāi)發(fā)人員更快速、有效地找到該BIOS程序20中錯(cuò)碼所在的位置。
如圖1所示,本發(fā)明的計(jì)算機(jī)程序查錯(cuò)輔助系統(tǒng)100的對(duì)象導(dǎo)向組件模型(object-oriented component model)至少包括(a)一使用者操控接口模塊110;(b)一程序整編模塊120;(c)一執(zhí)行地址計(jì)算模塊130;(d)一檢索模塊140;以及(e)一除錯(cuò)模塊150。
首先分別說(shuō)明本發(fā)明的計(jì)算機(jī)程序查錯(cuò)輔助系統(tǒng)100中的各個(gè)模塊個(gè)別屬性及功能。
使用者操控接口模塊110可提供一如圖2所示的使用者操控接口111,并將此使用者操控接口111顯示在該計(jì)算機(jī)平臺(tái)10的屏幕11上,使用者(即程序開(kāi)發(fā)人員)可通過(guò)此使用者操控接口111操控本發(fā)明的計(jì)算機(jī)程序查錯(cuò)輔助系統(tǒng)100(注圖2僅以示意方式顯示使用者操控接口111的基本方式,在具體實(shí)施上,可有許多不同的展現(xiàn)方式,以及可包括許多其它的控制鍵及選項(xiàng))。圖2所示的使用者操控接口111例如包括一程序模塊顯示區(qū)112、一執(zhí)行地址顯示區(qū)113、一檢索關(guān)鍵詞輸入?yún)^(qū)114和一檢索結(jié)果顯示區(qū)115;其中該程序模塊顯示區(qū)112顯示該BIOS程序20中所有程序模塊的名稱;該執(zhí)行地址顯示區(qū)113顯示該BIOS程序20中各個(gè)程序模塊在實(shí)際執(zhí)行時(shí)的內(nèi)存地址(以區(qū)段及起始值表示);該檢索關(guān)鍵詞輸入?yún)^(qū)114是讓使用者(即程序開(kāi)發(fā)人員)輸入該發(fā)生錯(cuò)碼的BIOS程序20在實(shí)際執(zhí)行時(shí)的當(dāng)機(jī)點(diǎn)地址;該檢索結(jié)果顯示區(qū)115則顯示出檢索結(jié)果(即檢索關(guān)鍵詞輸入?yún)^(qū)114接收到的當(dāng)機(jī)點(diǎn)地址相關(guān)的程序模塊)。
程序整編模塊120可自動(dòng)整編發(fā)生錯(cuò)碼狀況的BIOS程序20在實(shí)際執(zhí)行時(shí)所需的所有的程序模塊(也就是該BIOS程序20在編譯過(guò)程產(chǎn)生的所有中間文件),并將其整編成一程序模塊集121。在實(shí)際操作時(shí),使用者操控接口模塊110即可將此程序整編模塊120整編成的程序模塊集121中所有程序模塊的名稱顯示在圖2所示的使用者操控接口111中的程序模塊顯示區(qū)112。
執(zhí)行地址計(jì)算模塊130可計(jì)算上述程序整編模塊120整編成的程序模塊集121中各個(gè)程序模塊在實(shí)際執(zhí)行時(shí)所在的內(nèi)存地址。在此實(shí)施例中,所求得的執(zhí)行地址是以區(qū)段(segment)及起始值(offset)表示。在實(shí)際操作時(shí),使用者操控接口模塊110即可將此執(zhí)行地址計(jì)算模塊130求得的執(zhí)行地址數(shù)據(jù),顯示在圖2所示的使用者操控接口111中的執(zhí)行地址顯示區(qū)113。
檢索模塊140可提供一使用者操控的程序模塊檢索功能,也就是它可響應(yīng)一使用者操控事件201輸入的當(dāng)機(jī)點(diǎn)地址數(shù)據(jù),從上述程序整編模塊120整編的程序模塊集121中,檢索出輸入的當(dāng)機(jī)點(diǎn)地址相關(guān)的程序模塊,并將其檢索結(jié)果顯示在圖2所示的使用者操控接口111中的檢索結(jié)果顯示區(qū)115。在具體實(shí)施上,此當(dāng)機(jī)點(diǎn)地址數(shù)據(jù)的取得方法例如可采用現(xiàn)有的ITP(In-Target Probe)設(shè)備或其它等效的裝置。此外,此檢索模塊140也可進(jìn)而包括一呼叫來(lái)源查詢功能,使用者可查詢出該當(dāng)機(jī)點(diǎn)相關(guān)的程序模塊在實(shí)際執(zhí)行時(shí)被呼叫來(lái)執(zhí)行時(shí)的呼叫來(lái)源(即哪一個(gè)程序模塊呼叫該當(dāng)機(jī)點(diǎn)相關(guān)的程序模塊)。在具體實(shí)施上,此呼叫來(lái)源查詢功能例如可使用BIOS程序設(shè)計(jì)上所用的CALL、JSB和ROM Gate協(xié)助查詢出該當(dāng)機(jī)點(diǎn)相關(guān)程序模塊的呼叫來(lái)源。
除錯(cuò)模塊150可提供一使用者操控的除錯(cuò)功能,程序開(kāi)發(fā)人員可僅針對(duì)上述檢索模塊140檢索出的程序模塊(也就是當(dāng)機(jī)點(diǎn)相關(guān)的程序模塊)進(jìn)行除錯(cuò)工作。此除錯(cuò)模塊150例如可在該當(dāng)機(jī)點(diǎn)相關(guān)程序模塊設(shè)定一斷點(diǎn)或采用任何其它適當(dāng)方法進(jìn)行除錯(cuò)工作,得到一除錯(cuò)后的BIOS程序30。
以下以應(yīng)用實(shí)例說(shuō)明本發(fā)明的計(jì)算機(jī)程序查錯(cuò)輔助系統(tǒng)100應(yīng)用在計(jì)算機(jī)程序查錯(cuò)輔助方法的操作步驟。在此應(yīng)用實(shí)例中,假設(shè)具有錯(cuò)碼的BIOS程序20中包括多個(gè)如圖2的程序模塊顯示區(qū)112所示的多個(gè)程序模塊,且其中名稱為″CHECK_HEALTH″的程序模塊具有錯(cuò)碼,使得該BIOS程序20在實(shí)際執(zhí)行時(shí)會(huì)導(dǎo)致計(jì)算機(jī)平臺(tái)10發(fā)生當(dāng)機(jī)狀況。本發(fā)明的計(jì)算機(jī)程序查錯(cuò)輔助系統(tǒng)100即可協(xié)助程序開(kāi)發(fā)人員快速、有效地找出具有錯(cuò)碼的程序模塊″CHECK_HEALTH″,針對(duì)此具有錯(cuò)碼的程序模塊″CHECK_HEALTH″快速地進(jìn)行除錯(cuò)工作。
請(qǐng)同時(shí)參閱圖1和圖2,在實(shí)際應(yīng)用時(shí),當(dāng)具有錯(cuò)碼的BIOS程序20的執(zhí)行導(dǎo)致計(jì)算機(jī)平臺(tái)10發(fā)生當(dāng)機(jī)狀況時(shí),程序開(kāi)發(fā)人員即可啟動(dòng)本發(fā)明的計(jì)算機(jī)程序查錯(cuò)輔助系統(tǒng)100進(jìn)行一查錯(cuò)程序。
本發(fā)明的計(jì)算機(jī)程序查錯(cuò)輔助方法的操作步驟包括,計(jì)算機(jī)程序查錯(cuò)輔助系統(tǒng)100會(huì)手首先啟動(dòng)使用者操控接口模塊110,在計(jì)算機(jī)平臺(tái)10的屏幕11上顯示出一如圖2所示的使用者操控接口111,并同時(shí)啟動(dòng)程序整編模塊120整編發(fā)生錯(cuò)碼狀況的BIOS程序20在實(shí)際執(zhí)行時(shí)包括的所有程序模塊(也就是該BIOS程序20在編譯過(guò)程產(chǎn)生的所有中間文件),并接著令執(zhí)行地址計(jì)算模塊130對(duì)該程序整編模塊120整編成的程序模塊集121中所有程序模塊執(zhí)行一執(zhí)行地址計(jì)算程序,計(jì)算出各個(gè)程序模塊在實(shí)際執(zhí)行時(shí)所在的內(nèi)存地址。接著令使用者操控接口模塊110將該程序整編模塊120整編成的所有程序模塊,連同該執(zhí)行地址計(jì)算模塊130計(jì)算出的執(zhí)行地址數(shù)據(jù),以使用者可感知的信息形式分別顯示在使用者操控接口111中的程序模塊顯示區(qū)112和執(zhí)行地址顯示區(qū)113,程序開(kāi)發(fā)人員可通過(guò)該使用者操控接口模塊110瀏覽該發(fā)生錯(cuò)碼狀況的BIOS程序20中所有程序模塊及其執(zhí)行地址范圍。
此時(shí),程序開(kāi)發(fā)人員即可通過(guò)使用者操控接口111中的檢索關(guān)鍵詞輸入?yún)^(qū)114,輸入該BIOS程序20的當(dāng)機(jī)點(diǎn)地址數(shù)據(jù),例如為[1000:1234],即可令檢索模塊140從該程序整編模塊120整編成的程序模塊集121中,檢索出該當(dāng)機(jī)點(diǎn)地址相關(guān)的程序模塊(也就是名稱為″CHECK_HEALTH″的程序模塊),并將檢索結(jié)果顯示在圖2所示的使用者操控接口111中的檢索結(jié)果顯示區(qū)115。此外,程序開(kāi)發(fā)人員也可進(jìn)而使用檢索模塊140查詢出該當(dāng)機(jī)點(diǎn)相關(guān)程序模塊″CHECK_HEALTH″在實(shí)際執(zhí)行時(shí)被呼叫來(lái)執(zhí)行時(shí)的呼叫來(lái)源(即哪一個(gè)程序模塊呼叫該當(dāng)機(jī)點(diǎn)相關(guān)程序模塊),例如使用BIOS程序設(shè)計(jì)上所用的CALL、JSB和ROM Gate查詢出該當(dāng)機(jī)點(diǎn)相關(guān)程序模塊″CHECK_HEALTH″的呼叫來(lái)源。
接著程序開(kāi)發(fā)人員即可啟用除錯(cuò)模塊150,針對(duì)上述檢索模塊140檢索出的程序模塊″CHECK_HEALTH″進(jìn)行除錯(cuò)工作。此除錯(cuò)模塊150例如可在該當(dāng)機(jī)點(diǎn)相關(guān)程序模塊設(shè)定一斷點(diǎn)或采用任何其它適當(dāng)?shù)姆椒ㄟM(jìn)行除錯(cuò)工作,得到一除錯(cuò)后的BIOS程序30。
因此該計(jì)算機(jī)程序查錯(cuò)輔助方法至少包括首先,整編該計(jì)算機(jī)程序在實(shí)際執(zhí)行時(shí)包括的所有程序模塊;隨后,計(jì)算出整編成的各個(gè)程序模塊在實(shí)際執(zhí)行時(shí)所在的內(nèi)存地址;接著,利用一當(dāng)機(jī)點(diǎn)地址作為關(guān)鍵詞,檢索出該發(fā)生錯(cuò)碼狀況的計(jì)算機(jī)程序的當(dāng)機(jī)點(diǎn)相關(guān)的程序模塊,最后,針對(duì)該檢索出的當(dāng)機(jī)點(diǎn)相關(guān)程序模塊進(jìn)行除錯(cuò)工作。
總而言之,本發(fā)明提供了一種新穎的計(jì)算機(jī)程序查錯(cuò)輔助方法及系統(tǒng),可對(duì)程序開(kāi)發(fā)人員提供一有效率的計(jì)算機(jī)程序查錯(cuò)輔助功能;本發(fā)明可自動(dòng)整編發(fā)生錯(cuò)碼的計(jì)算機(jī)程序中所有程序模塊,并自動(dòng)計(jì)算出各個(gè)程序模塊在實(shí)際執(zhí)行時(shí)所在的內(nèi)存地址,程序開(kāi)發(fā)人員可利用發(fā)生錯(cuò)碼的計(jì)算機(jī)程序的當(dāng)機(jī)點(diǎn)地址,檢索出當(dāng)機(jī)點(diǎn)相關(guān)的程序模塊,本發(fā)明可讓程序開(kāi)發(fā)人員將查錯(cuò)范圍縮小到當(dāng)機(jī)點(diǎn)所相關(guān)程序模塊,不必如現(xiàn)有作法,需要對(duì)整個(gè)計(jì)算機(jī)程序(即所有程序模塊)為范圍進(jìn)行查錯(cuò),因此可協(xié)助程序開(kāi)發(fā)人員更為快速、有效地找到錯(cuò)碼所在的位置。
權(quán)利要求
1.一種計(jì)算機(jī)程序查錯(cuò)輔助方法,應(yīng)用在一計(jì)算機(jī)平臺(tái),對(duì)一發(fā)生錯(cuò)碼狀況的計(jì)算機(jī)程序提供查錯(cuò)輔助功能,其特征在于,該計(jì)算機(jī)程序查錯(cuò)輔助方法至少包括整編該計(jì)算機(jī)程序在實(shí)際執(zhí)行時(shí)包括的所有程序模塊;計(jì)算出整編成的各個(gè)程序模塊在實(shí)際執(zhí)行時(shí)所在的內(nèi)存地址;利用一當(dāng)機(jī)點(diǎn)地址作為關(guān)鍵詞,檢索出該發(fā)生錯(cuò)碼狀況的計(jì)算機(jī)程序的當(dāng)機(jī)點(diǎn)所相關(guān)的程序模塊;以及針對(duì)該檢索出的當(dāng)機(jī)點(diǎn)相關(guān)程序模塊進(jìn)行除錯(cuò)工作。
2.如權(quán)利要求1所述的計(jì)算機(jī)程序查錯(cuò)輔助方法,其特征在于,該計(jì)算機(jī)程序?yàn)橐籅IOS程序。
3.如權(quán)利要求1所述的計(jì)算機(jī)程序查錯(cuò)輔助方法,其特征在于,該計(jì)算機(jī)程序查錯(cuò)輔助方法進(jìn)而還包括一呼叫來(lái)源查詢程序,查詢出當(dāng)機(jī)點(diǎn)相關(guān)的程序模塊實(shí)在際執(zhí)行時(shí)被呼叫來(lái)執(zhí)行時(shí)的呼叫來(lái)源。
4.如權(quán)利要求1所述的計(jì)算機(jī)程序查錯(cuò)輔助方法,其特征在于,該當(dāng)機(jī)點(diǎn)地址的取得方法是采用一ITP設(shè)備。
5.一種計(jì)算機(jī)程序查錯(cuò)輔助系統(tǒng),可搭配到一計(jì)算機(jī)平臺(tái),對(duì)一發(fā)生錯(cuò)碼狀況的計(jì)算機(jī)程序提供一查錯(cuò)輔助功能,其特征在于,該計(jì)算機(jī)程序查錯(cuò)輔助系統(tǒng)至少包括一使用者操控接口模塊,其可提供一使用者操控接口;一程序整編模塊,其可整編該計(jì)算機(jī)程序于實(shí)際執(zhí)行時(shí)所包括的所有的程序模塊,并將這些程序模塊以一使用者可感知的信息形式通過(guò)該使用者操控接口模塊而顯示于該計(jì)算機(jī)平臺(tái)上;一執(zhí)行地址計(jì)算模塊,其可計(jì)算出該程序整編模塊所整編成的各個(gè)程序模塊于實(shí)際執(zhí)行時(shí)所在的內(nèi)存地址,并將所求得的執(zhí)行地址數(shù)據(jù)以一使用者可感知的信息形式通過(guò)該使用者操控接口模塊而顯示于該計(jì)算機(jī)平臺(tái)上;一檢索模塊,其可通過(guò)該使用者操控接口模塊來(lái)提供一使用者操控的檢索功能,借以利用一當(dāng)機(jī)點(diǎn)地址來(lái)檢索出該發(fā)生錯(cuò)碼狀況的計(jì)算機(jī)程序的當(dāng)機(jī)點(diǎn)所相關(guān)的程序模塊;以及一除錯(cuò)模塊,其可提供一使用者操控的除錯(cuò)功能,借以針對(duì)該檢索模塊所檢索出的當(dāng)機(jī)點(diǎn)相關(guān)的程序模塊來(lái)進(jìn)行除錯(cuò)工作。
6.如權(quán)利要求5所述的計(jì)算機(jī)程序查錯(cuò)輔助系統(tǒng),其特征在于,該計(jì)算機(jī)程序?yàn)橐籅IOS程序。
7.如權(quán)利要求5所述的計(jì)算機(jī)程序查錯(cuò)輔助系統(tǒng),其特征在于,該檢索模塊進(jìn)而包括一呼叫來(lái)源查詢功能,借以查詢出當(dāng)機(jī)點(diǎn)相關(guān)的程序模塊于實(shí)際執(zhí)行時(shí)被呼叫來(lái)執(zhí)行時(shí)的呼叫來(lái)源。
8.如權(quán)利要求5所述的計(jì)算機(jī)程序查錯(cuò)輔助系統(tǒng),其特征在于,該當(dāng)機(jī)點(diǎn)地址的取得方法是采用一ITP設(shè)備。
全文摘要
一種計(jì)算機(jī)程序查錯(cuò)輔助方法及系統(tǒng),搭配一計(jì)算機(jī)平臺(tái),對(duì)發(fā)生錯(cuò)碼狀況的計(jì)算機(jī)程序提供一查錯(cuò)輔助功能;該計(jì)算機(jī)程序查錯(cuò)輔助系統(tǒng)至少包括使用者操控接口模塊、程序整編模塊、執(zhí)行地址計(jì)算模塊、檢索模塊以及除錯(cuò)模塊;本發(fā)明的計(jì)算機(jī)程序查錯(cuò)輔助方法及系統(tǒng)可自動(dòng)整編發(fā)生錯(cuò)碼的計(jì)算機(jī)程序中所有的程序模塊,并自動(dòng)計(jì)算出各個(gè)程序模塊在實(shí)際執(zhí)行時(shí)所在的內(nèi)存地址,程序開(kāi)發(fā)人員可利用發(fā)生錯(cuò)碼的計(jì)算機(jī)程序的當(dāng)機(jī)點(diǎn)地址檢索出當(dāng)機(jī)點(diǎn)相關(guān)的程序模塊;本發(fā)明讓程序開(kāi)發(fā)人員將查錯(cuò)范圍縮小到當(dāng)機(jī)點(diǎn)相關(guān)程序模塊,不必如現(xiàn)有作法以整個(gè)計(jì)算機(jī)程序(即所有的程序模塊)為范圍進(jìn)行查錯(cuò),因此可協(xié)助程序開(kāi)發(fā)人員更為快速及有效地找到錯(cuò)碼所在的位置。
文檔編號(hào)G06F11/36GK1952910SQ200510114338
公開(kāi)日2007年4月25日 申請(qǐng)日期2005年10月20日 優(yōu)先權(quán)日2005年10月20日
發(fā)明者盧義村 申請(qǐng)人:英業(yè)達(dá)股份有限公司