專利名稱:?jiǎn)伟逯斜镜匕姹拒浖男r?yàn)方法
技術(shù)領(lǐng)域:
本發(fā)明涉及通信技術(shù),尤其涉及單板中本地版本軟件的校驗(yàn)方法。
背景技術(shù):
通信設(shè)備既要求高可靠性,又不可避免地因缺陷彌補(bǔ)或功能增強(qiáng)而需要進(jìn)行軟件升級(jí)。通信設(shè)備中的單板通常使用Flash(閃存)等永久介質(zhì)來(lái)存儲(chǔ)其軟件,我們把該軟件稱為本地版本。為了確保在最壞情況下仍然能夠?qū)伟逋ㄟ^(guò)遠(yuǎn)程控制進(jìn)行軟件下載激活操作,單板上都設(shè)置了稱為BOOTROM(單板上的一個(gè)存儲(chǔ)介質(zhì),用于存放引導(dǎo)程序)的永久存儲(chǔ)介質(zhì)。通常,在BOOTROM中存放的軟件稱為BOOTROM版本軟件。BOOTROM版本軟件是一個(gè)功能最小化的安全版本軟件,要求其非常穩(wěn)定,幾乎不用升級(jí)。通常,在單板出廠時(shí)能夠確保BOOTROM版本軟件總是存在的,因此,可以認(rèn)為總是能夠可靠的得到BOOTROM版本軟件。BOOTROM版本軟件能夠在最壞的情況下確保單板能夠通過(guò)遠(yuǎn)端控制進(jìn)行下載激活軟件的操作。
在實(shí)際應(yīng)用中,單板加電后,首先啟動(dòng)的是BOOTROM版本軟件,之后再運(yùn)行本地版本軟件。但是,在運(yùn)行本地版本軟件之前,要對(duì)其進(jìn)行一系列的校驗(yàn),例如驗(yàn)證版本號(hào)是否正確、是否與其他單板軟件兼容等。
目前,在實(shí)際的通信系統(tǒng)中使用非常廣泛的校驗(yàn)方法是主控版本校驗(yàn)(Main Controller Version Checking,MCVC)方法,該方法的處理流程如圖1所示,在步驟S101中,單板啟動(dòng)后運(yùn)行BOOTROM版本軟件。進(jìn)入步驟S102,單板向主控板上報(bào)本地版本軟件信息。進(jìn)入步驟S103,判斷主控板是否回送肯定確認(rèn),如果是,進(jìn)入步驟S104,否則,進(jìn)入步驟S105。在步驟S104中,如果主控板回送了肯定確認(rèn)后,則切換到本地版本軟件上運(yùn)行。在步驟S105中,如果主控板回送了否定確認(rèn),則單板將繼續(xù)運(yùn)行BOOTROM版本軟件,等待主控板干預(yù)。
在上述方法中,單板必須在主控板回送確認(rèn)信息后才能運(yùn)行本地版本軟件,否則,單板將繼續(xù)運(yùn)行BOOTROM版本軟件,或者說(shuō),如果主控板長(zhǎng)時(shí)間沒(méi)有回送確認(rèn)信息,單板就會(huì)長(zhǎng)時(shí)間運(yùn)行BOOTROM版本軟件,如果單板運(yùn)行BOOTROM版本軟件,那么就由BOOTROM版本軟件負(fù)責(zé)故障的排除或通信系統(tǒng)的調(diào)試,但BOOTROM版本軟件的近端調(diào)試功能有限,不如本地版本軟件的近端調(diào)試功能強(qiáng)大。所以,一旦通信設(shè)備需要某種調(diào)試功能,而單板運(yùn)行的是不能提供這種功能的BOOTROM版本軟件,就會(huì)嚴(yán)重影響通信設(shè)備的正常運(yùn)行。
發(fā)明內(nèi)容
本發(fā)明要解決的技術(shù)問(wèn)題在于提供一種單板中本地版本軟件的校驗(yàn)方法,以使單板在本地版本軟件的校驗(yàn)過(guò)程中,可以提供更強(qiáng)大的近端調(diào)試功能。
為解決上述技術(shù)問(wèn)題,本發(fā)明提供了一種單板中本地版本軟件的校驗(yàn)方法,包括A.單板啟動(dòng)引導(dǎo)程序并運(yùn)行本地版本軟件;B.單板周期向主控板上報(bào)本地版本軟件信息;C.如果所述主控板回送的確認(rèn)為肯定確認(rèn),則啟動(dòng)所述本地版本軟件的業(yè)務(wù)功能,否則,繼續(xù)運(yùn)行所述本地版本軟件。
所述單板啟動(dòng)所述引導(dǎo)程序后還可包括D.判斷所述引導(dǎo)程序是否支持啟動(dòng)所述引導(dǎo)程序后直接運(yùn)行所述本地版本軟件的功能,如果是,運(yùn)行所述本地版本軟件后進(jìn)入步驟B,否則,進(jìn)入步驟E;E.單板周期向所述主控板上報(bào)本地版本軟件信息;F.判斷所述主控板回送的確認(rèn)是否為肯定確認(rèn),如果是,進(jìn)入步驟G,否則,進(jìn)入步驟H;G.運(yùn)行所述本地版本軟件;H.所述單板繼續(xù)運(yùn)行所述引導(dǎo)程序中。
所述單板啟動(dòng)所述引導(dǎo)程序后還可包括判斷所述引導(dǎo)程序是否支持啟動(dòng)所述引導(dǎo)程序后直接運(yùn)行所述本地版本軟件的功能,如果是,運(yùn)行所述本地版本軟件后進(jìn)入步驟B,否則,所述單板繼續(xù)運(yùn)行所述引導(dǎo)程序。
所述單板啟動(dòng)所述引導(dǎo)程序后還包括單板啟動(dòng)引導(dǎo)程序后,判斷本地版本軟件是否有效,如果是,進(jìn)入步驟D或運(yùn)行所述本地版本軟件后進(jìn)入步驟B,否則,單板繼續(xù)運(yùn)行所述引導(dǎo)程序。
單板周期向主控板上報(bào)所述本地版本軟件信息后,所述主控板判斷所述本地版本軟件信息是否與所述主控板本地版本軟件信息匹配,如果是,向所述單板發(fā)送肯定確認(rèn),否則,發(fā)送非肯定確認(rèn)。
所述單板繼續(xù)運(yùn)行所述引導(dǎo)程序時(shí),等待所述主控板的干預(yù)。
所述主控板干預(yù)所述單板的過(guò)程包括所述主控板激活所述單板的下載功能,所述單板自動(dòng)下載與所述主控板的本地版本軟件信息匹配的本地版本軟件。
所述主控板向所述單板發(fā)送否定確認(rèn)的同時(shí),向所述單板發(fā)送下載命令,所述下載命令包含所述主控板的本地版本軟件信息;所述單板根據(jù)所述下載命令下載與所述主控板的本地版本軟件信息匹配的本地版本軟件。
所述引導(dǎo)程序?yàn)锽OOTROM版本程序。
在本發(fā)明中,單板在啟動(dòng)BOOTROM版本后就立即運(yùn)行本地版本軟件,步驟B、C實(shí)現(xiàn)的校驗(yàn)過(guò)程都是在單板運(yùn)行本地版本軟件的情況下進(jìn)行的,這種情況下,無(wú)論步驟B、C哪一個(gè)環(huán)節(jié)出現(xiàn)了問(wèn)題,或者在執(zhí)行步驟B、C期間系統(tǒng)發(fā)生了故障,本地版本軟件都可以進(jìn)行處理,而現(xiàn)有技術(shù)中校驗(yàn)過(guò)程是在單板運(yùn)行BOOTROM版本的情況下進(jìn)行的,而且出現(xiàn)異常情況也是由BOOTROM版本進(jìn)行處理,由于本地版本軟件比BOOTROM版本的調(diào)試功能要強(qiáng)大得多,所以本發(fā)明提供的校驗(yàn)方法更有助于解決單板在校驗(yàn)過(guò)程中出現(xiàn)異常情況的處理。
在現(xiàn)有的通信系統(tǒng)中,有相當(dāng)數(shù)量的單板在啟動(dòng)BOOTROM版本后并不能直接運(yùn)行本地版本,當(dāng)然,可以通過(guò)修改BOOTROM版本的方法來(lái)解決這一問(wèn)題,但是,即使不對(duì)BOOTROM版本修改,本發(fā)明提供的校驗(yàn)方法依然能夠保證單板完成對(duì)本地版本的校驗(yàn)。
在本發(fā)明中,單板啟動(dòng)BOOTROM版本后可以先判斷本地版本是否有效,如果無(wú)效,就駐留在BOOTROM版本中,也不繼續(xù)后續(xù)的校驗(yàn)過(guò)程,提前結(jié)束校驗(yàn),這樣可以提高校驗(yàn)的效率,也可以節(jié)省通信系統(tǒng)的資源。
如果單板駐留在BOOTROM版本中,主控板是可以對(duì)單板進(jìn)行干預(yù)的,其中,最佳的干預(yù)方式就是激活單板的下載功能,使單板自動(dòng)下載與主控板本地版本匹配的本地版本,所以,即使本地版本沒(méi)有通過(guò)校驗(yàn),本發(fā)明提供的校驗(yàn)方法也可以用靈活的方式解決校驗(yàn)沒(méi)有通過(guò)的問(wèn)題。
圖1為主控版本校驗(yàn)方法的流程圖;圖2為本發(fā)明第一實(shí)施例的流程圖;圖3為不支持啟動(dòng)引導(dǎo)程序后直接運(yùn)行本地版本軟件的功能的本地版本軟件校驗(yàn)方法的流程圖;圖4為本發(fā)明優(yōu)選實(shí)施例的流程圖。
具體實(shí)施例方式
下面我們將結(jié)合附圖,對(duì)本發(fā)明的最佳實(shí)施方案進(jìn)行詳細(xì)描述。首先要指出的是,本發(fā)明中用到的術(shù)語(yǔ)、字詞及權(quán)利要求的含義不能僅僅限于其字面和普通的含義去理解,還包括進(jìn)而與本發(fā)明的技術(shù)相符的含義和概念,這是因?yàn)槲覀冏鳛榘l(fā)明者,要適當(dāng)?shù)亟o出術(shù)語(yǔ)的定義,以便對(duì)我們的發(fā)明進(jìn)行最恰當(dāng)?shù)拿枋?。因此,本說(shuō)明和附圖中給出的配置,只是本發(fā)明的首選實(shí)施方案,而不是要列舉本發(fā)明的所有技術(shù)特性。我們要認(rèn)識(shí)到,還有各種各樣的可以取代我們方案的同等方案或修改方案。
首先,結(jié)合圖2,對(duì)本發(fā)明的第一實(shí)施例進(jìn)行說(shuō)明。
在步驟S201中,單板啟動(dòng)引導(dǎo)程序并運(yùn)行本地版本軟件。單板加電或復(fù)位后,首先啟動(dòng)的是引導(dǎo)程序,在本發(fā)明中,啟動(dòng)引導(dǎo)程序后,直接運(yùn)行本地版本軟件。
進(jìn)入步驟S202后,單板周期向主控板上報(bào)本地版本軟件信息。運(yùn)行本地版本軟件后,單板就要向主控板上報(bào)本地版本軟件信息,主控板也是一個(gè)單板,可以對(duì)其他單板的運(yùn)行進(jìn)行控制,而且上報(bào)的時(shí)間要求是周期性的。
最后進(jìn)入步驟S203,單板通過(guò)判斷所述主控板回送的確認(rèn)是否為肯定確認(rèn),決定啟動(dòng)所述本地版本軟件的業(yè)務(wù)功能或繼續(xù)運(yùn)行所述本地版本軟件。由于單板周期向主控板上報(bào)了本地版本軟件信息,主控板要對(duì)本地版本軟件信息返回確認(rèn)的結(jié)果,如果主控板確認(rèn)本地版本軟件信息是正確的,則向單板發(fā)送肯定確認(rèn),單板收到這個(gè)確認(rèn)后,啟動(dòng)本地版本軟件的業(yè)務(wù)功能,如果主控板判斷出本地版本軟件信息是錯(cuò)誤的,則向單板發(fā)送非肯定確認(rèn),單板收到這個(gè)確認(rèn)后,繼續(xù)運(yùn)行所述本地版本軟件。
在實(shí)際應(yīng)用中,有些單板的引導(dǎo)程序支持啟動(dòng)引導(dǎo)程序后直接運(yùn)行本地版本軟件的功能,而有些單板在啟動(dòng)引導(dǎo)程序后,需要先進(jìn)行本地版本軟件校驗(yàn),如果校驗(yàn)通過(guò),再運(yùn)行本地版本軟件,換句話說(shuō),這些單板的引導(dǎo)程序不支持啟動(dòng)引導(dǎo)程序后直接運(yùn)行本地版本軟件的功能,對(duì)于這些不支持這種功能的單板來(lái)說(shuō),在啟動(dòng)引導(dǎo)程序后,不能直接進(jìn)入圖2的步驟S202,而是需要執(zhí)行其他步驟來(lái)完成本地版本軟件校驗(yàn)的過(guò)程。
現(xiàn)在結(jié)合圖3,對(duì)不支持上述功能的單板的本地版本軟件校驗(yàn)過(guò)程進(jìn)行說(shuō)明。在步驟S301中,單板啟動(dòng)引導(dǎo)程序。進(jìn)入步驟S302,判斷引導(dǎo)程序是否支持啟動(dòng)引導(dǎo)程序后而直接運(yùn)行本地版本軟件的功能,如果是,進(jìn)入步驟S303,否則,進(jìn)入步驟S304。
在步驟S303中,運(yùn)行所述本地版本軟件。
在步驟S304中,單板周期向所述主控板上報(bào)本地版本軟件信息。這個(gè)步驟與圖2的步驟S202基本相同,但區(qū)別在于,這個(gè)步驟中的單板運(yùn)行的是引導(dǎo)程序,而步驟S202運(yùn)行的卻是本地版本軟件。
完成步驟S304后,進(jìn)入步驟S305,單板判斷所述主控板回送的確認(rèn)是否為肯定確認(rèn),如果是,進(jìn)入步驟S306,否則,進(jìn)入步驟S307。如圖2的步驟S203所述,單板周期向主控板上報(bào)了本地版本軟件信息,主控板要對(duì)本地版本軟件信息返回確認(rèn)的結(jié)果,如果主控板確認(rèn)本地版本軟件信息是正確的,則向單板發(fā)送肯定確認(rèn),否則發(fā)送非肯定確認(rèn)。
在步驟S306中,單板運(yùn)行并運(yùn)行所述本地版本軟件。如果單板接收的是肯定確認(rèn),則運(yùn)行本地版本軟件并啟動(dòng)本地版本軟件的業(yè)務(wù)功能。
在步驟S307中,單板繼續(xù)運(yùn)行引導(dǎo)程序,等待主控板的干預(yù)。
此外,在步驟S302中,判斷引導(dǎo)程序是否支持啟動(dòng)引導(dǎo)程序后直接運(yùn)行本地版本軟件的功能,如果是,運(yùn)行所述本地版本軟件,否則,可直接進(jìn)入步驟S307,即,不執(zhí)行步驟S304-S307。
另外,單板啟動(dòng)引導(dǎo)程序后,還可首先判斷本地版本軟件是否有效,如果是,運(yùn)行所述本地版本軟件或判斷所述引導(dǎo)程序是否支持啟動(dòng)引導(dǎo)程序后直接運(yùn)行所述本地版本軟件的功能,否則,單板繼續(xù)運(yùn)行所述引導(dǎo)程序。判斷本地版本軟件是否有效包括判斷本地版本軟件的版本號(hào)是否正確等措施,增加這個(gè)過(guò)程是為了先檢驗(yàn)本地版本軟件的一些基本信息,如果基本信息不正確,則本地版本軟件不能通過(guò)后續(xù)的校驗(yàn)過(guò)程,所以如果單板判斷出基本信息不正確,則可停止后續(xù)的校驗(yàn)過(guò)程,以避免占用單板與主控板之間的通信鏈路。
需要說(shuō)明的是,單板周期向主控板上報(bào)本地版本軟件信息后,主控板需要判斷本地版本軟件信息是否正確,判斷的標(biāo)準(zhǔn)可定為判斷單板的本地版本軟件信息與主控板本地版本軟件信息是否匹配,如果是,主控板向所述單板發(fā)送肯定確認(rèn),否則,發(fā)送非肯定確認(rèn)。
還需說(shuō)明的是,如果單板繼續(xù)運(yùn)行引導(dǎo)程序時(shí),就必須等待主控板的干預(yù)。主控板干預(yù)單板的過(guò)程可以包括主控板激活單板的下載功能,單板自動(dòng)下載與主控板的本地版本軟件信息匹配的本地版本軟件。主控板干預(yù)單板的過(guò)程還可以包括主控板向單板發(fā)送否定確認(rèn)的同時(shí),向單板發(fā)送包含主控板的本地版本軟件信息的下載命令。相應(yīng)的,單板根據(jù)下載命令下載與主控板的本地版本軟件信息匹配的本地版本軟件。主控板無(wú)論采用何種干預(yù)過(guò)程,其本質(zhì)都是令單板下載合適的本地版本軟件。
除此之外,本發(fā)明的引導(dǎo)程序可以為BOOTROM版本程序。
圖2所公開(kāi)的步驟是實(shí)現(xiàn)本發(fā)明所必要的步驟,為方便本領(lǐng)域的普通技術(shù)人員實(shí)現(xiàn)本發(fā)明,現(xiàn)在結(jié)合圖4,以引導(dǎo)程序?yàn)锽OOTROM版本程序?yàn)槔?,?duì)本發(fā)明第一實(shí)施例進(jìn)行說(shuō)明。
在步驟S401中,單板加電或復(fù)位后,啟動(dòng)BOOTROM版本程序。
進(jìn)入步驟S402,判斷本地版本軟件是否有效,例如,判斷軟件版本號(hào)等基本信息是否正確,如果是,進(jìn)入步驟S403,否則,進(jìn)入步驟S412。
在步驟S403中,判斷BOOTROM版本程序是否支持啟動(dòng)BOOTROM版本程序后直接運(yùn)行本地版本軟件的功能,如果是,進(jìn)入步驟S404,否則,進(jìn)入步驟S409。在實(shí)際應(yīng)用中,有些單板需先進(jìn)行本地版本軟件校驗(yàn),檢驗(yàn)通過(guò)后再運(yùn)行本地版本軟件,所以,這些單板的BOOTROM版本程序不支持啟動(dòng)BOOTROM版本程序后直接運(yùn)行本地版本軟件的功能,但如果對(duì)這些單板的BOOTROM版本程序稍做修改或進(jìn)行升級(jí),則可以使這些單板能夠支持啟動(dòng)BOOTROM版本程序后直接運(yùn)行本地版本軟件的功能。
在步驟S404中,如果BOOTROM版本程序支持啟動(dòng)BOOTROM版本程序后直接運(yùn)行本地版本軟件的功能,單板則運(yùn)行本地版本軟件。
完成步驟S404后,進(jìn)入步驟S405,在運(yùn)行本地版本軟件時(shí)單板周期向主控板上報(bào)本地版本軟件信息。
進(jìn)入步驟S406,在運(yùn)行本地版本軟件時(shí)判斷主控板返回的確認(rèn)是否為肯定確認(rèn),如果是,進(jìn)入步驟S407,否則,進(jìn)入步驟S408。
在步驟S407中,單板啟動(dòng)本地版本軟件的業(yè)務(wù)功能。
在步驟S408中,單板不啟動(dòng)本地版本軟件的業(yè)務(wù)功能,繼續(xù)運(yùn)行本地版本軟件。
在步驟S403中,如果BOOTROM版本程序不支持啟動(dòng)BOOTROM版本程序后直接運(yùn)行本地版本軟件的功能,則進(jìn)入步驟S409,在運(yùn)行BOOTROM版本程序時(shí)單板周期向主控板上報(bào)本地版本軟件信息。
完成步驟S409后,進(jìn)入步驟S410,在運(yùn)行BOOTROM版本程序時(shí)判斷主控板返回的確認(rèn)是否為肯定確認(rèn),如果是,進(jìn)入步驟S411,否則,進(jìn)入步驟S412。
在步驟S411中,單板運(yùn)行本地版本軟件并啟動(dòng)本地版本軟件的業(yè)務(wù)功能。
在步驟S412中,如果單板的本地版本軟件無(wú)效或接收到的主控板的確認(rèn)是非肯定確認(rèn),則繼續(xù)運(yùn)行BOOTROM版本程序,等待主控板的干預(yù)。
在實(shí)際應(yīng)用中,主要有三個(gè)原因可以導(dǎo)致單板無(wú)法正常運(yùn)行(1)單板的本地版本軟件無(wú)效;(2)單板和主控板的通信鏈路發(fā)生斷路;(3)單板的本地版本軟件與主控板的本地版本軟件不匹配,這個(gè)原因還可以分為單板的BOOTROM版本程序支持或不支持啟動(dòng)BOOTROM版本程序后而直接運(yùn)行本地版本軟件的功能的兩種情況。
上述三個(gè)原因均會(huì)對(duì)本地版本軟件的校驗(yàn)過(guò)程產(chǎn)生負(fù)面影響。
當(dāng)單板的本地版本軟件無(wú)效時(shí),無(wú)論在現(xiàn)有技術(shù)的MCVC方法還是本發(fā)明提供的方法中,單板都會(huì)繼續(xù)運(yùn)行BOOTROM版本程序而不會(huì)進(jìn)行后續(xù)校驗(yàn)流程,但出現(xiàn)這種情況的概率非常小。
當(dāng)單板和主控板的通信鏈路發(fā)生斷路時(shí),如果單板正在執(zhí)行周期向主控板上報(bào)本地版本軟件信息的步驟,而由于通信鏈路發(fā)生斷路,主控板就不能接收到本地版本軟件信息,本地版本軟件也就接收不到肯定或非肯定確認(rèn),所以單板就會(huì)保持周期上報(bào)本地版本軟件信息的狀態(tài)而無(wú)法進(jìn)行后續(xù)流程;如果單板正在運(yùn)行BOOTROM版本程序并等待主控板的干預(yù),而由于通信鏈路發(fā)生斷路主控板無(wú)法對(duì)單板進(jìn)行干預(yù),則單板會(huì)繼續(xù)運(yùn)行BOOTROM版本程序而無(wú)法進(jìn)行后續(xù)流程。在現(xiàn)有技術(shù)的MCVC方法中,所有的校驗(yàn)步驟都是單板運(yùn)行BOOTROM版本程序時(shí)進(jìn)行的,如果單板在周期上報(bào)本地版本軟件信息的過(guò)程中或單板運(yùn)行BOOTROM版本程序并等待主控板干預(yù)時(shí),單板和主控板的通信鏈路發(fā)生了斷路,單板就會(huì)保持周期上報(bào)本地版本軟件信息或運(yùn)行BOOTROM版本程序的狀態(tài)而無(wú)法進(jìn)行后續(xù)流程,而且BOOTROM版本程序提供的近端調(diào)試功能極為有限,不能保證系統(tǒng)運(yùn)行的穩(wěn)定。而在本發(fā)明的方法中,只要BOOTROM版本程序支持啟動(dòng)BOOTROM版本程序后直接運(yùn)行本地版本軟件的功能,單板就可先運(yùn)行本地版本軟件,之后再執(zhí)行例如周期上報(bào)本地版本軟件信息的步驟,即使單板和主控板的通信鏈路發(fā)生斷路,致使單板保持周期上報(bào)本地版本軟件信息的狀態(tài),或者主控板返回非肯定確認(rèn),單板運(yùn)行本地版本軟件并等待主控板的干預(yù),單板都是處于運(yùn)行本地版本軟件的狀態(tài)。本地版本軟件相對(duì)于BOOTROM版本程序具有更強(qiáng)大的近端調(diào)試功能,在單板運(yùn)行本地版本軟件期間,如果系統(tǒng)要求單板提供某種調(diào)試功能,單板由于運(yùn)行了本地版本軟件就能夠完成這個(gè)任務(wù),所以,本發(fā)明提供的校驗(yàn)方法可以確保通信系統(tǒng)運(yùn)行的穩(wěn)定當(dāng)單板的本地版本軟件與主控板的本地版本軟件不匹配時(shí),主控板會(huì)向單板返回非肯定確認(rèn)。在現(xiàn)有技術(shù)的MCVC方法中,單板如果接收到非肯定確認(rèn),就不會(huì)運(yùn)行本地版本軟件,而是繼續(xù)運(yùn)行BOOTROM版本程序并等待主控板的干預(yù)。而在本發(fā)明的方法中,單板在接收到非肯定確認(rèn)后,雖然不會(huì)啟動(dòng)本地版本軟件的業(yè)務(wù)功能,但由于已經(jīng)運(yùn)行了本地版本軟件,所以還會(huì)繼續(xù)運(yùn)行本地版本軟件并等待主控板的干預(yù)。本地版本軟件相對(duì)于BOOTROM版本程序具有更強(qiáng)大的近端調(diào)試功能,在本發(fā)明中,即使單板的本地版本軟件與主控板的本地版本軟件不匹配,單板仍然運(yùn)行本地版本軟件,而相對(duì)于現(xiàn)有技術(shù)的MCVC方法中,單板運(yùn)行的是BOOTROM版本程序,本發(fā)明可提供更多的近端調(diào)試功能。
此外,當(dāng)單板向主控板上報(bào)本地版本軟件信息時(shí),主控板就開(kāi)始掌握單板的運(yùn)行狀態(tài)等信息。在現(xiàn)有技術(shù)的MCVC方法中,單板在運(yùn)行BOOTROM版本程序時(shí)向主控板上報(bào)本地版本軟件信息,如果主控板返回肯定確認(rèn),單板就運(yùn)行本地版本軟件,而運(yùn)行本地版本軟件的過(guò)程實(shí)際上是單板由BOOTROM版本程序向本地版本軟件切換的過(guò)程,在這個(gè)過(guò)程中鏈路一定會(huì)發(fā)生斷路現(xiàn)象,而主控板可能會(huì)誤認(rèn)為單板發(fā)生了故障,進(jìn)而采取一些處理措施,而實(shí)際上單板并未出現(xiàn)故障,所以這些處理措施對(duì)于單板甚至整個(gè)系統(tǒng)都是不必要的,而也有可能由于這些處理措施占用了系統(tǒng)資源,導(dǎo)致了系統(tǒng)資源的浪費(fèi),甚至?xí)绊憜伟逶菊5倪\(yùn)行狀態(tài)。而在本發(fā)明的方法中,單板可先運(yùn)行本地版本軟件,之后再上報(bào)本地版本軟件信息,換句話說(shuō),主控板開(kāi)始掌握單板的運(yùn)行狀態(tài)時(shí)單板就已經(jīng)完成了由BOOTROM版本程序向本地版本軟件切換的過(guò)程,主控板根本不知道這個(gè)斷路過(guò)程,所以,主控板也不會(huì)采取不必要的處理措施,克服了現(xiàn)有技術(shù)的MCVC方法存在的缺陷。
另外,對(duì)于主控板而言,只要主控板能夠識(shí)別單板發(fā)送的信息即可,主控板不需了解單板的BOOTROM版本程序是否支持不支持啟動(dòng)BOOTROM版本程序后直接運(yùn)行本地版本軟件的功能,所以,如果從現(xiàn)有的MCVC方法升級(jí)到本發(fā)明的校驗(yàn)方法,只需對(duì)單板的BOOTROM版本程序稍做修改即可,無(wú)須花費(fèi)大量的操作成本,確實(shí)具備可操行性。
以上所述僅是本發(fā)明的優(yōu)選實(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.一種單板中本地版本軟件的校驗(yàn)方法,其特征在于包括A.單板啟動(dòng)引導(dǎo)程序并運(yùn)行本地版本軟件;B.單板周期向主控板上報(bào)本地版本軟件信息;C.如果所述主控板回送的確認(rèn)為肯定確認(rèn),則啟動(dòng)所述本地版本軟件的業(yè)務(wù)功能,否則,繼續(xù)運(yùn)行所述本地版本軟件。
2.如權(quán)利要求1所述的單板中本地版本軟件的校驗(yàn)方法,其特征在于所述單板啟動(dòng)所述引導(dǎo)程序后還包括D.判斷所述引導(dǎo)程序是否支持啟動(dòng)所述引導(dǎo)程序后直接運(yùn)行所述本地版本軟件的功能,如果是,運(yùn)行所述本地版本軟件后進(jìn)入步驟B,否則,進(jìn)入步驟E;E.單板周期向所述主控板上報(bào)本地版本軟件信息;F.判斷所述主控板回送的確認(rèn)是否為肯定確認(rèn),如果是,進(jìn)入步驟G,否則,進(jìn)入步驟H;G.運(yùn)行所述本地版本軟件;H.所述單板繼續(xù)運(yùn)行所述引導(dǎo)程序中。
3.如權(quán)利要求1所述的單板中本地版本軟件的校驗(yàn)方法,其特征在于所述單板啟動(dòng)所述引導(dǎo)程序后還包括判斷所述引導(dǎo)程序是否支持啟動(dòng)所述引導(dǎo)程序后直接運(yùn)行所述本地版本軟件的功能,如果是,運(yùn)行所述本地版本軟件后進(jìn)入步驟B,否則,所述單板繼續(xù)運(yùn)行所述引導(dǎo)程序。
4.如權(quán)利要求1、2或3任意一項(xiàng)所述的單板中本地版本軟件的校驗(yàn)方法,其特征在于所述單板啟動(dòng)所述引導(dǎo)程序后還包括單板啟動(dòng)引導(dǎo)程序后,判斷本地版本軟件是否有效,如果是,進(jìn)入步驟D或運(yùn)行所述本地版本軟件后進(jìn)入步驟B,否則,單板繼續(xù)運(yùn)行所述引導(dǎo)程序。
5.如權(quán)利要求1或2所述的單板中本地版本軟件的校驗(yàn)方法,其特征在于單板周期向主控板上報(bào)所述本地版本軟件信息后,所述主控板判斷所述本地版本軟件信息是否與所述主控板本地版本軟件信息匹配,如果是,向所述單板發(fā)送肯定確認(rèn),否則,發(fā)送非肯定確認(rèn)。
6.如權(quán)利要求1、2或3所述的單板中本地版本軟件的校驗(yàn)方法,其特征在于所述單板繼續(xù)運(yùn)行所述引導(dǎo)程序時(shí),等待所述主控板的干預(yù)。
7.如權(quán)利要求6所述的單板中本地版本軟件的校驗(yàn)方法,其特征在于所述主控板干預(yù)所述單板的過(guò)程包括所述主控板激活所述單板的下載功能,所述單板自動(dòng)下載與所述主控板的本地版本軟件信息匹配的本地版本軟件。
8.如權(quán)利要求5所述的單板中本地版本軟件的校驗(yàn)方法,其特征在于所述主控板向所述單板發(fā)送否定確認(rèn)的同時(shí),向所述單板發(fā)送下載命令,所述下載命令包含所述主控板的本地版本軟件信息;所述單板根據(jù)所述下載命令下載與所述主控板的本地版本軟件信息匹配的本地版本軟件。
9.如權(quán)利要求1、2或3任意一項(xiàng)所述的單板中本地版本軟件的校驗(yàn)方法,其特征在于所述引導(dǎo)程序?yàn)锽OOTROM版本程序。
全文摘要
本發(fā)明提供了一種單板中本地版本軟件的校驗(yàn)方法,包括單板啟動(dòng)引導(dǎo)程序并運(yùn)行本地版本軟件;單板周期向主控板上報(bào)本地版本軟件信息;單板通過(guò)判斷主控板回送的確認(rèn)是否為肯定確認(rèn),決定啟動(dòng)本地版本軟件的業(yè)務(wù)功能或繼續(xù)運(yùn)行本地版本軟件。在本發(fā)明中,單板在啟動(dòng)引導(dǎo)程序后就立即運(yùn)行本地版本軟件,所以本發(fā)明的本地版本軟件校驗(yàn)過(guò)程都是在單板運(yùn)行本地版本軟件的情況下進(jìn)行的,無(wú)論上述兩個(gè)步驟中哪一個(gè)環(huán)節(jié)出現(xiàn)了問(wèn)題,或者在執(zhí)行上述兩個(gè)步驟期間系統(tǒng)發(fā)生了故障,本地版本軟件都可以提供強(qiáng)大的調(diào)試功能,對(duì)問(wèn)題或故障進(jìn)行處理。
文檔編號(hào)G06F9/445GK1967501SQ200610078679
公開(kāi)日2007年5月23日 申請(qǐng)日期2006年4月30日 優(yōu)先權(quán)日2006年4月30日
發(fā)明者周天翔 申請(qǐng)人:華為技術(shù)有限公司