專(zhuān)利名稱(chēng):計(jì)算機(jī)程序數(shù)據(jù)自動(dòng)編譯方法及系統(tǒng)的制作方法
技術(shù)領(lǐng)域:
本發(fā)明是關(guān)于一種計(jì)算機(jī)信息技術(shù),特別是關(guān)于一種計(jì)算機(jī)程序數(shù)據(jù)自動(dòng)編譯方法及系統(tǒng),應(yīng)用于計(jì)算機(jī)程序及其相關(guān)的附屬數(shù)據(jù),例如BIOS(Basic Input/Output System)程序及其一組附屬數(shù)據(jù),內(nèi)容包括BIOS項(xiàng)目產(chǎn)品名稱(chēng)、建立日期、程序說(shuō)明、二進(jìn)制碼文件名、檢查碼、相關(guān)的項(xiàng)目執(zhí)行人員的電子郵件地址、用于儲(chǔ)放BIOS Flash可執(zhí)行文件的網(wǎng)絡(luò)地址、程序設(shè)計(jì)師簽名等,全部?jī)H響應(yīng)一個(gè)使用者操控事件,例如使用者用鼠標(biāo)點(diǎn)選一個(gè)圖形化按鍵,即可根據(jù)選擇完全自動(dòng)編譯成二進(jìn)制文件或一組BIOS Flash(簡(jiǎn)稱(chēng)為BF)可執(zhí)行文件,并將這些輸出文件連同附屬數(shù)據(jù)傳送至指定的網(wǎng)絡(luò)節(jié)點(diǎn),例如ROM測(cè)試平臺(tái)、文件服務(wù)器、項(xiàng)目相關(guān)執(zhí)行人員的網(wǎng)絡(luò)工作站等。
背景技術(shù):
BIOS(Basic Input/Output System)是個(gè)人計(jì)算機(jī)或網(wǎng)絡(luò)服務(wù)器中所采用的一種系統(tǒng)輸出入控制程序,作為操作系統(tǒng)與各個(gè)硬件組件和各個(gè)周邊裝置之間的接口,讓計(jì)算機(jī)平臺(tái)可通過(guò)其操作系統(tǒng)來(lái)操控此硬件組件和周邊裝置以利用其所提供的功能。
BIOS程序代碼的發(fā)展過(guò)程一般是首先以高級(jí)語(yǔ)言或匯編語(yǔ)言來(lái)撰寫(xiě)出一組計(jì)算機(jī)程序原始碼(source code);再接著將此原始碼編譯成BIN格式的二進(jìn)制碼文件;并在編譯完成后,再接著將BIN二進(jìn)制碼文件轉(zhuǎn)換成BIOS Flash可執(zhí)行文件;并在最后將此BIOS Flash可執(zhí)行文件移送至ROM測(cè)試平臺(tái)進(jìn)行測(cè)試。同時(shí)程序設(shè)計(jì)人員需自行通過(guò)手動(dòng)方式輸入與該BIOS項(xiàng)目計(jì)劃有關(guān)的一組附屬數(shù)據(jù),例如包括BIOS項(xiàng)目產(chǎn)品名稱(chēng)、建立日期、程序說(shuō)明、二進(jìn)制碼文件名、檢查碼、相關(guān)的項(xiàng)目執(zhí)行人員的電子郵件地址、用于儲(chǔ)放BIOS可執(zhí)行文件的網(wǎng)絡(luò)地址、程序設(shè)計(jì)師簽名等;并將這些附屬數(shù)據(jù)匯集成一個(gè)說(shuō)明文件,連同上述BIOS Flash可執(zhí)行文件一同交給測(cè)試人員或其它相關(guān)的工作人員。
然而現(xiàn)有的BIOS程序代碼發(fā)展方式的一項(xiàng)問(wèn)題在于程序設(shè)計(jì)人員需對(duì)每一個(gè)BIOS項(xiàng)目計(jì)劃來(lái)撰寫(xiě)一份說(shuō)明文件,大多數(shù)的BIOS項(xiàng)目計(jì)劃中的說(shuō)明文件的大部分內(nèi)容(例如測(cè)試平臺(tái)的網(wǎng)址、程序設(shè)計(jì)師簽名等)都完全相同,因此重復(fù)性的說(shuō)明文件資料輸入工作顯然使得整體的BIOS程序發(fā)展過(guò)程頗為費(fèi)時(shí)費(fèi)力而沒(méi)有效率。
再者,在BIOS的編譯過(guò)程中,常會(huì)由于系統(tǒng)環(huán)境參數(shù)設(shè)定錯(cuò)誤或編碼錯(cuò)誤使得編譯失敗。當(dāng)發(fā)生編譯錯(cuò)誤狀況時(shí),便需要由程序設(shè)計(jì)人員進(jìn)行檢錯(cuò)程序找出造成編譯失敗的原因,并更正錯(cuò)誤的系統(tǒng)環(huán)境參數(shù)設(shè)定值或重新更正原始碼。然而,現(xiàn)有做法中,由于此檢錯(cuò)程序須完全由程序設(shè)計(jì)人員輸入指令,并根據(jù)屏幕顯示找出錯(cuò)誤所在,因此其過(guò)程也極為耗時(shí)耗力且沒(méi)有效率。
此外,在BIOS Flash可執(zhí)行文件的產(chǎn)生過(guò)程中,使用者需使用多張磁盤(pán)(例如3張),產(chǎn)生所需的BIOS Flash可執(zhí)行文件。然而此做法的缺點(diǎn)在于軟盤(pán)讀寫(xiě)速度慢、抽換盤(pán)片的過(guò)程頗費(fèi)時(shí)費(fèi)力,且容易因其中任何一張盤(pán)片損壞而中斷BIOS Flash可執(zhí)行文件的產(chǎn)生程序。
發(fā)明內(nèi)容
為克服上述現(xiàn)有技術(shù)的缺點(diǎn),本發(fā)明的主要目的在于提供一種計(jì)算機(jī)程序數(shù)據(jù)自動(dòng)編譯方法及系統(tǒng),完全以自動(dòng)化方式編譯計(jì)算機(jī)程序及其附屬數(shù)據(jù),不必由程序設(shè)計(jì)人員以手控方式介入其中的編譯步驟。
本發(fā)明的另一目的在于提供一種計(jì)算機(jī)程序數(shù)據(jù)自動(dòng)編譯方法及系統(tǒng),其可在發(fā)生編譯錯(cuò)誤狀況時(shí)自動(dòng)產(chǎn)生編譯錯(cuò)誤記錄文件或錯(cuò)誤信息,讓(遠(yuǎn)程)的程序設(shè)計(jì)人員進(jìn)行檢錯(cuò)工作,并能避免因環(huán)境變量設(shè)定錯(cuò)誤所造成的編譯失敗。
本發(fā)明的計(jì)算機(jī)程序數(shù)據(jù)自動(dòng)編譯方法及系統(tǒng)可應(yīng)用在計(jì)算機(jī)程序及其相關(guān)的附屬數(shù)據(jù),例如BIOS(Basic Input/Output System)程序及其一組附屬數(shù)據(jù),包括BIOS項(xiàng)目產(chǎn)品名稱(chēng)、建立日期、程序說(shuō)明、二進(jìn)制碼文件名、檢查碼、相關(guān)的項(xiàng)目執(zhí)行人員的電子郵件地址、用于儲(chǔ)放BIOS可執(zhí)行文件的網(wǎng)絡(luò)地址、程序設(shè)計(jì)師簽名等,全部?jī)H響應(yīng)一個(gè)使用者操控事件,例如使用者用鼠標(biāo)點(diǎn)選一個(gè)圖形化按鍵,即可根據(jù)選擇完全以自動(dòng)方式編譯成二進(jìn)制文件或一組BIOS Flash可執(zhí)行文件,并將這些輸出文件及附屬數(shù)據(jù)傳送至指定的網(wǎng)絡(luò)節(jié)點(diǎn),例如ROM測(cè)試平臺(tái)、文件服務(wù)器、相關(guān)的項(xiàng)目執(zhí)行人員的網(wǎng)絡(luò)工作站等。
本發(fā)明的計(jì)算機(jī)程序數(shù)據(jù)自動(dòng)編譯系統(tǒng)至少包括附屬數(shù)據(jù)預(yù)設(shè)模塊,提供使用者操控的數(shù)據(jù)輸入及儲(chǔ)存功能,讓使用者預(yù)先設(shè)定一組計(jì)算機(jī)程序附屬數(shù)據(jù);附屬數(shù)據(jù)產(chǎn)生模塊,可自動(dòng)產(chǎn)生一組附屬數(shù)據(jù),至少包括各個(gè)BIOS項(xiàng)目產(chǎn)品名稱(chēng)、建立日期、程序說(shuō)明、二進(jìn)制碼文件名和檢查碼;使用者操控事件響應(yīng)模塊,可響應(yīng)特定的使用者操控事件而發(fā)出編譯激活信息;編譯模塊,可響應(yīng)該使用者操控事件響應(yīng)模塊所發(fā)出的編譯激活信息而執(zhí)行編譯程序,將該計(jì)算機(jī)程序原始碼編譯成一個(gè)二進(jìn)制碼文件;若編譯失敗,則發(fā)出編譯錯(cuò)誤信息;編譯錯(cuò)誤響應(yīng)模塊,可響應(yīng)該編譯模塊所發(fā)出的編譯錯(cuò)誤信息而將該編譯過(guò)程中所發(fā)生的錯(cuò)誤狀況的所在及相關(guān)信息記錄至編譯錯(cuò)誤記錄文件;執(zhí)行文件產(chǎn)生模塊,可將該編譯模塊所成功編譯成的二進(jìn)制碼文件轉(zhuǎn)換成可執(zhí)行文件;以及傳送模塊,可將該執(zhí)行文件產(chǎn)生模塊所產(chǎn)生的執(zhí)行文件,根據(jù)該附屬數(shù)據(jù)預(yù)設(shè)模塊中所預(yù)設(shè)的附屬數(shù)據(jù)中的一組網(wǎng)址數(shù)據(jù),通過(guò)網(wǎng)絡(luò)系統(tǒng)傳送至該網(wǎng)址數(shù)據(jù)所指定的網(wǎng)絡(luò)節(jié)點(diǎn)。
本發(fā)明的計(jì)算機(jī)程序數(shù)據(jù)自動(dòng)編譯方法至少包括進(jìn)行附屬數(shù)據(jù)預(yù)設(shè)程序,讓使用者預(yù)先設(shè)定一組計(jì)算機(jī)程序附屬數(shù)據(jù);響應(yīng)特定的使用者操控事件而發(fā)出編譯激活信息;響應(yīng)該編譯激活信息而執(zhí)行編譯程序,將該計(jì)算機(jī)程序原始碼編譯成二進(jìn)制碼文件;若編譯失敗,則發(fā)出編譯錯(cuò)誤信息;響應(yīng)該編譯錯(cuò)誤信息而將該編譯過(guò)程中所發(fā)生的錯(cuò)誤狀況的所在及相關(guān)信息記錄至編譯錯(cuò)誤記錄文件;進(jìn)行執(zhí)行文件產(chǎn)生程序,將該編譯程序成功編譯而成的二進(jìn)制碼文件轉(zhuǎn)換成可執(zhí)行文件;以及進(jìn)行傳送程序,將該執(zhí)行文件產(chǎn)生程序所產(chǎn)生的執(zhí)行文件,根據(jù)該附屬數(shù)據(jù)預(yù)設(shè)程序中所預(yù)設(shè)的附屬數(shù)據(jù)中的一組網(wǎng)址數(shù)據(jù),通過(guò)網(wǎng)絡(luò)系統(tǒng)傳送至該網(wǎng)址數(shù)據(jù)指定的網(wǎng)絡(luò)節(jié)點(diǎn)。
綜上所述,本發(fā)明的計(jì)算機(jī)程序數(shù)據(jù)自動(dòng)編譯方法及系統(tǒng)可僅響應(yīng)一個(gè)使用者操控事件,例如使用者用鼠標(biāo)點(diǎn)選一個(gè)圖形化按鍵,即可接著完全以自動(dòng)方式進(jìn)行編譯程序,不必由程序設(shè)計(jì)人員以手控方式在編譯過(guò)程中介入其中的一些編譯步驟。與現(xiàn)有技術(shù)相比,本發(fā)明的計(jì)算機(jī)程序數(shù)據(jù)自動(dòng)編譯方法及系統(tǒng)不僅可大幅縮短編譯程序的所需時(shí)間,并可在發(fā)生編譯錯(cuò)誤狀況時(shí)讓程序設(shè)計(jì)人員更為有效地進(jìn)行檢錯(cuò)工作。
圖1是系統(tǒng)結(jié)構(gòu)示意圖,顯示本發(fā)明的計(jì)算機(jī)程序數(shù)據(jù)自動(dòng)編譯系統(tǒng)的對(duì)象導(dǎo)向組件模型的基本結(jié)構(gòu);以及圖2是應(yīng)用結(jié)構(gòu)示意圖,顯示本發(fā)明的計(jì)算機(jī)程序數(shù)據(jù)自動(dòng)編譯系統(tǒng)的一個(gè)應(yīng)用結(jié)構(gòu)。
具體實(shí)施例方式
實(shí)施例以下即配合附圖,詳細(xì)說(shuō)明本發(fā)明的計(jì)算機(jī)程序數(shù)據(jù)自動(dòng)編譯方法及系統(tǒng)的實(shí)施例。
圖1是本發(fā)明的計(jì)算機(jī)程序數(shù)據(jù)自動(dòng)編譯系統(tǒng)(如標(biāo)號(hào)100所指的虛線框所包括的部分)的應(yīng)用結(jié)構(gòu)及其對(duì)象導(dǎo)向組件模型(object-oriented component model)的基本結(jié)構(gòu)。如圖所示,本發(fā)明的計(jì)算機(jī)程序數(shù)據(jù)自動(dòng)編譯系統(tǒng)100實(shí)際應(yīng)用上是搭載至計(jì)算機(jī)平臺(tái)10,將計(jì)算機(jī)程序原始碼40及其相關(guān)的一組附屬數(shù)據(jù)50,例如包括該計(jì)算機(jī)程序原始碼40的項(xiàng)目產(chǎn)品名稱(chēng)、建立日期、程序說(shuō)明、二進(jìn)制碼文件名、檢查碼、項(xiàng)目相關(guān)執(zhí)行人員的電子郵件地址、用于儲(chǔ)放BIOS可執(zhí)行文件的網(wǎng)絡(luò)地址、程序設(shè)計(jì)師簽名等,全部以自動(dòng)方式輸出;且該計(jì)算機(jī)平臺(tái)10搭配靜態(tài)數(shù)據(jù)儲(chǔ)存裝置11(例如硬盤(pán)儲(chǔ)存裝置),用于虛擬磁盤(pán)驅(qū)動(dòng)器,以便將編譯完成后的二進(jìn)制文件,轉(zhuǎn)譯成一組BIOS Flash可執(zhí)行文件,省去抽換磁盤(pán)的步驟。并且如圖2所示,將該輸出文件通過(guò)網(wǎng)絡(luò)系統(tǒng)13,例如國(guó)際互聯(lián)網(wǎng)(Internet)、企業(yè)內(nèi)部互聯(lián)網(wǎng)(intranet)、企業(yè)間互聯(lián)網(wǎng)(extranet)等,傳送至該附屬數(shù)據(jù)50中的電子郵件地址和網(wǎng)絡(luò)地址所指定的網(wǎng)絡(luò)節(jié)點(diǎn),例如ROM測(cè)試平臺(tái)、文件服務(wù)器、相關(guān)的項(xiàng)目執(zhí)行人員的網(wǎng)絡(luò)工作站等。
本發(fā)明的計(jì)算機(jī)程序數(shù)據(jù)自動(dòng)編譯系統(tǒng)100的特點(diǎn)在于,其可僅響應(yīng)一個(gè)特定的使用者操控事件60,例如使用者用鼠標(biāo)點(diǎn)選一個(gè)圖形化按鍵,即可接著完全以自動(dòng)化方式進(jìn)行編譯程序,不必由程序設(shè)計(jì)人員以手控方式介入其中的編譯步驟。
本發(fā)明的計(jì)算機(jī)程序數(shù)據(jù)自動(dòng)編譯系統(tǒng)100的對(duì)象導(dǎo)向組件模型(object-oriented component model)的基本模塊結(jié)構(gòu)至少包括(a)附屬數(shù)據(jù)預(yù)設(shè)模塊101;(b)附屬數(shù)據(jù)產(chǎn)生模塊102;(c)使用者操控事件響應(yīng)模塊110;(d)編譯模塊120;(e)編譯錯(cuò)誤響應(yīng)模塊130;(f)執(zhí)行文件產(chǎn)生模塊140;以及(g)傳送模塊150。
附屬數(shù)據(jù)預(yù)設(shè)模塊101可提供給使用者操控的數(shù)據(jù)輸入功能,讓使用者預(yù)先輸入相關(guān)的項(xiàng)目執(zhí)行人員的電子郵件地址、用于儲(chǔ)放BIOS可執(zhí)行文件的網(wǎng)絡(luò)地址、程序設(shè)計(jì)師簽名等。
附屬數(shù)據(jù)產(chǎn)生模塊102可自動(dòng)產(chǎn)生各個(gè)BIOS項(xiàng)目計(jì)劃相關(guān)的附屬數(shù)據(jù)50,例如包括BIOS項(xiàng)目產(chǎn)品名稱(chēng)、建立日期、程序說(shuō)明、二進(jìn)制碼文件名、檢查碼等。
使用者操控事件響應(yīng)模塊110可響應(yīng)特定的使用者操控事件60,例如使用者用鼠標(biāo)點(diǎn)選一個(gè)圖形化按鍵,從而產(chǎn)生編譯激活信息;并將此編譯激活信息傳送至編譯模塊120。
編譯模塊120可響應(yīng)上述使用者操控事件響應(yīng)模塊110所產(chǎn)生的編譯激活信息而執(zhí)行編譯程序,將該計(jì)算機(jī)程序原始碼40編譯成二進(jìn)制碼文件,例如為*.BIN文件格式的二進(jìn)制碼文件。在此編譯過(guò)程中,若發(fā)生任何錯(cuò)誤狀況而導(dǎo)致編譯失敗,則編譯模塊120會(huì)發(fā)出編譯錯(cuò)誤信息至編譯錯(cuò)誤響應(yīng)模塊130;反之,若編譯成功,則編譯模塊120會(huì)將編譯出的BIN二進(jìn)制碼檔傳送至執(zhí)行文件產(chǎn)生模塊140。此外,此編譯模塊120包括檢錯(cuò)功能,其可自動(dòng)設(shè)定該計(jì)算機(jī)程序原始碼進(jìn)行編譯時(shí)所需的環(huán)境變量,避免編譯時(shí)發(fā)生錯(cuò)誤,并且能得知目前編譯的程序,及哪個(gè)步驟發(fā)生錯(cuò)誤;也就是其可自動(dòng)記載編譯過(guò)程,并能告知目前所在編譯程序,且能避免因環(huán)境變量設(shè)定錯(cuò)誤而造成原始碼40的編譯失?。蝗艟幾g失敗,則會(huì)例如在該計(jì)算機(jī)平臺(tái)10上顯示出一對(duì)話框(未在附圖中顯示)或通過(guò)傳送模塊150將錯(cuò)誤狀況告知使用者。
編譯錯(cuò)誤響應(yīng)模塊130可響應(yīng)上述編譯模塊120發(fā)出的編譯錯(cuò)誤信息,將該編譯模塊120執(zhí)行的編譯過(guò)程中所發(fā)生的錯(cuò)誤狀況的所在及相關(guān)信息記錄至編譯錯(cuò)誤記錄文件131,并同時(shí)在計(jì)算機(jī)平臺(tái)10的屏幕12顯示出一個(gè)對(duì)話框(未在附圖中顯示),將相關(guān)的編譯錯(cuò)誤信息告知使用者;或如圖2所示,將此編譯錯(cuò)誤記錄文件131通過(guò)網(wǎng)絡(luò)系統(tǒng)13回傳至該計(jì)算機(jī)程序原始碼40的程序撰寫(xiě)人員的計(jì)算機(jī)平臺(tái)(以下稱(chēng)為程序設(shè)計(jì)平臺(tái))20,借此讓程序撰寫(xiě)人員可在其程序設(shè)計(jì)平臺(tái)20上瀏覽此編譯錯(cuò)誤記錄文件131,從而據(jù)此進(jìn)行檢錯(cuò)工作。
執(zhí)行文件產(chǎn)生模塊140可將上述編譯模塊120成功編譯而成的BIN二進(jìn)制碼文件,轉(zhuǎn)換成一組BIOS Flash可執(zhí)行文件(*.exe)。此外,此執(zhí)行文件產(chǎn)生模塊140可進(jìn)而包括自動(dòng)檢錯(cuò)功能,可在所執(zhí)行的轉(zhuǎn)換程序發(fā)生錯(cuò)誤狀況時(shí),在該計(jì)算機(jī)平臺(tái)10上顯示出一對(duì)話框?qū)㈠e(cuò)誤狀況告知使用者。具體實(shí)施上,此執(zhí)行文件產(chǎn)生模塊140是例如以虛擬磁盤(pán)驅(qū)動(dòng)器的方式,將該編譯程序所成功編譯而成的二進(jìn)制碼文件轉(zhuǎn)換成可執(zhí)行文件,省掉軟盤(pán)驅(qū)動(dòng)器的使用。并且能得知目前編譯的程序,及哪個(gè)步驟發(fā)生錯(cuò)誤。
傳送模塊150可將上述執(zhí)行文件產(chǎn)生模塊140產(chǎn)生的BIOS Flash可執(zhí)行文件(*.exe),根據(jù)該附屬數(shù)據(jù)50中所設(shè)定的電子郵件地址和網(wǎng)絡(luò)地址,通過(guò)網(wǎng)絡(luò)系統(tǒng)13傳送至其指定的網(wǎng)絡(luò)節(jié)點(diǎn)30,例如ROM測(cè)試平臺(tái)、文件服務(wù)器、相關(guān)的項(xiàng)目主管人員的網(wǎng)絡(luò)工作站等。此即讓遠(yuǎn)程的測(cè)試人員可在ROM測(cè)試平臺(tái)上,對(duì)該BIOS Flash執(zhí)行文件進(jìn)行測(cè)試程序。
請(qǐng)同時(shí)參閱圖1和圖2,本發(fā)明的計(jì)算機(jī)程序數(shù)據(jù)自動(dòng)編譯方法的實(shí)現(xiàn)過(guò)程是程序設(shè)計(jì)人員預(yù)先利用本發(fā)明的計(jì)算機(jī)程序數(shù)據(jù)自動(dòng)編譯系統(tǒng)100中的附屬數(shù)據(jù)預(yù)設(shè)模塊101預(yù)先輸入及設(shè)定一組與各個(gè)BIOS項(xiàng)目計(jì)劃均相關(guān)的附屬數(shù)據(jù)50,例如包括相關(guān)的項(xiàng)目執(zhí)行人員的電子郵件地址、用于儲(chǔ)放BIOS可執(zhí)行文件的網(wǎng)絡(luò)地址、程序設(shè)計(jì)師簽名等。然后,每當(dāng)完成一個(gè)BIOS項(xiàng)目計(jì)劃的原始碼40的編碼工作時(shí),程序設(shè)計(jì)人員即可采用本發(fā)明的計(jì)算機(jī)程序數(shù)據(jù)自動(dòng)編譯系統(tǒng)100來(lái)編譯BIOS原始碼40,并同時(shí)傳送其相關(guān)的附屬數(shù)據(jù)50;其中程序設(shè)計(jì)人員只要利用其計(jì)算機(jī)平臺(tái)10發(fā)出特定的使用者操控事件60,例如用鼠標(biāo)點(diǎn)選一個(gè)圖形化按鍵,即可令使用者操控事件響應(yīng)模塊110響應(yīng),從而發(fā)出編譯激活信息至編譯模塊120,令編譯模塊120開(kāi)始執(zhí)行編譯程序,用于將該BIOS原始碼40編譯成BIN格式的二進(jìn)制碼文件。
在上述編譯過(guò)程中,若發(fā)生任何錯(cuò)誤狀況而導(dǎo)致編譯失敗,則編譯模塊120會(huì)發(fā)出編譯錯(cuò)誤信息至編譯錯(cuò)誤響應(yīng)模塊130,令編譯錯(cuò)誤響應(yīng)模塊130將編譯過(guò)程中發(fā)生的錯(cuò)誤狀況的所在及相關(guān)信息記錄至編譯錯(cuò)誤記錄文件131,并同時(shí)在計(jì)算機(jī)平臺(tái)10的屏幕12顯示出一對(duì)話框,將相關(guān)的編譯錯(cuò)誤信息告知使用者;或如圖2所示,將此編譯錯(cuò)誤記錄文件131通過(guò)網(wǎng)絡(luò)系統(tǒng)13回傳至該計(jì)算機(jī)程序原始碼40的程序撰寫(xiě)人員的程序設(shè)計(jì)平臺(tái)20,讓程序撰寫(xiě)人員可在其程序設(shè)計(jì)平臺(tái)20上瀏覽此編譯錯(cuò)誤記錄文件131,從而進(jìn)行檢錯(cuò)工作;反之,若編譯成功,則令執(zhí)行文件產(chǎn)生模塊140開(kāi)始產(chǎn)生BIOS Flash可執(zhí)行文件,并將其所產(chǎn)生的BIOS Flash執(zhí)行文件根據(jù)該附屬數(shù)據(jù)預(yù)設(shè)模塊101中所設(shè)定的電子郵件地址和網(wǎng)絡(luò)地址,經(jīng)由傳送模塊150及通過(guò)網(wǎng)絡(luò)系統(tǒng)13,傳送至其指定的網(wǎng)絡(luò)節(jié)點(diǎn)30,例如ROM測(cè)試平臺(tái)、文件服務(wù)器、相關(guān)的項(xiàng)目主管人員的網(wǎng)絡(luò)工作站等。此即讓遠(yuǎn)程的測(cè)試人員可在ROM測(cè)試平臺(tái)上對(duì)該BIOS Flash執(zhí)行文件進(jìn)行測(cè)試程序。
在上述編譯程序中,本發(fā)明的最佳實(shí)施方式為,將該靜態(tài)數(shù)據(jù)儲(chǔ)存裝置11(例如硬盤(pán)儲(chǔ)存裝置)作為虛擬磁盤(pán)驅(qū)動(dòng)器(virtual floppydrive),并在此虛擬磁盤(pán)驅(qū)動(dòng)器上讓執(zhí)行文件產(chǎn)生模塊140產(chǎn)生所需的BIOS Flash可執(zhí)行文件;也就是靜態(tài)數(shù)據(jù)儲(chǔ)存裝置11是以虛擬磁盤(pán)驅(qū)動(dòng)器的方式,將該編譯程序成功編譯而成的二進(jìn)制碼文件轉(zhuǎn)換成可執(zhí)行文件,省卻軟盤(pán)驅(qū)動(dòng)器的使用。此做法不僅可大幅縮短編譯程序的所需時(shí)間,且不同于現(xiàn)有的做法,因采用多張磁盤(pán)片而因磁盤(pán)片受損導(dǎo)致編譯程序被中斷。
再者,當(dāng)發(fā)生編譯錯(cuò)誤狀況時(shí),由于本發(fā)明的計(jì)算機(jī)程序數(shù)據(jù)自動(dòng)編譯系統(tǒng)100會(huì)自動(dòng)產(chǎn)生編譯錯(cuò)誤記錄文件131,其中記錄著編譯過(guò)程中所發(fā)生的錯(cuò)誤狀況的所在及相關(guān)信息,因此可更快速地協(xié)助程序設(shè)計(jì)人員找出造成編譯失敗的原因,并重新更正原始碼,使得檢錯(cuò)工作更有效率。此外,本發(fā)明的計(jì)算機(jī)程序數(shù)據(jù)自動(dòng)編譯系統(tǒng)100中的各個(gè)模塊均包括自動(dòng)檢錯(cuò)功能,其可自動(dòng)檢測(cè)各個(gè)模塊所執(zhí)行的程序是否正確;若否,則會(huì)例如在該計(jì)算機(jī)平臺(tái)10上顯示出一個(gè)對(duì)話框,將錯(cuò)誤狀況告知使用者,因此可更快速地協(xié)助使用者找出造成錯(cuò)誤的原因。
總而言之,本發(fā)明提供了一種新穎的計(jì)算機(jī)程序數(shù)據(jù)自動(dòng)編譯方法及系統(tǒng),其可應(yīng)用在將計(jì)算機(jī)程序原始碼及其相關(guān)的一組附屬數(shù)據(jù),全部過(guò)程僅響應(yīng)一個(gè)使用者操控事件,即可完全以自動(dòng)方式編譯成執(zhí)行文件和附屬數(shù)據(jù)文件,并將該執(zhí)行文件和附屬數(shù)據(jù)文件自動(dòng)傳送至指定的網(wǎng)絡(luò)節(jié)點(diǎn),例如ROM測(cè)試平臺(tái)、文件服務(wù)器等。與現(xiàn)有技術(shù)相比,本發(fā)明的計(jì)算機(jī)程序數(shù)據(jù)自動(dòng)編譯方法及系統(tǒng)不僅可大幅縮短編譯程序所需的時(shí)間,并可在發(fā)生編譯錯(cuò)誤狀況時(shí)讓程序設(shè)計(jì)人員有效地進(jìn)行檢錯(cuò)工作。本發(fā)明因此較現(xiàn)有技術(shù)具有更佳的進(jìn)步性及實(shí)用性。
權(quán)利要求
1.一種計(jì)算機(jī)程序數(shù)據(jù)自動(dòng)編譯方法,可用于為一組計(jì)算機(jī)程序原始碼及其相關(guān)的一組附屬數(shù)據(jù)提供自動(dòng)化的編譯程序,其特征在于,該計(jì)算機(jī)程序數(shù)據(jù)自動(dòng)編譯方法至少包括進(jìn)行附屬數(shù)據(jù)預(yù)設(shè)程序,讓使用者預(yù)先設(shè)定一組計(jì)算機(jī)程序附屬數(shù)據(jù);響應(yīng)特定的使用者操控事件而發(fā)出編譯激活信息;響應(yīng)該編譯激活信息而執(zhí)行編譯程序,將該計(jì)算機(jī)程序原始碼編譯成二進(jìn)制碼文件;若編譯失敗,則發(fā)出編譯錯(cuò)誤信息;響應(yīng)該編譯錯(cuò)誤信息而將該編譯過(guò)程中所發(fā)生的錯(cuò)誤狀況的所在及相關(guān)信息記錄至編譯錯(cuò)誤記錄文件;進(jìn)行執(zhí)行文件產(chǎn)生程序,將該編譯程序成功編譯而成的二進(jìn)制碼文件轉(zhuǎn)換成可執(zhí)行文件;以及進(jìn)行傳送程序,可將該執(zhí)行文件產(chǎn)生程序所產(chǎn)生的執(zhí)行文件,根據(jù)該附屬數(shù)據(jù)預(yù)設(shè)程序中所預(yù)設(shè)的附屬數(shù)據(jù)中的一組網(wǎng)址數(shù)據(jù),通過(guò)網(wǎng)絡(luò)系統(tǒng)傳送至該網(wǎng)址數(shù)據(jù)指定的網(wǎng)絡(luò)節(jié)點(diǎn)。
2.如權(quán)利要求1所述的計(jì)算機(jī)程序數(shù)據(jù)自動(dòng)編譯方法,其特征在于,該執(zhí)行文件產(chǎn)生程序是以虛擬磁盤(pán)驅(qū)動(dòng)器的方式,將該編譯程序成功編譯成的二進(jìn)制碼文件轉(zhuǎn)換成可執(zhí)行文件。
3.如權(quán)利要求1所述的計(jì)算機(jī)程序數(shù)據(jù)自動(dòng)編譯方法,其特征在于,該組計(jì)算機(jī)程序原始碼是一組BIOS的原始碼。
4.如權(quán)利要求1所述的計(jì)算機(jī)程序數(shù)據(jù)自動(dòng)編譯方法,其特征在于,該特定的使用者操控事件是用鼠標(biāo)點(diǎn)選一個(gè)圖形化按鍵。
5.如權(quán)利要求1所述的計(jì)算機(jī)程序數(shù)據(jù)自動(dòng)編譯系統(tǒng),其特征在于,該編譯錯(cuò)誤記錄文件是通過(guò)網(wǎng)絡(luò)系統(tǒng)傳送至程序設(shè)計(jì)平臺(tái)。
6.如權(quán)利要求1所述的計(jì)算機(jī)程序數(shù)據(jù)自動(dòng)編譯系統(tǒng),其特征在于,該執(zhí)行文件是通過(guò)網(wǎng)絡(luò)系統(tǒng)傳送至測(cè)試平臺(tái)。
7.一種計(jì)算機(jī)程序數(shù)據(jù)自動(dòng)編譯系統(tǒng),可用于為一組計(jì)算機(jī)程序原始碼及其相關(guān)的一組附屬數(shù)據(jù)提供自動(dòng)化的編譯程序,其特征在于,該計(jì)算機(jī)程序數(shù)據(jù)自動(dòng)編譯系統(tǒng)至少包括附屬數(shù)據(jù)預(yù)設(shè)模塊,可提供使用者操控的數(shù)據(jù)輸入及儲(chǔ)存功能,讓使用者預(yù)先設(shè)定一組計(jì)算機(jī)程序附屬數(shù)據(jù);附屬數(shù)據(jù)產(chǎn)生模塊,可自動(dòng)產(chǎn)生一組附屬數(shù)據(jù),至少包括各個(gè)BIOS項(xiàng)目產(chǎn)品名稱(chēng)、建立日期、程序說(shuō)明、二進(jìn)制碼文件名和檢查碼;使用者操控事件響應(yīng)模塊,可響應(yīng)特定的使用者操控事件而發(fā)出編譯激活信息;編譯模塊,可響應(yīng)該使用者操控事件響應(yīng)模塊所發(fā)出的編譯激活信息而執(zhí)行編譯程序,將該計(jì)算機(jī)程序原始碼編譯成一個(gè)二進(jìn)制碼文件;若編譯失敗,則發(fā)出編譯錯(cuò)誤信息;編譯錯(cuò)誤響應(yīng)模塊,可響應(yīng)該編譯模塊所發(fā)出的編譯錯(cuò)誤信息而將該編譯過(guò)程中所發(fā)生的錯(cuò)誤狀況的所在及相關(guān)信息記錄至編譯錯(cuò)誤記錄文件;執(zhí)行文件產(chǎn)生模塊,可將該編譯模塊所成功編譯成的二進(jìn)制碼文件轉(zhuǎn)換成可執(zhí)行文件;以及傳送模塊,可將該執(zhí)行文件產(chǎn)生模塊所產(chǎn)生的執(zhí)行文件,根據(jù)該附屬數(shù)據(jù)預(yù)設(shè)模塊中所預(yù)設(shè)的附屬數(shù)據(jù)中的一組網(wǎng)址數(shù)據(jù),通過(guò)網(wǎng)絡(luò)系統(tǒng)傳送至該網(wǎng)址數(shù)據(jù)所指定的網(wǎng)絡(luò)節(jié)點(diǎn)。
8.如權(quán)利要求7所述的計(jì)算機(jī)程序數(shù)據(jù)自動(dòng)編譯系統(tǒng),其特征在于,該執(zhí)行文件產(chǎn)生模塊是以虛擬磁盤(pán)驅(qū)動(dòng)器的方式,將該編譯程序成功編譯成的二進(jìn)制碼文件轉(zhuǎn)換成可執(zhí)行文件。
9.如權(quán)利要求7所述的計(jì)算機(jī)程序數(shù)據(jù)自動(dòng)編譯系統(tǒng),其特征在于,該組計(jì)算機(jī)程序原始碼是一組BIOS的原始碼。
10.如權(quán)利要求7所述的計(jì)算機(jī)程序數(shù)據(jù)自動(dòng)編譯系統(tǒng),其特征在于,該特定的使用者操控事件是用鼠標(biāo)點(diǎn)選一個(gè)圖形化按鍵。
11.如權(quán)利要求7所述的計(jì)算機(jī)程序數(shù)據(jù)自動(dòng)編譯系統(tǒng),其特征在于,該編譯錯(cuò)誤響應(yīng)模塊可進(jìn)而將該編譯錯(cuò)誤記錄文件通過(guò)網(wǎng)絡(luò)系統(tǒng)傳送至程序設(shè)計(jì)平臺(tái)。
12.如權(quán)利要求7所述的計(jì)算機(jī)程序數(shù)據(jù)自動(dòng)編譯系統(tǒng),其特征在于,該傳送模塊可將該執(zhí)行文件通過(guò)網(wǎng)絡(luò)系統(tǒng)傳送至測(cè)試平臺(tái)。
13.如權(quán)利要求7所述的計(jì)算機(jī)程序數(shù)據(jù)自動(dòng)編譯系統(tǒng),其特征在于,該編譯模塊進(jìn)而包括自動(dòng)檢錯(cuò)功能,其可自動(dòng)設(shè)定該計(jì)算機(jī)程序原始碼在進(jìn)行編譯時(shí)所需的環(huán)境變量,避免編譯時(shí)發(fā)生錯(cuò)誤。并且能得知目前編譯的程序,及哪個(gè)步驟發(fā)生錯(cuò)誤。
14.如權(quán)利要求7所述的計(jì)算機(jī)程序數(shù)據(jù)自動(dòng)編譯系統(tǒng),其特征在于,該執(zhí)行文件產(chǎn)生模塊是以虛擬磁盤(pán)驅(qū)動(dòng)器的方式,將該編譯程序成功編譯成的二進(jìn)制碼文件轉(zhuǎn)換成可執(zhí)行文件,并且能得知目前編譯的程序,及哪個(gè)步驟發(fā)生錯(cuò)誤。
全文摘要
一種計(jì)算機(jī)程序數(shù)據(jù)自動(dòng)編譯方法及系統(tǒng),應(yīng)用在將計(jì)算機(jī)程序原始碼及其相關(guān)的一組附屬數(shù)據(jù),全部過(guò)程僅響應(yīng)一個(gè)使用者操控事件,并可根據(jù)選擇完全以自動(dòng)方式編譯成二進(jìn)制文件或一組BIOS Flash執(zhí)行文件和附屬數(shù)據(jù)文件,并將該二進(jìn)制文件或BIOS Flash執(zhí)行文件和附屬數(shù)據(jù)文件自動(dòng)傳送至指定的網(wǎng)絡(luò)節(jié)點(diǎn);此計(jì)算機(jī)程序數(shù)據(jù)自動(dòng)編譯系統(tǒng)至少包括附屬數(shù)據(jù)預(yù)設(shè)模塊、附屬數(shù)據(jù)產(chǎn)生模塊、使用者操控事件響應(yīng)模塊、編譯模塊、編譯錯(cuò)誤響應(yīng)模塊、執(zhí)行文件產(chǎn)生模塊以及傳送模塊;本發(fā)明的計(jì)算機(jī)程序數(shù)據(jù)自動(dòng)編譯方法及系統(tǒng)不僅可大幅縮短編譯程序的所需時(shí)間,并可在發(fā)生編譯錯(cuò)誤狀況時(shí)讓程序設(shè)計(jì)人員更有效地進(jìn)行檢錯(cuò)工作。
文檔編號(hào)G06F9/45GK1670700SQ20041002948
公開(kāi)日2005年9月21日 申請(qǐng)日期2004年3月19日 優(yōu)先權(quán)日2004年3月19日
發(fā)明者楊曜宗 申請(qǐng)人:英業(yè)達(dá)股份有限公司