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

用于預(yù)引導(dǎo)數(shù)據(jù)驗(yàn)證的方法和系統(tǒng)的制作方法

文檔序號(hào):6374090閱讀:143來源:國(guó)知局
專利名稱:用于預(yù)引導(dǎo)數(shù)據(jù)驗(yàn)證的方法和系統(tǒng)的制作方法
技術(shù)領(lǐng)域
本發(fā)明一般涉及包含用于啟始一個(gè)或更多程序執(zhí)行的BIOS(基本輸入/輸出系統(tǒng))的基于計(jì)算機(jī)的系統(tǒng)的啟動(dòng),尤其涉及包含針對(duì)這樣的程序的預(yù)引導(dǎo)數(shù)據(jù)驗(yàn)證的方法和系統(tǒng)。
背景技術(shù)
通常,當(dāng)電力首次施加到計(jì)算機(jī)系統(tǒng)時(shí),運(yùn)行存儲(chǔ)在非易失性存儲(chǔ)器中的啟動(dòng)程序。這樣的啟動(dòng)程序可以是指引導(dǎo)固件,而且口語稱為BIOS程序。這樣的BIOS程序在從范圍為標(biāo)準(zhǔn)個(gè)人計(jì)算機(jī)到嵌入式系統(tǒng)的計(jì)算機(jī)系統(tǒng)中執(zhí)行,該嵌入式系統(tǒng)在航空器中部署成一個(gè)航空電子設(shè)備(例如,航空電子設(shè)備單元或者“黑匣子”)。 BIOS程序的執(zhí)行,對(duì)檢測(cè)和識(shí)別通信耦合到在其中正在執(zhí)行BIOS的處理設(shè)備的系統(tǒng)組件是有用的。例如,通過BIOS的執(zhí)行,鑒定和尋址計(jì)算機(jī)硬盤驅(qū)動(dòng)器、顯示器以及外圍存儲(chǔ)器設(shè)備,使得BIOS將操作轉(zhuǎn)移給操作系統(tǒng)時(shí),這些設(shè)備的驅(qū)動(dòng)軟件被加載。在某些應(yīng)用中,BIOS可以包括開始運(yùn)行內(nèi)置測(cè)試(BIT)的軟件;從而確定硬盤驅(qū)動(dòng)器、顯示器等至少是部分地起作用的。這就是說,處理器能夠和這些設(shè)備通信。最終BIOS執(zhí)行完成,其中一部分BIOS指令使與設(shè)備相關(guān)聯(lián)的操作系統(tǒng),或者在航空器系統(tǒng)的情況下,操作飛行程序(OFP)開始其操作。在這樣的系統(tǒng)中,BIOS操作以開始操作系統(tǒng)或OFP的執(zhí)行。不過,BIOS不包括任何允許其驗(yàn)證操作系統(tǒng)或OFP的內(nèi)容的指令。因此,如果操作系統(tǒng)、OFP或者任何其他應(yīng)用程序毀壞,可能危及特定系統(tǒng)的操作,或者其根本不運(yùn)行。在航空器航空電子設(shè)備的例子中,從BIOS或引導(dǎo)ROM執(zhí)行OFP期間的問題,是錯(cuò)誤的移去和替換行為的原因。例如,如果設(shè)備不恰當(dāng)執(zhí)行0FP,航空電子設(shè)備被移去和替換,移去的設(shè)備被送入維護(hù)倉庫。常常,所述移去設(shè)備的問題不能被復(fù)制或者其確定OFP毀壞。因此,修理包括OFP重新加載、重新測(cè)試以及重新投入使用。

