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

計算機程序查錯輔助方法及系統(tǒng)的制作方法

文檔序號:6649902閱讀:274來源:國知局
專利名稱:計算機程序查錯輔助方法及系統(tǒng)的制作方法
技術(shù)領(lǐng)域
本發(fā)明是關(guān)于一種計算機信息技術(shù),特別是關(guān)于一種計算機程序查錯輔助方法及系統(tǒng),應(yīng)用在計算機平臺,當該計算機平臺上的一個計算機程序,例如基本輸出入系統(tǒng)(Basic Input/Output System,BIOS)程序,發(fā)生錯碼狀況未能順利執(zhí)行時,對該BIOS程序提供有效率的查錯輔助功能,協(xié)助程序開發(fā)人員更快速地找到該BIOS程序中的錯碼所在的位置。
背景技術(shù)
在計算機程序的開發(fā)上,當程序開發(fā)人員開發(fā)出一個計算機程序(例如BIOS程序)之后,通常需要首先在計算機平臺上對該BIOS程序進行測試程序,也就是在該計算機平臺上實際執(zhí)行該BIOS程序,測試該BIOS程序是否可正常運行。若是該BIOS程序無法通過正常運行提供預(yù)定的功能、或是在實際執(zhí)行時導(dǎo)致該計算機平臺發(fā)生當機狀況,程序開發(fā)人員便需要對該BIOS程序進行查錯工作,找出及更正該BIOS程序中的錯碼。
斷點查錯方法是一種常用的BIOS程序查錯方法,它是由程序開發(fā)人員在BIOS程序指令串中的一個特定位置(也就是程序開發(fā)人員認為最可能發(fā)生錯碼處附近),預(yù)先經(jīng)由修改程序設(shè)定一斷點(breakpoint),使得BIOS程序執(zhí)行到此斷點時即會自動停止,程序開發(fā)人員在此時可檢查各個緩存器和變量值來逐步找出出錯的位置。
然而上述斷點查錯方法在實際應(yīng)用上的一項缺點是,程序開發(fā)人員須以人工方式在BIOS程序的編譯上相關(guān)的*.MAP(Link Editor Map)文檔中,搜尋BIOS程序中的各個程序模塊在實際執(zhí)行時的內(nèi)存地址,也就是區(qū)段(segment)及起始值(offset),此作業(yè)過程頗為繁瑣而效率較低。此外,現(xiàn)有的斷點查錯方法是以整個BIOS程序(即所有程序模塊)為范圍進行查錯,因此作業(yè)過程也頗為費時費力而沒有效率。
此外,目前業(yè)界常用的另一種查錯方法是由程序開發(fā)人員在BIOS程序因發(fā)生錯碼狀況中止執(zhí)行時,通過計算機主板上一組特定的指示燈,例如BIOS芯片的Port84和Port84相關(guān)的指示號,判斷錯碼可能的位置。然而這種查錯方法不是很準確,因此程序開發(fā)人員無法準確地推測出錯碼所在的位置。
再者,目前常用的另一種查錯方法是由程序開發(fā)人員在原始程序代碼可能發(fā)生錯碼的前后范圍內(nèi)添加一些測試用的臨時指令,由這些測試用的臨時指令的執(zhí)行結(jié)果判斷錯碼所在的位置;在最后找到及修正錯碼之后,再將這些測試用的臨時指令刪除。這種查錯方法需要在事前添加及事后刪除這些測試用的臨時指令的過程頗為費力費時,因此并非一種快速且有效率的查錯方法。