發(fā)明內(nèi)容
根據(jù)本發(fā)明的一方面,其提供在用于程序執(zhí)行的數(shù)據(jù)加載之前,用于驗(yàn)證定義可執(zhí)行程序的數(shù)據(jù)的方法。該方法包括,為在主數(shù)據(jù)存儲(chǔ)區(qū)內(nèi)的數(shù)據(jù)計(jì)算驗(yàn)證數(shù)值,該數(shù)據(jù)定義可執(zhí)行程序,比較計(jì)算的驗(yàn)證數(shù)值與存儲(chǔ)的數(shù)值,如果驗(yàn)證數(shù)值匹配于存儲(chǔ)的數(shù)值則執(zhí)行在主數(shù)據(jù)存儲(chǔ)區(qū)內(nèi)的程序,為定義可執(zhí)行程序的在第二數(shù)據(jù)存儲(chǔ)區(qū)內(nèi)的數(shù)據(jù)計(jì)算驗(yàn)證數(shù)值,該可執(zhí)行程序與在主數(shù)據(jù)存儲(chǔ)區(qū)內(nèi)的可執(zhí)行程序相同。如果驗(yàn)證數(shù)值和存儲(chǔ)的數(shù)值不匹配,比較在第二數(shù)據(jù)存儲(chǔ)區(qū)內(nèi)數(shù)據(jù)的計(jì)算的驗(yàn)證數(shù)值和存儲(chǔ)的數(shù)值,如果在第二數(shù)據(jù)存儲(chǔ)區(qū)內(nèi)數(shù)據(jù)的驗(yàn)證數(shù)值和存儲(chǔ)的數(shù)值匹配,使該程序執(zhí)行,如果在第二數(shù)據(jù)存儲(chǔ)區(qū)內(nèi)數(shù)據(jù)的驗(yàn)證數(shù)值和存儲(chǔ)的數(shù)值不匹配,指示失敗。優(yōu)選地,該方法進(jìn)一步包括對(duì)于包含定義相同可執(zhí)行程序的數(shù)據(jù)的每個(gè)數(shù)據(jù)存儲(chǔ)區(qū)的重復(fù)步驟d)、e)以及f)。優(yōu)選地,該方法進(jìn)一步包括如果第二數(shù)據(jù)存儲(chǔ)區(qū)的計(jì)算的驗(yàn)證數(shù)值和存儲(chǔ)的數(shù)值匹配,則將在第二存儲(chǔ)區(qū)內(nèi)的數(shù)據(jù)復(fù)制到主存儲(chǔ)區(qū)。有利地,該方法可以包括計(jì)算用于航空器航空電子設(shè)備的操作飛行程序的校驗(yàn)和。有利地,該方法可以包括執(zhí)行在引導(dǎo)ROM設(shè)備內(nèi)的指令,以計(jì)算定義可執(zhí)行程序的數(shù)據(jù)的校驗(yàn)和。有利地,該方法可以包括比較計(jì)算的驗(yàn)證數(shù)值和存儲(chǔ)在與基本輸入/輸出系統(tǒng)相關(guān)聯(lián)的內(nèi)存中的數(shù)值。根據(jù)本發(fā)明的進(jìn)一步方面,提供一種設(shè)備,其包括處理單元;引導(dǎo)R0M,從所述引導(dǎo)ROM所述處理單元執(zhí)行基本輸入/輸出系統(tǒng);主數(shù)據(jù)存儲(chǔ)區(qū),配置為存儲(chǔ)與所述設(shè)備相關(guān)聯(lián)的可執(zhí)行應(yīng)用程序映像;以及至少一個(gè)第二數(shù)據(jù)存儲(chǔ)區(qū),配置為存儲(chǔ)與所述設(shè)備相關(guān)聯(lián)的可執(zhí)行應(yīng)用程序的至少一個(gè)額外映像。所述設(shè)備被編程為為存儲(chǔ)在所述主數(shù)據(jù)存儲(chǔ)區(qū)內(nèi)的映像和存儲(chǔ)在所述至少一個(gè)第二數(shù)據(jù)存儲(chǔ)區(qū)內(nèi)的每個(gè)映像計(jì)算單獨(dú)的驗(yàn)證數(shù)值;將每個(gè)映像的計(jì)算的單獨(dú)驗(yàn)證數(shù)值與在所述引導(dǎo)ROM內(nèi)存儲(chǔ)的數(shù)值進(jìn)行比較;將來自映像的計(jì)算的驗(yàn)證數(shù)值和存儲(chǔ)的數(shù)值匹配的所述主數(shù)據(jù)存儲(chǔ)區(qū)和第二數(shù)據(jù)存儲(chǔ)區(qū)之中一個(gè)的映像,復(fù)制到映像的計(jì)算的單獨(dú)驗(yàn)證數(shù)值和存儲(chǔ)的數(shù)值不匹配的任意主數(shù)據(jù)存儲(chǔ)區(qū)或第二數(shù)據(jù)存儲(chǔ)區(qū);以及執(zhí)行由所述主數(shù)據(jù)存儲(chǔ)區(qū)和第二數(shù)據(jù)存儲(chǔ)區(qū)中的一個(gè)存儲(chǔ)映像定義的程 序。有利地,該設(shè)備可以包括航空器航空電子設(shè)備單元。有利地,該設(shè)備可以包括操作飛行程序,以及計(jì)算的單獨(dú)驗(yàn)證數(shù)值可以包括用于操作飛行程序的校驗(yàn)和。有利地,該設(shè)備可以編程為在由該映像定義的程序執(zhí)行之前,為每個(gè)在所述主數(shù)據(jù)存儲(chǔ)區(qū)和第二數(shù)據(jù)存儲(chǔ)區(qū)內(nèi)的映像驗(yàn)證計(jì)算的單獨(dú)驗(yàn)證數(shù)值是否匹配存儲(chǔ)的數(shù)值。有利地,其中計(jì)算單獨(dú)驗(yàn)證數(shù)值的設(shè)備可以編程為用于執(zhí)行在所述引導(dǎo)ROM內(nèi)的指令,以計(jì)算可執(zhí)行應(yīng)用程序映像的校驗(yàn)和。有利地,其中所述設(shè)備包括隨機(jī)存取存儲(chǔ)器,該設(shè)備可以編程為將來自計(jì)算的單獨(dú)驗(yàn)證數(shù)值匹配存儲(chǔ)的數(shù)值的所述數(shù)據(jù)存儲(chǔ)區(qū)中一個(gè)的映像,復(fù)制到所述隨機(jī)存取存儲(chǔ)器用于執(zhí)行。有利地,該設(shè)備可以包括硅存儲(chǔ)器設(shè)備、計(jì)算機(jī)硬盤驅(qū)動(dòng)器、CD-ROM(只讀光盤驅(qū)動(dòng)器)、閃存驅(qū)動(dòng)器以及拇指驅(qū)動(dòng)器中的至少一個(gè)。根據(jù)本發(fā)明的更進(jìn)一步方面,提供了包含計(jì)算機(jī)可執(zhí)行指令的一個(gè)或更多計(jì)算機(jī)可讀存儲(chǔ)介質(zhì)。所述存儲(chǔ)介質(zhì)的至少一部分包括表示與可執(zhí)行應(yīng)用程序相關(guān)聯(lián)的校驗(yàn)和的數(shù)據(jù)。其中當(dāng)由至少一個(gè)處理器執(zhí)行時(shí),計(jì)算機(jī)可執(zhí)行指令使至少一個(gè)處理器執(zhí)行以下步驟為多個(gè)數(shù)據(jù)存儲(chǔ)區(qū)內(nèi)的數(shù)據(jù)計(jì)算單獨(dú)驗(yàn)證數(shù)值,每個(gè)數(shù)據(jù)存儲(chǔ)區(qū)內(nèi)的數(shù)據(jù)定義相同的可執(zhí)行程序;將多個(gè)數(shù)據(jù)存儲(chǔ)區(qū)中每個(gè)的計(jì)算的單獨(dú)驗(yàn)證數(shù)值和存儲(chǔ)的數(shù)值比較;將來自計(jì)算的單獨(dú)驗(yàn)證數(shù)值和存儲(chǔ)的數(shù)值匹配的多個(gè)數(shù)據(jù)存儲(chǔ)區(qū)中一個(gè)的數(shù)據(jù),復(fù)制到計(jì)算的單獨(dú)驗(yàn)證數(shù)值和存儲(chǔ)的數(shù)值不匹配的多個(gè)數(shù)據(jù)存儲(chǔ)區(qū)中的任意一個(gè);以及執(zhí)行由多個(gè)數(shù)據(jù)存儲(chǔ)區(qū)之中一個(gè)的存儲(chǔ)數(shù)據(jù)定義的程序。有利地,所述計(jì)算機(jī)可執(zhí)行指令在存儲(chǔ)數(shù)據(jù)定義的程序執(zhí)行之前,使至少一個(gè)處理器驗(yàn)證每個(gè)數(shù)據(jù)存儲(chǔ)區(qū)的計(jì)算的驗(yàn)證數(shù)值和存儲(chǔ)的數(shù)值是否匹配。根據(jù)本發(fā)明的進(jìn)一步方面,其提供用于來自內(nèi)存源的程序執(zhí)行的方法。該方法包括,為多個(gè)數(shù)據(jù)存儲(chǔ)區(qū)內(nèi)的數(shù)據(jù)計(jì)算單獨(dú)驗(yàn)證數(shù)值,在每個(gè)數(shù)據(jù)存儲(chǔ)區(qū)內(nèi)的數(shù)據(jù)定義相同可執(zhí)行程序;比較每個(gè)數(shù)據(jù)存儲(chǔ)區(qū)的計(jì)算的單獨(dú)驗(yàn)證數(shù)值和存儲(chǔ)的數(shù)值;將來自計(jì)算的單獨(dú)驗(yàn)證數(shù)值匹配于存儲(chǔ)的數(shù)值的多個(gè)數(shù)據(jù)存儲(chǔ)區(qū)中一個(gè)的數(shù)據(jù),復(fù)制到計(jì)算的單獨(dú)驗(yàn)證數(shù)值不匹配存儲(chǔ)的數(shù)值的多個(gè)數(shù)據(jù)存儲(chǔ)區(qū)中的任何存儲(chǔ)區(qū);以及執(zhí)行由多個(gè)數(shù)據(jù)存儲(chǔ)區(qū)中一個(gè)的存儲(chǔ)數(shù)據(jù)定義的程序。優(yōu)選地,該方法可以進(jìn)一步包括在存儲(chǔ)數(shù)據(jù)定義的程序執(zhí)行之前,驗(yàn)證每個(gè)數(shù)據(jù)存儲(chǔ)區(qū)的計(jì)算的單獨(dú)驗(yàn)證數(shù)值匹配存儲(chǔ)的數(shù)值。有利地,其中計(jì)算單獨(dú)驗(yàn)證數(shù)值,該方法可以進(jìn)一步包括以下之中的至少一個(gè)為航空器航空電子設(shè)備的操作飛行程序計(jì)算校驗(yàn)和;以及執(zhí)行在引導(dǎo)ROM設(shè)備內(nèi)的指令以計(jì)算定義相同可執(zhí)行程序的數(shù)據(jù)的校驗(yàn)和。已經(jīng)討論的本發(fā)明的特征、功能及其優(yōu)點(diǎn)可以在各種實(shí)施例中獨(dú)立實(shí)現(xiàn),或者可以與其他實(shí)施例結(jié)合實(shí)現(xiàn),其進(jìn)一步細(xì)節(jié)可以參考下列描述以及繪圖。