發(fā)明內(nèi)容
為克服上述現(xiàn)有技術(shù)的缺點,本發(fā)明的主要目的在于提供一種可協(xié)助程序開發(fā)人員更有效地對發(fā)生錯碼的BIOS程序進行查錯工作的計算機程序查錯輔助方法及系統(tǒng)。
本發(fā)明的計算機程序查錯輔助方法及系統(tǒng)是應(yīng)用在計算機平臺,在該計算機平臺上的一個計算機程序,例如BIOS程序發(fā)生錯碼狀況未能順利執(zhí)行時,對該BIOS程序提供一有效的查錯輔助功能,協(xié)助程序開發(fā)人員更為快速地找到該BIOS程序中錯碼所在的位置。
本發(fā)明的計算機程序查錯輔助方法至少包括整編該計算機程序在實際執(zhí)行時包括的所有程序模塊;計算出整編成的各個程序模塊在實際執(zhí)行時所在的內(nèi)存地址;利用一當機點地址作為關(guān)鍵詞,檢索出該發(fā)生錯碼狀況的計算機程序的當機點所相關(guān)的程序模塊;以及針對該檢索出的當機點相關(guān)程序模塊進行除錯工作。
在實體架構(gòu)上,本發(fā)明的計算機程序查錯輔助系統(tǒng)至少包括一使用者操控接口模塊,可提供一使用者操控接口;一程序整編模塊,其可整編該計算機程序于實際執(zhí)行時所包括的所有的程序模塊,并將這些程序模塊以一使用者可感知的信息形式通過該使用者操控接口模塊而顯示于該計算機平臺上;一執(zhí)行地址計算模塊,其可計算出該程序整編模塊所整編成的各個程序模塊于實際執(zhí)行時所在的內(nèi)存地址,并將所求得的執(zhí)行地址數(shù)據(jù)以一使用者可感知的信息形式通過該使用者操控接口模塊而顯示于該計算機平臺上;一檢索模塊,其可通過該使用者操控接口模塊來提供一使用者操控的檢索功能,借以利用一當機點地址來檢索出該發(fā)生錯碼狀況的計算機程序的當機點所相關(guān)的程序模塊;以及一除錯模塊,其可提供一使用者操控的除錯功能,借以針對該檢索模塊所檢索出的當機點相關(guān)的程序模塊來進行除錯工作。
本發(fā)明的計算機程序查錯輔助方法及系統(tǒng)可自動整編發(fā)生錯碼的計算機程序中所有的程序模塊,并自動計算出各個程序模塊在實際執(zhí)行時所在的內(nèi)存地址,程序開發(fā)人員可利用發(fā)生錯碼的計算機程序的當機點地址檢索出當機點相關(guān)的程序模塊。本發(fā)明讓程序開發(fā)人員將查錯范圍縮小到當機點所相關(guān)的程序模塊,不必如現(xiàn)有作法以整個計算機程序(即所有的程序模塊)為范圍進行查錯,因此可協(xié)助程序開發(fā)人員更為快速及有效地找到錯碼所在的位置。