圖I示出驗(yàn)證過程的流程圖。圖2是一個(gè)處理系統(tǒng)示意圖,其中示出在不同存儲(chǔ)區(qū)內(nèi)的一個(gè)應(yīng)用程序的多個(gè)映像。
圖3示出一個(gè)數(shù)據(jù)處理系統(tǒng)的示意圖。圖4示出驗(yàn)證過程的替代實(shí)施的流程圖。
具體實(shí)施例方式描述的實(shí)施例針對(duì)存儲(chǔ)在,例如非易失性存儲(chǔ)器中的數(shù)據(jù)(例如,操作系統(tǒng)文件,應(yīng)用程序以及啟動(dòng)計(jì)算機(jī)系統(tǒng)需要的包括例如關(guān)鍵系統(tǒng)文件、內(nèi)核文件、配置文件等的其他信息)被加載用于執(zhí)行之前,該數(shù)據(jù)的驗(yàn)證。在示例性實(shí)施例中,如果驗(yàn)證測(cè)試失敗(例如,校驗(yàn)和測(cè)試失敗),可以利用相同數(shù)據(jù)的第二來源。如果數(shù)據(jù)的第二來源通過驗(yàn)證測(cè)試,加載來自與第二來源相關(guān)內(nèi)存的數(shù)據(jù)并執(zhí)行該數(shù)據(jù)。在某些實(shí)施例中,在第二來源中驗(yàn)證的數(shù)據(jù)副本可以重寫主內(nèi)存中不能被驗(yàn)證的數(shù)據(jù)。由于存儲(chǔ)設(shè)備繼續(xù)在容量上增加并且在物理尺寸上減小,設(shè)想三個(gè)、四個(gè)、五個(gè)以及多達(dá)η個(gè)數(shù)據(jù)來源是可能的,其允許在出現(xiàn)失敗指示之前,加載用于執(zhí)行的應(yīng)用程序的多個(gè)嘗試。這樣的實(shí)施例還提供以其他來源的有效文件重寫任何毀壞的文件的能力,從而提供“自我修復(fù)”功能。正如這里所描述的,額外的指令被添加到基本輸入/輸出系統(tǒng)(BIOS)。該指令使對(duì)構(gòu)成例如操作系統(tǒng)內(nèi)容、應(yīng)用程序以及啟動(dòng)系統(tǒng)的其他存儲(chǔ)信息的數(shù)據(jù)執(zhí)行驗(yàn)證。在一個(gè)簡(jiǎn)單例子中,在BIOS中執(zhí)行的指令,使為存儲(chǔ)在非易失性存儲(chǔ)器中的航空電子設(shè)備單元的操作飛行程序(OFP)計(jì)算校驗(yàn)和,該操作飛行程序打算由航空電子設(shè)備單元或“黑匣子”執(zhí)行。BIOS進(jìn)一步驗(yàn)證計(jì)算的校驗(yàn)和等于針對(duì)OFP的存儲(chǔ)校驗(yàn)和,校驗(yàn)和存儲(chǔ)在,例如與BIOS相關(guān)聯(lián)的內(nèi)存中。正如關(guān)于圖I進(jìn)一步解釋的,如果校驗(yàn)和相等,BIOS允許和/或使OFP運(yùn)彳丁。如果校驗(yàn)和不相等,BIOS移動(dòng)到存儲(chǔ)另一個(gè)OFP實(shí)例的另一個(gè)內(nèi)存位置,使校驗(yàn)和被計(jì)算,并且相對(duì)于存儲(chǔ)的校驗(yàn)和進(jìn)行驗(yàn)證。該過程可以重復(fù)對(duì)OFP的多個(gè)鏡像映像進(jìn)行,直到發(fā)現(xiàn)具有可驗(yàn)證校驗(yàn)和的映像,在這點(diǎn)上接著執(zhí)行該映像或者將該映像傳輸?shù)絻?nèi)存中,以供執(zhí)行。進(jìn)一步地,通過校驗(yàn)和驗(yàn)證測(cè)試的OFP映像,可以被復(fù)制到校驗(yàn)和不能被驗(yàn)證的內(nèi)存位置,據(jù)推測(cè)可以生成在系統(tǒng)未來啟動(dòng)中運(yùn)行的OFP的可驗(yàn)證的副本。在這個(gè)實(shí)施例中,執(zhí)行BIOS的引導(dǎo)ROM配置了第二(第三的,等等)數(shù)據(jù)源的位置(在內(nèi)存中)。利用圖I的流程圖10更容易想象上述概念。雖然實(shí)際序列可以以很多方式執(zhí)行,該很多方式在以下方面是一致,即一個(gè)或更多第二數(shù)據(jù)源對(duì)用于主數(shù)據(jù)源的加載、執(zhí)行和替換的處理功能是可存取的。參考流程圖10,計(jì)算12用于主數(shù)據(jù)存儲(chǔ)區(qū)的驗(yàn)證數(shù)值,并且計(jì)算的驗(yàn)證數(shù)值和例如校驗(yàn)和的存儲(chǔ)的數(shù)值比較14。如果驗(yàn)證數(shù)值和存儲(chǔ)的數(shù)值匹配16,加載和執(zhí)行18存儲(chǔ)在主數(shù)據(jù)存儲(chǔ)區(qū)的程序。如果驗(yàn)證數(shù)值和存儲(chǔ)的數(shù)值不匹配16,為應(yīng)當(dāng)包括數(shù)據(jù)的完全相同副本的第二數(shù)據(jù)存儲(chǔ)區(qū)計(jì)算20驗(yàn)證數(shù)值,該數(shù)據(jù)應(yīng)當(dāng)已經(jīng)在主數(shù)據(jù)存儲(chǔ)區(qū)之中。為第二數(shù)據(jù)存儲(chǔ)區(qū)計(jì)算20的驗(yàn)證數(shù)值和存儲(chǔ)的數(shù)值比較22。如果驗(yàn)證數(shù)值和與第二數(shù)據(jù)存儲(chǔ)區(qū)相關(guān)聯(lián)的存儲(chǔ)的數(shù)值是匹配的24,執(zhí)行26存儲(chǔ)在第二數(shù)據(jù)存儲(chǔ)區(qū)的程序。如果驗(yàn)證數(shù)值和與第二數(shù)據(jù)存儲(chǔ)區(qū)相關(guān)聯(lián)的存儲(chǔ)的數(shù)值不匹配24,可以假設(shè)該單元已經(jīng)失效28。來自第二數(shù)據(jù)存儲(chǔ)區(qū)的程序執(zhí)行可以以多種方式實(shí)施。該程序可以從第二數(shù)據(jù)存儲(chǔ)區(qū)直接執(zhí)行,或可以將第二數(shù)據(jù)存儲(chǔ)區(qū)的數(shù)據(jù)復(fù)制30到主數(shù)據(jù)存儲(chǔ)區(qū),使得其可以從主數(shù)據(jù)存儲(chǔ)區(qū)執(zhí)行??商娲?,該程序可以從第二數(shù)據(jù)存儲(chǔ)區(qū)執(zhí)行,接著一旦加載程序后,就復(fù)制30到主存儲(chǔ)區(qū)作為自我修復(fù)功能。在另一個(gè)實(shí)施例中,存儲(chǔ)在第二數(shù)據(jù)存儲(chǔ)區(qū)的程序加載到程序可以執(zhí)行的內(nèi)存中。
在與圖I相關(guān)聯(lián)的最簡(jiǎn)單例子中,如果關(guān)于主內(nèi)存位置,數(shù)據(jù)驗(yàn)證功能(計(jì)算和存儲(chǔ)的數(shù)值之間的比較)通過,執(zhí)行18在這樣內(nèi)存位置的程序。不過,本領(lǐng)域技術(shù)人員應(yīng)當(dāng)理解圖I示出的過程不必限于兩個(gè)數(shù)據(jù)存儲(chǔ)區(qū)。可以設(shè)想在某些應(yīng)用程序中,數(shù)據(jù)驗(yàn)證功能可以關(guān)于η個(gè)數(shù)據(jù)存儲(chǔ)區(qū)來完成。尤其是,驗(yàn)證數(shù)值的計(jì)算可以包括計(jì)算一個(gè)值,例如校驗(yàn)和。圖2示出可以以多種方式嵌入的主數(shù)據(jù)存儲(chǔ)區(qū)、第二數(shù)據(jù)存儲(chǔ)區(qū)以及第三數(shù)據(jù)存儲(chǔ)區(qū)等等。在圖2中,處理器100耦合到存儲(chǔ)BIOS的引導(dǎo)ROM設(shè)備102。一部分引導(dǎo)ROM設(shè)備102為由處理器100執(zhí)行的應(yīng)用程序存儲(chǔ)校驗(yàn)和(或針對(duì)多個(gè)應(yīng)用程序的多個(gè)校驗(yàn)和)104。內(nèi)存110包括待執(zhí)行應(yīng)用程序的主映像112。正如本文所述,包含處理器100、引導(dǎo)ROM 102和內(nèi)存110的該設(shè)備可以配置為包括例如,多個(gè)存儲(chǔ)設(shè)備120和130的多個(gè)存儲(chǔ)設(shè)備。正如圖2的例子所示,存儲(chǔ)設(shè)備120配置了待執(zhí)行應(yīng)用程序的兩個(gè)映像(122和124),以及存儲(chǔ)設(shè)備130配置了待執(zhí)行應(yīng)用程序的單個(gè)映像132。在存儲(chǔ)設(shè)備120的例子中,數(shù)據(jù)存儲(chǔ)區(qū)可以是在單個(gè)存儲(chǔ)設(shè)備中的單獨(dú)區(qū)域。在另一個(gè)例子中,數(shù)據(jù)存儲(chǔ)區(qū)可以實(shí)施為物理獨(dú)立的存儲(chǔ)設(shè)備(例如,硬盤驅(qū)動(dòng)器、硅存儲(chǔ)設(shè)備、CD-ROM、閃存驅(qū)動(dòng)器或拇指驅(qū)動(dòng)器等)。仍然在另一個(gè)例子中,數(shù)據(jù)存儲(chǔ)區(qū)可以實(shí)施為相同類型的多個(gè)物理獨(dú)立設(shè)備(例如,在單獨(dú)電路板上的多個(gè)存儲(chǔ)設(shè)備)。再一次地,可以利用多個(gè)物理存儲(chǔ)設(shè)備實(shí)施例和配置的結(jié)合以實(shí)現(xiàn)本文描述的功能。進(jìn)一步地,該實(shí)施例不限于操作飛行程序。待驗(yàn)證的數(shù)據(jù)可以包括存儲(chǔ)在內(nèi)存中的操作系統(tǒng)、應(yīng)用程序和/或啟動(dòng)系統(tǒng)需要的其他信息。在該實(shí)施例中,在加載用于執(zhí)行的存儲(chǔ)在內(nèi)存中的數(shù)據(jù)之前或者在BIOS轉(zhuǎn)移系統(tǒng)控制到操作系統(tǒng)之前,確認(rèn)(驗(yàn)證)存儲(chǔ)在內(nèi)存中的該數(shù)據(jù)。如果驗(yàn)證失敗,利用這樣數(shù)據(jù)的第二來源,假設(shè)其也通過驗(yàn)證測(cè)試。另外,可以從內(nèi)存中加載來自第二數(shù)據(jù)源中一個(gè)的數(shù)據(jù),并且復(fù)制到主數(shù)據(jù)內(nèi)存。例如,再次參考圖2,如果映像112是主映像而且為映像112計(jì)算的驗(yàn)證不匹配存儲(chǔ)在引導(dǎo)ROM 102中的校驗(yàn)和104,而且映像132不匹配存儲(chǔ)在引導(dǎo)ROM 102中的校驗(yàn)和,可以配置引導(dǎo)ROM 102包括將映像132復(fù)制到內(nèi)存110的指令,重寫可以認(rèn)為已經(jīng)毀壞的映像112(為了該實(shí)施例描述的目的)。在某些應(yīng)用程序中,例如,上述的航空器航空電子系統(tǒng),在各種不同位置的操作需要的軟件和數(shù)據(jù)的多個(gè)副本,使系統(tǒng)具有允許問題自動(dòng)糾正的高度冗余,其可以防止啟動(dòng)和最終的系統(tǒng)操作。在有操作員的情況下,該功能是自動(dòng)的而且節(jié)省時(shí)間。在一個(gè)實(shí)施例中,本文描述的方法、系統(tǒng)和計(jì)算機(jī)可讀介質(zhì)的技術(shù)效果包括下列的至少一個(gè)(a)如所期望的,通過,例如數(shù)據(jù)校驗(yàn)和等于存儲(chǔ)校驗(yàn)和,來驗(yàn)證設(shè)備的數(shù)據(jù)存儲(chǔ)區(qū)內(nèi)的組成可執(zhí)行程序的數(shù)據(jù);(b)如果驗(yàn)證測(cè)試通過,執(zhí)行與數(shù)據(jù)存儲(chǔ)設(shè)備相關(guān)聯(lián)的程序;(C)如所期望的,通過,例如數(shù)據(jù)校驗(yàn)和等于存儲(chǔ)校驗(yàn)和,來試圖驗(yàn)證設(shè)備的不同數(shù)據(jù)存儲(chǔ)區(qū)內(nèi)的組成可執(zhí)行程序的數(shù)據(jù);(d)如果驗(yàn)證測(cè)試通過,執(zhí)行來自不同數(shù)據(jù)存儲(chǔ)設(shè)備的程序;以及(e)潛在地,將不同數(shù)據(jù)存儲(chǔ)區(qū)的程序復(fù)制到初始數(shù)據(jù)存儲(chǔ)區(qū),使得該設(shè)備可以在稍后的時(shí)間執(zhí)行來自初始數(shù)據(jù)存儲(chǔ)區(qū)的程序。現(xiàn)轉(zhuǎn)向圖3,其示出根據(jù)示例性實(shí)施例的數(shù)據(jù)處理系統(tǒng)的更詳細(xì)示意圖。在這個(gè)示例性例子中,數(shù)據(jù)處理系統(tǒng)300包括通信結(jié)構(gòu)302、處理器單元304、內(nèi)存306、永久存儲(chǔ)器308、通信單元310、輸入/輸出(I/O)單元312以及顯示器314,其中通信結(jié)構(gòu)302在它們之間提供通信。在各種實(shí)施例中,系統(tǒng)300代表通用個(gè)人計(jì)算機(jī)或航空器航空電子設(shè)備 單元。處理器單元304用作執(zhí)行可以加載到內(nèi)存306的軟件的指令。處理器單元304可以根據(jù)特定實(shí)施是一個(gè)或更多處理器的集合,或者可以是多核處理器。進(jìn)一步地,處理器單元304可以利用一個(gè)或更多各種不同類型處理器存在于單個(gè)芯片上的異構(gòu)處理器系統(tǒng)來實(shí)施。作為另一個(gè)示例性例子,處理器單元304可以是包括相同類型多個(gè)處理器的對(duì)稱多處理器系統(tǒng)。內(nèi)存306和永久存儲(chǔ)器308是在其中可以存儲(chǔ)應(yīng)用程序,例如OFP映像(或者多個(gè)映像)的各種存儲(chǔ)設(shè)備的例子。正如本文所使用的,存儲(chǔ)設(shè)備或內(nèi)存是能夠以臨時(shí)基礎(chǔ)或永久基礎(chǔ)存儲(chǔ)信息的任何硬件。在這些例子中,內(nèi)存306可以是,例如但不限于隨機(jī)存取內(nèi)存(RAM)或者任何其他合適的易失性或非易失性硅基存儲(chǔ)設(shè)備。內(nèi)存306的一部分可以配置為如前面段落描述的引導(dǎo)ROM設(shè)備。根據(jù)特定實(shí)施,永久存儲(chǔ)器308可以采用各種形式。例如但不限于,永久存儲(chǔ)器308可以包括一個(gè)或更多組件或設(shè)備。例如永久存儲(chǔ)器308可以是硬盤驅(qū)動(dòng)器、閃存、可擦寫光盤、可擦寫磁帶或所示的某些結(jié)合。由永久存儲(chǔ)器308使用的介質(zhì)還可以是可移動(dòng)的。例如但不限于,移動(dòng)硬盤驅(qū)動(dòng)器可以用于永久存儲(chǔ)器308。在這些例子中,通信單元310提供與其他數(shù)據(jù)處理系統(tǒng)或設(shè)備的通信。在這些例子中,通信單元310是網(wǎng)絡(luò)接口卡(NIC)。通信單元310可以通過物理和無線通信鏈路中的一個(gè)或兩者來提供通信。輸入/輸出單元312允許利用連接到數(shù)據(jù)處理系統(tǒng)300的其他設(shè)備的數(shù)據(jù)輸入輸出。例如但不限于,輸入/輸出單元312可以通過鍵盤和鼠標(biāo)為用戶輸入提供連接。進(jìn)一步地,輸入/輸出單元312可以發(fā)送輸出到打印機(jī)。顯示器314給用戶提供顯示信息的機(jī)制。操作系統(tǒng)和應(yīng)用程序的指令或程序位于永久存儲(chǔ)器308上。這些指令可以加載到內(nèi)存306之中,由處理器單元304執(zhí)行。不同實(shí)施例的過程可以利用位于,例如內(nèi)存306的內(nèi)存中的計(jì)算機(jī)實(shí)施指令,由處理器單元304來執(zhí)行。這些指令稱為機(jī)器代碼,其可以由在處理器單元304中的處理器讀取和執(zhí)行。在不同實(shí)施例中的機(jī)器代碼可以包括在不同的物理或有形的計(jì)算機(jī)可讀介質(zhì)上例如內(nèi)存306或永久存儲(chǔ)器308。
替代地或額外地,機(jī)器代碼316以功能形式位于選擇性可移動(dòng)的計(jì)算機(jī)可讀介質(zhì)318上,而且可以加載或傳輸?shù)綌?shù)據(jù)處理系統(tǒng)300上由處理單元304來執(zhí)行。在這些例子中,機(jī)器代碼316和計(jì)算機(jī)可讀介質(zhì)318形成計(jì)算機(jī)程序產(chǎn)品320。在一個(gè)例子中,計(jì)算機(jī)可讀介質(zhì)318可以是有形的形式,例如插入或置于永久存儲(chǔ)器308 —部分的驅(qū)動(dòng)器中或是其他設(shè)備中的光盤或磁盤,用于轉(zhuǎn)移到例如是永久存儲(chǔ)器308 —部分的硬盤驅(qū)動(dòng)器的存儲(chǔ)設(shè)備中。以有形的形式,計(jì)算機(jī)可讀介質(zhì)318還可以采用永久存儲(chǔ)器的形式,例如硬盤驅(qū)動(dòng)器,拇指驅(qū)動(dòng)器或者是連接到數(shù)據(jù)處理系統(tǒng)300的閃存。計(jì)算機(jī)可讀介質(zhì)318的有形形式也稱為計(jì)算機(jī)可記錄存儲(chǔ)介質(zhì)。在某些例子中,計(jì)算機(jī)可讀介質(zhì)318是不可以移動(dòng)的??商娲?,機(jī)器代碼316可以從計(jì)算機(jī)可讀介質(zhì)318,通過到通信單元310的通信鏈接和/或通過到輸入/輸出單元312的連接,轉(zhuǎn)移到數(shù)據(jù)處理系統(tǒng)300。在示例性例子中,通信鏈接和/或連接可以是物理的或無線的。計(jì)算機(jī)可讀介質(zhì)還可以采用非有形介質(zhì)的形式,例如通信鏈接或包含機(jī)器代碼的無線傳輸。
在某些示例性實(shí)施例中,機(jī)器代碼316可以從另一個(gè)設(shè)備或數(shù)據(jù)處理系統(tǒng)通過網(wǎng)絡(luò)下載到永久存儲(chǔ)器308,用于在數(shù)據(jù)處理系統(tǒng)300內(nèi)的使用。例如,存儲(chǔ)在數(shù)據(jù)處理服務(wù)器的計(jì)算機(jī)可讀存儲(chǔ)介質(zhì)中的機(jī)器代碼,可以通過網(wǎng)絡(luò)從服務(wù)器下載到數(shù)據(jù)處理系統(tǒng)300中。提供機(jī)器代碼316的數(shù)據(jù)處理服務(wù)器可以是主計(jì)算機(jī)、客戶端計(jì)算機(jī)或某個(gè)能夠存儲(chǔ)和傳輸機(jī)器代碼316的其他設(shè)備。為數(shù)據(jù)處理系統(tǒng)300示出的不同組件,不意味著在實(shí)施不同實(shí)施例的方式中提供架構(gòu)限制。不同示例性實(shí)施例,可以在包括除了那些為數(shù)據(jù)處理系統(tǒng)300示出的組件以外組件的或者替換那些為數(shù)據(jù)處理系統(tǒng)300示出的組件以外組件的數(shù)據(jù)處理系統(tǒng)中實(shí)施。在圖3中示出的其他組件可以不同于示例性例子中所示出的。作為一個(gè)例子,在數(shù)據(jù)處理系統(tǒng)300中的存儲(chǔ)設(shè)備是可以存儲(chǔ)數(shù)據(jù)的任何硬件裝置。內(nèi)存306、永久存儲(chǔ)器308以及計(jì)算機(jī)可讀介質(zhì)318是存儲(chǔ)設(shè)備有形形式的例子。在另一個(gè)例子中,總線系統(tǒng)可以用于實(shí)施通信結(jié)構(gòu)302,而且可以包括一個(gè)或更多總線,例如系統(tǒng)總線或輸入/輸出總線。當(dāng)然,總線系統(tǒng)可以利用任何合適類型的架構(gòu)來實(shí)施,為連接到總線系統(tǒng)的不同組件或者設(shè)備之間提供數(shù)據(jù)傳輸。另外,通信單元可以包括一個(gè)或者更多用于傳輸和接收數(shù)據(jù)的設(shè)備,例如調(diào)制解調(diào)器或者網(wǎng)絡(luò)適配器。進(jìn)一步地,內(nèi)存可以是,例如但不限于內(nèi)存306或者高速緩存器,其可以通過到可以通過通信結(jié)構(gòu)302訪問的外部的內(nèi)存或者內(nèi)存控制器的接口找到。圖4示出說明驗(yàn)證過程的替代實(shí)施的流程圖400。上述的實(shí)施例描述系統(tǒng)計(jì)算程序存儲(chǔ)區(qū)校驗(yàn)和,直到發(fā)現(xiàn)具有適當(dāng)校驗(yàn)和的程序存儲(chǔ)區(qū),因此從該存儲(chǔ)區(qū)執(zhí)行程序的過程。流程圖400示出驗(yàn)證所有程序存儲(chǔ)區(qū)的過程,即使第一程序存儲(chǔ)區(qū)已經(jīng)通過校驗(yàn)和測(cè)試。通過驗(yàn)證所有程序存儲(chǔ)區(qū)的內(nèi)容,避免了這樣的情況程序存儲(chǔ)區(qū)2到η被毀壞,但是這樣的毀壞未被察覺,因?yàn)槌绦虼鎯?chǔ)區(qū)I總是已經(jīng)通過驗(yàn)證測(cè)試。如果程序存儲(chǔ)區(qū)2到η的毀壞未被察覺,如果程序存儲(chǔ)區(qū)I不通過驗(yàn)證測(cè)試,則包含程序存儲(chǔ)區(qū)I到η的單元將不可避免呈現(xiàn)為不可操作?,F(xiàn)參考流程圖400,為主地址(程序存儲(chǔ)區(qū)I)執(zhí)行402數(shù)據(jù)驗(yàn)證功能。具體地,類似于前面段落中所述,計(jì)算驗(yàn)證數(shù)值,將其和存儲(chǔ)的數(shù)值比較,以及存儲(chǔ)比較結(jié)果。為第二地址(程序存儲(chǔ)區(qū)2)執(zhí)行404數(shù)據(jù)驗(yàn)證功能,并存儲(chǔ)結(jié)果,以及針對(duì)η個(gè)地址(程序存儲(chǔ)區(qū)η)的剩余部分執(zhí)行406數(shù)據(jù)驗(yàn)證功能,并存儲(chǔ)結(jié)果。在一個(gè)情況中,所有程序存儲(chǔ)區(qū)通過驗(yàn)證測(cè)試。具體地,當(dāng)驗(yàn)證在主地址的比較410通過時(shí),驗(yàn)證在第二地址的比較412通過時(shí),以及在第η個(gè)地址的比較414通過時(shí),程序從主地址執(zhí)行416。在另一個(gè)情況中,許多或所有程序存儲(chǔ)區(qū)沒有通過驗(yàn)證測(cè)試。具體地,當(dāng)驗(yàn)證在主地址的比較410沒有通過時(shí),驗(yàn)證在第二地址的比較420沒有通過時(shí),以及在η個(gè)地址的一個(gè)或更多沒有通過時(shí),從驗(yàn)證測(cè)試最終通過的η個(gè)地址中的一個(gè)最終執(zhí)行432該程序,如果有任何一個(gè)通過的話。如果η個(gè)地址中沒有一個(gè)通過測(cè)試,出現(xiàn)單元失效424,并且可以公布(例如,報(bào)告)。不過,如果在η個(gè)地址中的一個(gè)的比較422通過,復(fù)制430該程序存儲(chǔ)區(qū)的數(shù)據(jù)到主程序存儲(chǔ)區(qū)、第二程序存儲(chǔ)區(qū)以及比較沒有通過的η個(gè)程序存儲(chǔ)區(qū)中的任何一個(gè)。接著,從主程序存儲(chǔ)區(qū)、第二程序存儲(chǔ)區(qū)或比較通過的η個(gè)程序存儲(chǔ)區(qū)中的一個(gè)執(zhí)行432程序。
在一個(gè)情況中,其中在主地址比較410沒有通過,在第二地址比較420通過,但是在η個(gè)地址中的一個(gè)或更多的至少一個(gè)比較440沒有通過,則第二程序存儲(chǔ)區(qū)的數(shù)據(jù)被復(fù)制到主程序存儲(chǔ)區(qū)和比較沒有通過的η個(gè)程序存儲(chǔ)區(qū)中的任何一個(gè),而且,最終從主程序存儲(chǔ)區(qū),第二程序存儲(chǔ)區(qū)或者η個(gè)程序存儲(chǔ)區(qū)中一個(gè)執(zhí)行444程序。類似地,在主地址比較410沒有通過,在第二地址比較420通過,在η個(gè)地址的所有比較440通過的情況中,第二程序存儲(chǔ)區(qū)或者第η個(gè)程序存儲(chǔ)區(qū)中的一個(gè)的數(shù)據(jù)復(fù)制450到主程序存儲(chǔ)區(qū),并且最終從主數(shù)據(jù)存儲(chǔ)區(qū),第二程序存儲(chǔ)區(qū)或η個(gè)程序存儲(chǔ)區(qū)的一個(gè)執(zhí)行452程序。最后,在主地址比較410通過,第二地址比較420通過,以及在η個(gè)地址中至少一個(gè)比較414沒有通過時(shí),主程序存儲(chǔ)區(qū)或第二程序存儲(chǔ)區(qū)中的一個(gè)的數(shù)據(jù)復(fù)制460到比較414沒有通過的η個(gè)程序存儲(chǔ)區(qū),最終從主程序存儲(chǔ)區(qū),第二程序存儲(chǔ)區(qū)或者η個(gè)程序存儲(chǔ)區(qū)中的一個(gè)執(zhí)行462程序。上述方法和系統(tǒng)配置,可操作以確保一個(gè)程序的執(zhí)行,即使該程序的主存儲(chǔ)位置可能毀壞。之前,尤其是在與航空器航空電子設(shè)備系統(tǒng)相關(guān)聯(lián)的嚴(yán)格限制的空間和重量中,額外內(nèi)存的物理空間完全不可以用于“額外”程序映像的存儲(chǔ)。不過,由于存儲(chǔ)設(shè)備在物理尺寸上繼續(xù)減少,而在存儲(chǔ)容量上還在增加,本文描述的配置已經(jīng)變得可行。這些實(shí)施例通過將確認(rèn)為“好”的應(yīng)用程序映像復(fù)制到已經(jīng)存儲(chǔ)程序的潛在毀壞映像的存儲(chǔ)空間,允許用于維修的航空器單元拆除事件的減少,因?yàn)檫@些單元至少是某種程度地自我修復(fù)的。正如本文所使用的,應(yīng)當(dāng)理解以單數(shù)列舉的以及以單詞“一個(gè)(a)”或者“一個(gè)(an)”描述的元素或步驟并非排除更多的元素或步驟,除非這樣的排除是明確列舉的。而且,參考本發(fā)明的“一個(gè)實(shí)施例”或者“示例性實(shí)施例”不能解讀成排除也包含列舉特征的額外實(shí)施例的存在。已經(jīng)展示的不同有利實(shí)施例的描述僅用于描述和說明目的,而不是窮盡的或僅限于已經(jīng)公開的實(shí)施例形式。許多修改和變化對(duì)本領(lǐng)域技術(shù)人員來說是顯而易見的。進(jìn)一步地,與其它有利實(shí)施例相比,不同有利實(shí)施例可以提供不同優(yōu)點(diǎn)。被選擇的一個(gè)或多個(gè)實(shí)施例之所以被選擇和描述是為了更好解釋實(shí)施例的原理,其實(shí)際應(yīng)用,并使得本領(lǐng)域的技術(shù)人員理解各種實(shí)施例及其修改的公開適用于某些特定用途。
這個(gè)書面描述使用例子公開各種實(shí)施例,包括最佳模式的實(shí)施例,使得本領(lǐng)域技 術(shù)人員能夠?qū)嵺`那些實(shí)施例,包括制作和使用任何設(shè)備或系統(tǒng)以及執(zhí)行任何包括的方法。專利范圍由權(quán)利要求定義,而且可以包括本領(lǐng)域技術(shù)人員可以想到的其他例子。如果這樣的其他例子具有和本發(fā)明權(quán)利要求的文字語言沒有區(qū)別的結(jié)構(gòu)元素,或者具有和權(quán)利要求的文字語言沒有本質(zhì)區(qū)別的等同結(jié)構(gòu)元素,其也在權(quán)利要求的范圍內(nèi)。
權(quán)利要求
1.一種在用于程序執(zhí)行的數(shù)據(jù)加載之前,驗(yàn)證定義可執(zhí)行程序的數(shù)據(jù)的方法,所述方法包括 a)為在主數(shù)據(jù)存儲(chǔ)區(qū)內(nèi)的數(shù)據(jù)計(jì)算驗(yàn)證數(shù)值,所述數(shù)據(jù)定義可執(zhí)行程序; b)將計(jì)算的驗(yàn)證數(shù)值和存儲(chǔ)的數(shù)值比較; c)如果驗(yàn)證數(shù)值匹配于存儲(chǔ)的數(shù)值,則執(zhí)行所述主數(shù)據(jù)存儲(chǔ)區(qū)內(nèi)的程序; d)如果驗(yàn)證數(shù)值和存儲(chǔ)的數(shù)值不匹配,為第二數(shù)據(jù)存儲(chǔ)區(qū)內(nèi)的數(shù)據(jù)計(jì)算驗(yàn)證數(shù)值,所述第二數(shù)據(jù)存儲(chǔ)區(qū)內(nèi)的數(shù)據(jù)定義與在所述主數(shù)據(jù)存儲(chǔ)區(qū)內(nèi)的可執(zhí)行程序相同的可執(zhí)行程序; e)將所述第二數(shù)據(jù)存儲(chǔ)區(qū)內(nèi)數(shù)據(jù)的計(jì)算的驗(yàn)證數(shù)值和存儲(chǔ)的數(shù)值比較; f)如果所述第二數(shù)據(jù)存儲(chǔ)區(qū)內(nèi)的數(shù)據(jù)的驗(yàn)證數(shù)值和存儲(chǔ)的數(shù)值匹配,則使程序被執(zhí)行;以及 g)如果所述第二數(shù)據(jù)存儲(chǔ)區(qū)內(nèi)的數(shù)據(jù)的驗(yàn)證數(shù)值和存儲(chǔ)的數(shù)值不匹配,則指示失敗。
2.根據(jù)權(quán)利要求I所述的方法,其進(jìn)一步包括為包括定義相同可執(zhí)行程序的數(shù)據(jù)的每個(gè)數(shù)據(jù)存儲(chǔ)區(qū)重復(fù)步驟d)、e)和f )。
3.根據(jù)權(quán)利要求I所述的方法,其進(jìn)一步包括如果所述第二數(shù)據(jù)存儲(chǔ)區(qū)的計(jì)算的驗(yàn)證數(shù)值和存儲(chǔ)的數(shù)值匹配,則將在所述第二存儲(chǔ)區(qū)內(nèi)的數(shù)據(jù)復(fù)制到所述主存儲(chǔ)區(qū)。
4.根據(jù)權(quán)利要求I所述的方法,其中為數(shù)據(jù)計(jì)算驗(yàn)證數(shù)值包括為用于航空器航空電子設(shè)備的操作飛行程序計(jì)算校驗(yàn)和。
5.根據(jù)權(quán)利要求I所述的方法,其中為數(shù)據(jù)計(jì)算驗(yàn)證數(shù)值包括執(zhí)行在引導(dǎo)ROM設(shè)備內(nèi)的指令以計(jì)算定義所述可執(zhí)行程序的數(shù)據(jù)的校驗(yàn)和。
6.根據(jù)權(quán)利要求I所述的方法,其中將所述第二數(shù)據(jù)存儲(chǔ)區(qū)內(nèi)數(shù)據(jù)的計(jì)算的驗(yàn)證數(shù)值與存儲(chǔ)的數(shù)值比較,包括將計(jì)算的驗(yàn)證數(shù)值和存儲(chǔ)在與基本輸入/輸出系統(tǒng)相關(guān)聯(lián)的內(nèi)存中的數(shù)值進(jìn)行比較。
7.一種設(shè)備,其包括 處理單元; 引導(dǎo)ROM,所述處理單兀從所述引導(dǎo)ROM執(zhí)行基本輸入/輸出系統(tǒng); 主數(shù)據(jù)存儲(chǔ)區(qū),配置為存儲(chǔ)與所述設(shè)備相關(guān)聯(lián)的可執(zhí)行應(yīng)用程序映像;以及至少一個(gè)第二數(shù)據(jù)存儲(chǔ)區(qū),配置為存儲(chǔ)與所述設(shè)備相關(guān)聯(lián)的可執(zhí)行應(yīng)用程序的至少一個(gè)額外映像,所述設(shè)備被編程為 為存儲(chǔ)在所述主數(shù)據(jù)存儲(chǔ)區(qū)內(nèi)的映像和存儲(chǔ)在所述至少一個(gè)第二數(shù)據(jù)存儲(chǔ)區(qū)內(nèi)的每個(gè)映像計(jì)算單獨(dú)驗(yàn)證數(shù)值; 將每個(gè)映像的計(jì)算的單獨(dú)驗(yàn)證數(shù)值與在所述引導(dǎo)ROM內(nèi)存儲(chǔ)的數(shù)值進(jìn)行比較; 將映像的計(jì)算的驗(yàn)證數(shù)值和存儲(chǔ)的數(shù)值匹配的所述主數(shù)據(jù)存儲(chǔ)區(qū)和第二數(shù)據(jù)存儲(chǔ)區(qū)之中一個(gè)的映像,復(fù)制到映像的計(jì)算的單獨(dú)驗(yàn)證數(shù)值和存儲(chǔ)的數(shù)值不匹配的任意所述主數(shù)據(jù)存儲(chǔ)區(qū)或第二數(shù)據(jù)存儲(chǔ)區(qū);以及 執(zhí)行由來自所述主數(shù)據(jù)存儲(chǔ)區(qū)和第二數(shù)據(jù)存儲(chǔ)區(qū)中一個(gè)的存儲(chǔ)映像定義的程序。
8.根據(jù)權(quán)利要求7所述的設(shè)備,其中所述設(shè)備包括航空器航空電子設(shè)備單元。
9.根據(jù)權(quán)利要求8所述的設(shè)備,其中所述存儲(chǔ)在所述主數(shù)據(jù)存儲(chǔ)區(qū)和所述至少一個(gè)第二數(shù)據(jù)存儲(chǔ)區(qū)中的映像包括操作飛行程序,并且所述計(jì)算的單獨(dú)驗(yàn)證數(shù)值包括用于所述操作飛行程序的校驗(yàn)和。
10.根據(jù)權(quán)利要求7所述的設(shè)備,其中所述設(shè)備編程為在由所述映像定義的程序執(zhí)行之前,為所述主數(shù)據(jù)存儲(chǔ)區(qū)和第二數(shù)據(jù)存儲(chǔ)區(qū)內(nèi)的每個(gè)映像驗(yàn)證計(jì)算的單獨(dú)驗(yàn)證數(shù)值和存儲(chǔ)的數(shù)值是否匹配。
11.根據(jù)權(quán)利要求7所述的設(shè)備,其中,為計(jì)算單獨(dú)驗(yàn)證數(shù)值,所述設(shè)備編程為執(zhí)行在所述引導(dǎo)ROM內(nèi)的指令,以便計(jì)算所述可執(zhí)行應(yīng)用程序映像的校驗(yàn)和。
12.根據(jù)權(quán)利要求7所述的設(shè)備,其中所述設(shè)備包括隨機(jī)存取存儲(chǔ)器,所述設(shè)備編程為,將計(jì)算的單獨(dú)驗(yàn)證數(shù)值和存儲(chǔ)的數(shù)值匹配的所述數(shù)據(jù)存儲(chǔ)區(qū)中一個(gè)的映像復(fù)制到所述隨機(jī)存取存儲(chǔ)器中,用于執(zhí)行。
13.根據(jù)權(quán)利要求7所述的設(shè)備,其中所述至少一個(gè)第二數(shù)據(jù)存儲(chǔ)區(qū)包括硅存儲(chǔ)器設(shè)備、計(jì)算機(jī)硬盤驅(qū)動(dòng)器、⑶-ROM、閃存驅(qū)動(dòng)器以及拇指驅(qū)動(dòng)器中的至少一個(gè)。
14.包含計(jì)算機(jī)執(zhí)行指令的一個(gè)或更多計(jì)算機(jī)可讀存儲(chǔ)介質(zhì),所述存儲(chǔ)介質(zhì)的至少一部分包括表示與可執(zhí)行應(yīng)用程序相關(guān)聯(lián)的校驗(yàn)和的數(shù)據(jù),其中當(dāng)由至少一個(gè)處理器執(zhí)行時(shí),所述計(jì)算機(jī)執(zhí)行指令使至少一個(gè)處理器執(zhí)行以下步驟 為多個(gè)數(shù)據(jù)存儲(chǔ)區(qū)內(nèi)的數(shù)據(jù)計(jì)算單獨(dú)驗(yàn)證數(shù)值,每個(gè)數(shù)據(jù)存儲(chǔ)區(qū)內(nèi)的數(shù)據(jù)定義相同的可執(zhí)行程序; 將多個(gè)數(shù)據(jù)存儲(chǔ)區(qū)中每個(gè)的計(jì)算的單獨(dú)驗(yàn)證數(shù)值和存儲(chǔ)的數(shù)值比較; 將計(jì)算的單獨(dú)驗(yàn)證數(shù)值和存儲(chǔ)的數(shù)值匹配的多個(gè)數(shù)據(jù)存儲(chǔ)區(qū)中一個(gè)的數(shù)據(jù),復(fù)制到計(jì)算的單獨(dú)驗(yàn)證數(shù)值和存儲(chǔ)的數(shù)值不匹配的多個(gè)數(shù)據(jù)存儲(chǔ)區(qū)中的任意一個(gè);以及 執(zhí)行由多個(gè)數(shù)據(jù)存儲(chǔ)區(qū)之中一個(gè)的存儲(chǔ)數(shù)據(jù)定義的程序。
15.根據(jù)權(quán)利要求14所述的一個(gè)或更多計(jì)算機(jī)可讀存儲(chǔ)介質(zhì),其中所述計(jì)算機(jī)可執(zhí)行指令使至少一個(gè)處理器在由存儲(chǔ)數(shù)據(jù)定義的程序執(zhí)行之前,驗(yàn)證每個(gè)數(shù)據(jù)存儲(chǔ)區(qū)的計(jì)算的驗(yàn)證數(shù)值和存儲(chǔ)的數(shù)值是否匹配。
全文摘要
本發(fā)明涉及一種在用于程序執(zhí)行的數(shù)據(jù)加載之前,驗(yàn)證定義可執(zhí)行程序的數(shù)據(jù)的方法。該方法包括為主數(shù)據(jù)存儲(chǔ)區(qū)內(nèi)的數(shù)據(jù)計(jì)算驗(yàn)證數(shù)值,該數(shù)據(jù)定義可執(zhí)行程序,將計(jì)算的驗(yàn)證數(shù)值和存儲(chǔ)的數(shù)值比較,如果驗(yàn)證數(shù)值匹配存儲(chǔ)的數(shù)值則執(zhí)行主數(shù)據(jù)存儲(chǔ)區(qū)內(nèi)的程序,為第二數(shù)據(jù)存儲(chǔ)區(qū)內(nèi)的數(shù)據(jù)計(jì)算驗(yàn)證數(shù)值,第二數(shù)據(jù)存儲(chǔ)區(qū)內(nèi)的數(shù)據(jù)定義與在主數(shù)據(jù)存儲(chǔ)區(qū)內(nèi)的可執(zhí)行程序相同的可執(zhí)行程序,如果驗(yàn)證數(shù)值和存儲(chǔ)的數(shù)值不匹配,將為第二數(shù)據(jù)存儲(chǔ)區(qū)內(nèi)的數(shù)據(jù)計(jì)算的驗(yàn)證數(shù)值和存儲(chǔ)的數(shù)值比較,如果第二數(shù)據(jù)存儲(chǔ)區(qū)內(nèi)的數(shù)據(jù)的驗(yàn)證數(shù)值和存儲(chǔ)的數(shù)值匹配,則使程序執(zhí)行,以及如果第二數(shù)據(jù)存儲(chǔ)區(qū)內(nèi)的數(shù)據(jù)的驗(yàn)證數(shù)值和存儲(chǔ)的數(shù)值不匹配,則指示失敗。
文檔編號(hào)G06F11/00GK102968348SQ20121026461
公開日2013年3月13日 申請(qǐng)日期2012年7月27日 優(yōu)先權(quán)日2011年7月29日
發(fā)明者L·P·里吉, T·S·威克姆, M·A·塔爾伯特, G·M·威爾布魯克, C·C·王, O·馬爾萊斯, M·D·魯賓 申請(qǐng)人:波音公司
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評(píng)論。精彩留言會(huì)獲得點(diǎn)贊!
1
黄浦区| 沭阳县| 普陀区| 连平县| 师宗县| 永仁县| 孙吴县| 临武县| 长宁县| 黄平县| 双江| 海门市| 泗阳县| 哈尔滨市| 离岛区| 随州市| 德化县| 崇礼县| 义马市| 红原县| 吴旗县| 诏安县| 阿城市| 横峰县| 瓮安县| 九寨沟县| 汶上县| 隆安县| 洛南县| 荔波县| 拜泉县| 依安县| 资兴市| 邻水| 汶上县| 仲巴县| 屯昌县| 乃东县| 松江区| 广南县| 抚远县|