圖1是本發(fā)明計算機程序查錯輔助系統(tǒng)的應(yīng)用方式及其對象導(dǎo)向組件模型的系統(tǒng)架構(gòu)示意圖;圖2是本發(fā)明計算機程序查錯輔助系統(tǒng)顯示的使用者操控接口的示意圖。
具體實施例方式
以下配合附圖,詳細說明本發(fā)明計算機程序查錯輔助方法及系統(tǒng)。
圖1顯示本發(fā)明的計算機程序查錯輔助系統(tǒng)(如標號100所指的方塊)的應(yīng)用方式。如圖所示,本發(fā)明的計算機程序查錯輔助系統(tǒng)100在實際應(yīng)用是搭配到一計算機平臺10,在該計算機平臺10上的一個計算機程序,例如BIOS程序,發(fā)生錯碼狀況未能順利執(zhí)行時,對該具有錯碼的BIOS程序20提供一查錯輔助功能,協(xié)助程序開發(fā)人員更快速、有效地找到該BIOS程序20中錯碼所在的位置。
如圖1所示,本發(fā)明的計算機程序查錯輔助系統(tǒng)100的對象導(dǎo)向組件模型(object-oriented component model)至少包括(a)一使用者操控接口模塊110;(b)一程序整編模塊120;(c)一執(zhí)行地址計算模塊130;(d)一檢索模塊140;以及(e)一除錯模塊150。
首先分別說明本發(fā)明的計算機程序查錯輔助系統(tǒng)100中的各個模塊個別屬性及功能。
使用者操控接口模塊110可提供一如圖2所示的使用者操控接口111,并將此使用者操控接口111顯示在該計算機平臺10的屏幕11上,使用者(即程序開發(fā)人員)可通過此使用者操控接口111操控本發(fā)明的計算機程序查錯輔助系統(tǒng)100(注圖2僅以示意方式顯示使用者操控接口111的基本方式,在具體實施上,可有許多不同的展現(xiàn)方式,以及可包括許多其它的控制鍵及選項)。圖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中各個程序模塊在實際執(zhí)行時的內(nèi)存地址(以區(qū)段及起始值表示);該檢索關(guān)鍵詞輸入?yún)^(qū)114是讓使用者(即程序開發(fā)人員)輸入該發(fā)生錯碼的BIOS程序20在實際執(zhí)行時的當機點地址;該檢索結(jié)果顯示區(qū)115則顯示出檢索結(jié)果(即檢索關(guān)鍵詞輸入?yún)^(qū)114接收到的當機點地址相關(guān)的程序模塊)。
程序整編模塊120可自動整編發(fā)生錯碼狀況的BIOS程序20在實際執(zhí)行時所需的所有的程序模塊(也就是該BIOS程序20在編譯過程產(chǎn)生的所有中間文件),并將其整編成一程序模塊集121。在實際操作時,使用者操控接口模塊110即可將此程序整編模塊120整編成的程序模塊集121中所有程序模塊的名稱顯示在圖2所示的使用者操控接口111中的程序模塊顯示區(qū)112。
執(zhí)行地址計算模塊130可計算上述程序整編模塊120整編成的程序模塊集121中各個程序模塊在實際執(zhí)行時所在的內(nèi)存地址。在此實施例中,所求得的執(zhí)行地址是以區(qū)段(segment)及起始值(offset)表示。在實際操作時,使用者操控接口模塊110即可將此執(zhí)行地址計算模塊130求得的執(zhí)行地址數(shù)據(jù),顯示在圖2所示的使用者操控接口111中的執(zhí)行地址顯示區(qū)113。
檢索模塊140可提供一使用者操控的程序模塊檢索功能,也就是它可響應(yīng)一使用者操控事件201輸入的當機點地址數(shù)據(jù),從上述程序整編模塊120整編的程序模塊集121中,檢索出輸入的當機點地址相關(guān)的程序模塊,并將其檢索結(jié)果顯示在圖2所示的使用者操控接口111中的檢索結(jié)果顯示區(qū)115。在具體實施上,此當機點地址數(shù)據(jù)的取得方法例如可采用現(xiàn)有的ITP(In-Target Probe)設(shè)備或其它等效的裝置。此外,此檢索模塊140也可進而包括一呼叫來源查詢功能,使用者可查詢出該當機點相關(guān)的程序模塊在實際執(zhí)行時被呼叫來執(zhí)行時的呼叫來源(即哪一個程序模塊呼叫該當機點相關(guān)的程序模塊)。在具體實施上,此呼叫來源查詢功能例如可使用BIOS程序設(shè)計上所用的CALL、JSB和ROM Gate協(xié)助查詢出該當機點相關(guān)程序模塊的呼叫來源。
除錯模塊150可提供一使用者操控的除錯功能,程序開發(fā)人員可僅針對上述檢索模塊140檢索出的程序模塊(也就是當機點相關(guān)的程序模塊)進行除錯工作。此除錯模塊150例如可在該當機點相關(guān)程序模塊設(shè)定一斷點或采用任何其它適當方法進行除錯工作,得到一除錯后的BIOS程序30。
以下以應(yīng)用實例說明本發(fā)明的計算機程序查錯輔助系統(tǒng)100應(yīng)用在計算機程序查錯輔助方法的操作步驟。在此應(yīng)用實例中,假設(shè)具有錯碼的BIOS程序20中包括多個如圖2的程序模塊顯示區(qū)112所示的多個程序模塊,且其中名稱為″CHECK_HEALTH″的程序模塊具有錯碼,使得該BIOS程序20在實際執(zhí)行時會導(dǎo)致計算機平臺10發(fā)生當機狀況。本發(fā)明的計算機程序查錯輔助系統(tǒng)100即可協(xié)助程序開發(fā)人員快速、有效地找出具有錯碼的程序模塊″CHECK_HEALTH″,針對此具有錯碼的程序模塊″CHECK_HEALTH″快速地進行除錯工作。
請同時參閱圖1和圖2,在實際應(yīng)用時,當具有錯碼的BIOS程序20的執(zhí)行導(dǎo)致計算機平臺10發(fā)生當機狀況時,程序開發(fā)人員即可啟動本發(fā)明的計算機程序查錯輔助系統(tǒng)100進行一查錯程序。
本發(fā)明的計算機程序查錯輔助方法的操作步驟包括,計算機程序查錯輔助系統(tǒng)100會手首先啟動使用者操控接口模塊110,在計算機平臺10的屏幕11上顯示出一如圖2所示的使用者操控接口111,并同時啟動程序整編模塊120整編發(fā)生錯碼狀況的BIOS程序20在實際執(zhí)行時包括的所有程序模塊(也就是該BIOS程序20在編譯過程產(chǎn)生的所有中間文件),并接著令執(zhí)行地址計算模塊130對該程序整編模塊120整編成的程序模塊集121中所有程序模塊執(zhí)行一執(zhí)行地址計算程序,計算出各個程序模塊在實際執(zhí)行時所在的內(nèi)存地址。接著令使用者操控接口模塊110將該程序整編模塊120整編成的所有程序模塊,連同該執(zhí)行地址計算模塊130計算出的執(zhí)行地址數(shù)據(jù),以使用者可感知的信息形式分別顯示在使用者操控接口111中的程序模塊顯示區(qū)112和執(zhí)行地址顯示區(qū)113,程序開發(fā)人員可通過該使用者操控接口模塊110瀏覽該發(fā)生錯碼狀況的BIOS程序20中所有程序模塊及其執(zhí)行地址范圍。
此時,程序開發(fā)人員即可通過使用者操控接口111中的檢索關(guān)鍵詞輸入?yún)^(qū)114,輸入該BIOS程序20的當機點地址數(shù)據(jù),例如為[1000:1234],即可令檢索模塊140從該程序整編模塊120整編成的程序模塊集121中,檢索出該當機點地址相關(guān)的程序模塊(也就是名稱為″CHECK_HEALTH″的程序模塊),并將檢索結(jié)果顯示在圖2所示的使用者操控接口111中的檢索結(jié)果顯示區(qū)115。此外,程序開發(fā)人員也可進而使用檢索模塊140查詢出該當機點相關(guān)程序模塊″CHECK_HEALTH″在實際執(zhí)行時被呼叫來執(zhí)行時的呼叫來源(即哪一個程序模塊呼叫該當機點相關(guān)程序模塊),例如使用BIOS程序設(shè)計上所用的CALL、JSB和ROM Gate查詢出該當機點相關(guān)程序模塊″CHECK_HEALTH″的呼叫來源。
接著程序開發(fā)人員即可啟用除錯模塊150,針對上述檢索模塊140檢索出的程序模塊″CHECK_HEALTH″進行除錯工作。此除錯模塊150例如可在該當機點相關(guān)程序模塊設(shè)定一斷點或采用任何其它適當?shù)姆椒ㄟM行除錯工作,得到一除錯后的BIOS程序30。
因此該計算機程序查錯輔助方法至少包括首先,整編該計算機程序在實際執(zhí)行時包括的所有程序模塊;隨后,計算出整編成的各個程序模塊在實際執(zhí)行時所在的內(nèi)存地址;接著,利用一當機點地址作為關(guān)鍵詞,檢索出該發(fā)生錯碼狀況的計算機程序的當機點相關(guān)的程序模塊,最后,針對該檢索出的當機點相關(guān)程序模塊進行除錯工作。
總而言之,本發(fā)明提供了一種新穎的計算機程序查錯輔助方法及系統(tǒng),可對程序開發(fā)人員提供一有效率的計算機程序查錯輔助功能;本發(fā)明可自動整編發(fā)生錯碼的計算機程序中所有程序模塊,并自動計算出各個程序模塊在實際執(zhí)行時所在的內(nèi)存地址,程序開發(fā)人員可利用發(fā)生錯碼的計算機程序的當機點地址,檢索出當機點相關(guān)的程序模塊,本發(fā)明可讓程序開發(fā)人員將查錯范圍縮小到當機點所相關(guān)程序模塊,不必如現(xiàn)有作法,需要對整個計算機程序(即所有程序模塊)為范圍進行查錯,因此可協(xié)助程序開發(fā)人員更為快速、有效地找到錯碼所在的位置。
權(quán)利要求
1.一種計算機程序查錯輔助方法,應(yīng)用在一計算機平臺,對一發(fā)生錯碼狀況的計算機程序提供查錯輔助功能,其特征在于,該計算機程序查錯輔助方法至少包括整編該計算機程序在實際執(zhí)行時包括的所有程序模塊;計算出整編成的各個程序模塊在實際執(zhí)行時所在的內(nèi)存地址;利用一當機點地址作為關(guān)鍵詞,檢索出該發(fā)生錯碼狀況的計算機程序的當機點所相關(guān)的程序模塊;以及針對該檢索出的當機點相關(guān)程序模塊進行除錯工作。
2.如權(quán)利要求1所述的計算機程序查錯輔助方法,其特征在于,該計算機程序為一BIOS程序。
3.如權(quán)利要求1所述的計算機程序查錯輔助方法,其特征在于,該計算機程序查錯輔助方法進而還包括一呼叫來源查詢程序,查詢出當機點相關(guān)的程序模塊實在際執(zhí)行時被呼叫來執(zhí)行時的呼叫來源。
4.如權(quán)利要求1所述的計算機程序查錯輔助方法,其特征在于,該當機點地址的取得方法是采用一ITP設(shè)備。
5.一種計算機程序查錯輔助系統(tǒng),可搭配到一計算機平臺,對一發(fā)生錯碼狀況的計算機程序提供一查錯輔助功能,其特征在于,該計算機程序查錯輔助系統(tǒng)至少包括一使用者操控接口模塊,其可提供一使用者操控接口;一程序整編模塊,其可整編該計算機程序于實際執(zhí)行時所包括的所有的程序模塊,并將這些程序模塊以一使用者可感知的信息形式通過該使用者操控接口模塊而顯示于該計算機平臺上;一執(zhí)行地址計算模塊,其可計算出該程序整編模塊所整編成的各個程序模塊于實際執(zhí)行時所在的內(nèi)存地址,并將所求得的執(zhí)行地址數(shù)據(jù)以一使用者可感知的信息形式通過該使用者操控接口模塊而顯示于該計算機平臺上;一檢索模塊,其可通過該使用者操控接口模塊來提供一使用者操控的檢索功能,借以利用一當機點地址來檢索出該發(fā)生錯碼狀況的計算機程序的當機點所相關(guān)的程序模塊;以及一除錯模塊,其可提供一使用者操控的除錯功能,借以針對該檢索模塊所檢索出的當機點相關(guān)的程序模塊來進行除錯工作。
6.如權(quán)利要求5所述的計算機程序查錯輔助系統(tǒng),其特征在于,該計算機程序為一BIOS程序。
7.如權(quán)利要求5所述的計算機程序查錯輔助系統(tǒng),其特征在于,該檢索模塊進而包括一呼叫來源查詢功能,借以查詢出當機點相關(guān)的程序模塊于實際執(zhí)行時被呼叫來執(zhí)行時的呼叫來源。
8.如權(quán)利要求5所述的計算機程序查錯輔助系統(tǒng),其特征在于,該當機點地址的取得方法是采用一ITP設(shè)備。
全文摘要
一種計算機程序查錯輔助方法及系統(tǒng),搭配一計算機平臺,對發(fā)生錯碼狀況的計算機程序提供一查錯輔助功能;該計算機程序查錯輔助系統(tǒng)至少包括使用者操控接口模塊、程序整編模塊、執(zhí)行地址計算模塊、檢索模塊以及除錯模塊;本發(fā)明的計算機程序查錯輔助方法及系統(tǒng)可自動整編發(fā)生錯碼的計算機程序中所有的程序模塊,并自動計算出各個程序模塊在實際執(zhí)行時所在的內(nèi)存地址,程序開發(fā)人員可利用發(fā)生錯碼的計算機程序的當機點地址檢索出當機點相關(guān)的程序模塊;本發(fā)明讓程序開發(fā)人員將查錯范圍縮小到當機點相關(guān)程序模塊,不必如現(xiàn)有作法以整個計算機程序(即所有的程序模塊)為范圍進行查錯,因此可協(xié)助程序開發(fā)人員更為快速及有效地找到錯碼所在的位置。
文檔編號G06F11/36GK1952910SQ200510114338
公開日2007年4月25日 申請日期2005年10月20日 優(yōu)先權(quán)日2005年10月20日
發(fā)明者盧義村 申請人:英業(yè)達股份有限公司
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點贊!
1
古交市| 左权县| 陆丰市| 泗阳县| 綦江县| 麦盖提县| 宝兴县| 玉溪市| 临夏县| 合阳县| 腾冲县| 蒙山县| 登封市| 同德县| 万源市| 郧西县| 佳木斯市| 诏安县| 化隆| 泌阳县| 漠河县| 新和县| 呼玛县| 堆龙德庆县| 宿松县| 宜昌市| 崇礼县| 山东| 广宗县| 河曲县| 横山县| 德化县| 吐鲁番市| 攀枝花市| 稻城县| 靖安县| 建始县| 宁晋县| 古蔺县| 象州县| 通化市|