两个人的电影免费视频_国产精品久久久久久久久成人_97视频在线观看播放_久久这里只有精品777_亚洲熟女少妇二三区_4438x8成人网亚洲av_内谢国产内射夫妻免费视频_人妻精品久久久久中国字幕

用于增強(qiáng)引導(dǎo)時(shí)間的方法和系統(tǒng)的制作方法

文檔序號(hào):6571204閱讀:389來源:國(guó)知局
專利名稱:用于增強(qiáng)引導(dǎo)時(shí)間的方法和系統(tǒng)的制作方法
技術(shù)領(lǐng)域
本發(fā)明總體涉及改進(jìn)的數(shù)據(jù)處理系統(tǒng),具體地說,涉及用于在數(shù)據(jù)處理系統(tǒng)中增強(qiáng)(enhance)計(jì)算機(jī)引導(dǎo)(boot)時(shí)間的計(jì)算機(jī)實(shí)施方法、數(shù)據(jù)處理系統(tǒng)、計(jì)算機(jī)可用程序代碼和設(shè)備。更加具體地說,本發(fā)明涉及使用冗余部分在數(shù)據(jù)處理系統(tǒng)中增強(qiáng)引導(dǎo)時(shí)間的計(jì)算機(jī)實(shí)施方法、數(shù)據(jù)處理系統(tǒng)、計(jì)算機(jī)可用的程序代碼和設(shè)備。
背景技術(shù)
當(dāng)啟動(dòng)或者引導(dǎo)計(jì)算機(jī)時(shí),發(fā)生初始程序裝載。也將這種初始程序裝載處理稱為引導(dǎo)處理,其中在計(jì)算機(jī)引導(dǎo)和啟動(dòng)時(shí)自動(dòng)地執(zhí)行位于只讀存儲(chǔ)器或者閃存上的指令。閃存是用于存儲(chǔ)這些指令的更加常用的存儲(chǔ)裝置,也將其稱為初始程序裝載固件。閃存是當(dāng)不將電源施加到該裝置時(shí)也保留指令的裝置。而且,可以通過還被稱為閃速更新程序的程序或者軟件部件來修改閃存裝置。初始程序裝載固件存可以儲(chǔ)在一個(gè)或多個(gè)閃存裝置中。這種固件搜索操作系統(tǒng),裝載操作系統(tǒng),然后將控制交給操作系統(tǒng)。
固件通常位于一個(gè)或多個(gè)服務(wù)處理器上。如果在計(jì)算機(jī)系統(tǒng)中存在多于一個(gè)的服務(wù)處理器,則將其中的一個(gè)服務(wù)處理器指定為主處理器,其負(fù)責(zé)整個(gè)引導(dǎo)處理直到將控制交給操作系統(tǒng)為止。其他存在的服務(wù)處理器是冗余的,并且只有在主服務(wù)處理器發(fā)生故障時(shí)才被使用。因此,使用一個(gè)服務(wù)處理器的引導(dǎo)方法需要可觀的時(shí)間量,特別是當(dāng)涉及幾個(gè)節(jié)點(diǎn)時(shí)由其如此。

發(fā)明內(nèi)容
本發(fā)明的不同方面提供用于增強(qiáng)計(jì)算機(jī)系統(tǒng)的引導(dǎo)時(shí)間的計(jì)算機(jī)實(shí)施的方法、數(shù)據(jù)處理系統(tǒng)、計(jì)算機(jī)可用程序代碼和設(shè)備。本發(fā)明初始化在多個(gè)服務(wù)處理器上的初始程序裝載固件。在多個(gè)服務(wù)處理器上執(zhí)行初始化任務(wù),當(dāng)所述多個(gè)服務(wù)處理器中的另一個(gè)服務(wù)處理器執(zhí)行其他獨(dú)立的非冗余初始化任務(wù)時(shí),在所述多個(gè)服務(wù)處理器中的每個(gè)服務(wù)處理器執(zhí)行并發(fā)地獨(dú)立的非冗余初始化任務(wù)。當(dāng)初始化任務(wù)完成時(shí),將控制切換回在所述多個(gè)服務(wù)處理器內(nèi)的主處理器。然后由主服務(wù)處理器裝載一組運(yùn)行時(shí)(runtime)固件。


在所附權(quán)利要求中陳述了本發(fā)明的確信具有新穎特點(diǎn)的特征。然而,本發(fā)明本身以及使用的優(yōu)選模式、進(jìn)一步的目的及其優(yōu)點(diǎn),將通過結(jié)合附圖閱讀時(shí)參照下面對(duì)說明性實(shí)施方式的詳細(xì)描述被最好地理解,其中圖1示出了可以實(shí)施說明性實(shí)施方式的各方面的數(shù)據(jù)處理系統(tǒng)的網(wǎng)絡(luò)的圖形標(biāo)識(shí);圖2是可以實(shí)施本發(fā)明的數(shù)據(jù)處理系統(tǒng)的框圖;圖3示出了根據(jù)本發(fā)明優(yōu)選實(shí)施方式的在增強(qiáng)引導(dǎo)時(shí)間時(shí)所使用的部件的示意圖;圖4示出了根據(jù)本發(fā)明的優(yōu)選實(shí)施方式的示例性系統(tǒng)初始化;圖5是描述根據(jù)本發(fā)明的優(yōu)選實(shí)施方式的增強(qiáng)的引導(dǎo)時(shí)間操作的流程圖;和圖6是描述根據(jù)本發(fā)明的優(yōu)選實(shí)施方式的示例性固件操作的流程圖。
具體實(shí)施例方式
說明性實(shí)施方式涉及使用冗余服務(wù)處理器增強(qiáng)計(jì)算機(jī)系統(tǒng)的引導(dǎo)時(shí)間。提供圖1-2作為可以實(shí)施說明性實(shí)施方式的數(shù)據(jù)處理環(huán)境的示例性示意圖。應(yīng)該理解,圖1-2只是示例性的,并不試圖宣稱或者暗示關(guān)于可以實(shí)施各方面或者實(shí)施方式的環(huán)境的任何限制。在不偏離說明性實(shí)施方式的精神和范圍的情況下,可以對(duì)所描述的環(huán)境進(jìn)行許多變型。
現(xiàn)在將參照附圖,圖1示出了可以實(shí)施說明性實(shí)施方式的各方面的數(shù)據(jù)處理系統(tǒng)的網(wǎng)絡(luò)的圖像表示。網(wǎng)絡(luò)數(shù)據(jù)處理系統(tǒng)100是可以實(shí)施說明性實(shí)施方式的計(jì)算機(jī)的網(wǎng)絡(luò)。網(wǎng)絡(luò)數(shù)據(jù)處理系統(tǒng)100包含網(wǎng)絡(luò)102,其是用于提供在網(wǎng)絡(luò)數(shù)據(jù)處理系統(tǒng)100內(nèi)連接在一起的各種裝置和計(jì)算機(jī)之間的通信鏈路的介質(zhì)。網(wǎng)絡(luò)102可以包括諸如有線、無線通信鏈路、或者光纜之類的連接。
在所示的例子中,服務(wù)器104和服務(wù)器106連接到與存儲(chǔ)單元108連在一起的網(wǎng)絡(luò)102。此外,客戶機(jī)110、112和114連接到網(wǎng)絡(luò)102。這些客戶機(jī)110、112和114可以是例如個(gè)人計(jì)算機(jī)或者網(wǎng)絡(luò)計(jì)算機(jī)。在所示的例子中,服務(wù)器104提供諸如引導(dǎo)文件、操作系統(tǒng)映像和應(yīng)用程序之類的數(shù)據(jù)給客戶機(jī)110、112和114??蛻魴C(jī)110、112和114在本例中是對(duì)于服務(wù)器104的客戶機(jī)。網(wǎng)絡(luò)數(shù)據(jù)處理系統(tǒng)100還可以包括額外的服務(wù)器、客戶機(jī)和其他未示出的裝置。
在所示的例子中,網(wǎng)絡(luò)數(shù)據(jù)處理器系統(tǒng)100是帶有網(wǎng)絡(luò)102的因特網(wǎng),表示使用傳輸控制協(xié)議/因特網(wǎng)協(xié)議(TCP/IP)的協(xié)議集來彼此進(jìn)行通信的網(wǎng)絡(luò)和網(wǎng)關(guān)的世界范圍的集合。在該因特網(wǎng)的核心部分是在主節(jié)點(diǎn)或者主機(jī)計(jì)算機(jī)之間的高速數(shù)據(jù)通信線路的主干,所述主節(jié)點(diǎn)或者主機(jī)計(jì)算機(jī)包括路由數(shù)據(jù)和消息的許多商用的、政府的、教育的和其他的計(jì)算機(jī)系統(tǒng)。當(dāng)然,還可以將網(wǎng)絡(luò)數(shù)據(jù)處理系統(tǒng)100實(shí)施為許多不同類型的網(wǎng)絡(luò),諸如內(nèi)部網(wǎng)、局域網(wǎng)(LAN)或者廣域網(wǎng)(WAN)。圖1試圖作為例子,而不作為對(duì)不同說明性實(shí)施方式的架構(gòu)限制。
現(xiàn)在參照?qǐng)D2,其示出了可以實(shí)施本發(fā)明的數(shù)據(jù)處理系統(tǒng)的框圖。數(shù)據(jù)處理系統(tǒng)200是諸如圖1的客戶機(jī)110、112和114或者服務(wù)器104和106之類的計(jì)算機(jī)的例子,實(shí)施本發(fā)明的處理的代碼或者指令可以位于這種計(jì)算機(jī)上。數(shù)據(jù)處理系統(tǒng)200使用外圍部件互連(PCI)本地總線架構(gòu)。雖然所示的例子使用PCI總線,但是諸如加速圖形端口(AGP)和工業(yè)標(biāo)準(zhǔn)架構(gòu)(ISA)之類的其他總線架構(gòu)也可以使用。處理器202和主存儲(chǔ)器204通過PCI橋208連接到PCI本地總線206。PCI橋208還可以包括用于處理器202的集成存儲(chǔ)器控制器和高速緩存存儲(chǔ)器。可以通過直接部件互連或者通過內(nèi)插附件(add-in)板作出到PCI本地總線206的額外連接。在所示例子中,通過直接部件連接將局域網(wǎng)(LAN)適配器210、小計(jì)算機(jī)系統(tǒng)接口SCSI主機(jī)總線適配器212和靈活服務(wù)處理器(FSP)處理器214和215連接到PCI本地總線206。相反地,通過插入到擴(kuò)展槽中的內(nèi)插附件板將音頻適配器216、圖形適配器218和音頻/視頻適配器219連接到PCI本地總線206。
將FSP處理器214連接到FSP閃存220、FSP動(dòng)態(tài)隨機(jī)存取存儲(chǔ)器(DRAM)221、NVRAM222和超級(jí)I/O控制器223。FSP處理器215連接到FSP閃存224、FSP動(dòng)態(tài)隨機(jī)存取存儲(chǔ)器(DRAM)225、NVRAM226和超級(jí)I/O控制器227。超級(jí)I/O控制器223和227還具有到NVRAM222和226的連接。FSP閃存220和224是可以存儲(chǔ)用于初始程序裝載(IPL)的微代碼的閃存的例子。FSP DRAM221和225是為了FSP處理器214或者215的執(zhí)行而裝載來自FSP閃存220和224的“裝載標(biāo)識(shí)符”LID或者微代碼的存儲(chǔ)器。NVRAM222和226可以用于保存當(dāng)將系統(tǒng)斷電時(shí)要被保留的數(shù)據(jù)。超級(jí)I/O控制器223和227提供接口給諸如鍵盤、鼠標(biāo)和麥克風(fēng)之類的裝置。
SCSI主機(jī)總線適配器212提供用于硬盤驅(qū)動(dòng)器228、磁帶驅(qū)動(dòng)器229和CD-ROM驅(qū)動(dòng)器230的連接。典型的PCI本地總線實(shí)施將支持三個(gè)或者四個(gè)PCI擴(kuò)展槽或者內(nèi)插附件連接器。
操作系統(tǒng)在處理器202上運(yùn)行并且用于協(xié)調(diào)和提供對(duì)圖2中的數(shù)據(jù)處理系統(tǒng)200內(nèi)的各種部件的控制。操作系統(tǒng)可以是諸如從Microsoft公司可獲得的Window XP之類的可以商業(yè)獲得的操作系統(tǒng)。諸如Java之類的面向?qū)ο蟮木幊滔到y(tǒng)可以結(jié)合操作系統(tǒng)運(yùn)行,并且從在數(shù)據(jù)處理系統(tǒng)200上執(zhí)行的應(yīng)用程序或者Java程序向操作系統(tǒng)提供調(diào)用?!癑ava”是Sun Microsystem公司的商標(biāo)。用于操作系統(tǒng)、面向?qū)ο蟮木幊滔到y(tǒng)和應(yīng)用程序或者程序的指令位于諸如硬盤驅(qū)動(dòng)器228的存儲(chǔ)裝置上,并且可以被裝載到主存儲(chǔ)器204以由處理器202執(zhí)行。
本領(lǐng)域的普通技術(shù)人員應(yīng)該理解圖2中的硬件可以根據(jù)實(shí)施而變化。在圖2中所描述的硬件之外或者替代于圖2中所描述的硬件,可以使用諸如閃速只讀存儲(chǔ)器(ROM)、等效非易失存儲(chǔ)器或者光盤驅(qū)動(dòng)器之類的其他內(nèi)部硬件或者外設(shè)。而且,可以將本發(fā)明的處理應(yīng)用于多處理器數(shù)據(jù)處理系統(tǒng)。
例如,如果選擇性地配置為網(wǎng)絡(luò)計(jì)算機(jī),則數(shù)據(jù)處理系統(tǒng)200可以不包括SCSI主機(jī)總線適配器212、硬盤驅(qū)動(dòng)器228、磁帶驅(qū)動(dòng)器229和CD-ROM230。在這種情況下,要被適當(dāng)?shù)胤Q為客戶計(jì)算機(jī)的計(jì)算機(jī)包括諸如LAN適配器210之類的某種類型的網(wǎng)絡(luò)通信接口。作為另一個(gè)例子,數(shù)據(jù)處理系統(tǒng)200可以是獨(dú)立系統(tǒng),其配置為在不依賴于某種類型的網(wǎng)絡(luò)通信接口的情況下可引導(dǎo)、而無論數(shù)據(jù)處理系統(tǒng)200是否包括某種類型的網(wǎng)絡(luò)通信接口如何。作為進(jìn)一步的例子,數(shù)據(jù)處理系統(tǒng)200可以是個(gè)人數(shù)字助理(PDA),用提供用于存儲(chǔ)操作系統(tǒng)文件和/或用戶產(chǎn)生的數(shù)據(jù)的非易失存儲(chǔ)器的ROM和/或閃速ROM對(duì)其進(jìn)行配置。
在本例中,閃存220和224提供用于初始程序裝載固件的存儲(chǔ),其用于在數(shù)據(jù)處理系統(tǒng)200中初始化硬件。本發(fā)明提供改進(jìn)的計(jì)算機(jī)實(shí)施的方法、數(shù)據(jù)處理系統(tǒng)、計(jì)算機(jī)可用程序代碼和設(shè)備以指示初始程序裝載固件是否有缺陷。本發(fā)明的機(jī)制使用諸如標(biāo)記的指示符來指示該固件是否有缺陷。該標(biāo)記將防止諸如數(shù)據(jù)處理系統(tǒng)200的數(shù)據(jù)處理系統(tǒng)從有缺陷的固件引導(dǎo)或者初始化。此外,如果冗余裝置或者固件的拷貝已經(jīng)有缺陷,則該標(biāo)記還防止固件在諸如閃存220和224之類的閃存中被更新。
在圖2中所示的例子和上述例子不意味著對(duì)架構(gòu)限制的暗示。例如,在采用PDA的形式之外,數(shù)據(jù)處理系統(tǒng)200還可以是筆記本計(jì)算機(jī)或者手持計(jì)算機(jī)。數(shù)據(jù)處理系統(tǒng)200還可以是信息站(kisok)或者網(wǎng)絡(luò)設(shè)備。使用位于諸如主存儲(chǔ)器204或者在一個(gè)或多個(gè)外設(shè)228-230中的計(jì)算機(jī)實(shí)施的指令由處理器202執(zhí)行本發(fā)明的處理。
本發(fā)明在引導(dǎo)期間利用兩個(gè)服務(wù)處理器。引導(dǎo)處理將初始化任務(wù)分割,以便每個(gè)服務(wù)處理器都具有一部分系統(tǒng)來初始化。分割系統(tǒng)初始化可以將引導(dǎo)時(shí)間減為一個(gè)處理器執(zhí)行所有初始化任務(wù)的時(shí)間的一半。
現(xiàn)在轉(zhuǎn)到圖3,其示出了根據(jù)本發(fā)明的優(yōu)選實(shí)施方式的、在增強(qiáng)引導(dǎo)時(shí)間中所使用的部件的示意圖。在本例中,服務(wù)處理器302和304初始化包含引導(dǎo)代碼310和312的初始程序裝載固件306和308,當(dāng)諸如引導(dǎo)圖2的數(shù)據(jù)處理系統(tǒng)200或者初始程序裝載開始時(shí),將所述引導(dǎo)代碼310和312裝載到存儲(chǔ)器314和316中。服務(wù)處理器302和304可以是諸如圖2的靈活服務(wù)處理器214和215之類的服務(wù)處理器。存儲(chǔ)器314和316可以是例如圖2中的、可以存儲(chǔ)初始程序裝載固件306和308的閃存220和224。在本例中,初始程序裝載固件306和308可以執(zhí)行初始檢查以確認(rèn)兩個(gè)服務(wù)處理器302和304都可以操作。
由于兩個(gè)服務(wù)處理器302和304都可以操作,所以初始程序裝載固件306和308指定系統(tǒng)的特定部分每個(gè)服務(wù)處理器302和304都負(fù)責(zé)初始化。通過多工器(multiplexer)318和320將每個(gè)服務(wù)處理器302和304執(zhí)行的初始化任務(wù)發(fā)給處理器、存儲(chǔ)器和I/O控制器322。在服務(wù)處理器302和304的每一個(gè)執(zhí)行它們相應(yīng)的初始化任務(wù)后,將控制返回給被指定為主處理器以完成系統(tǒng)引導(dǎo)和用于運(yùn)行時(shí)的任何一個(gè)服務(wù)處理器。在初始程序裝載固件306和308執(zhí)行初始檢查以確認(rèn)兩個(gè)服務(wù)處理器302和304是可以操作的情況下,如果確定一個(gè)服務(wù)處理器不可以操作,則引導(dǎo)代碼回復(fù)到故障解決(fail-over),而且可操作的服務(wù)處理器初始化所有引導(dǎo)初始化。
圖4示出了根據(jù)本發(fā)明的優(yōu)選實(shí)施方式的示例系統(tǒng)初始化。當(dāng)啟動(dòng)或者引導(dǎo)計(jì)算機(jī)時(shí),服務(wù)處理器402裝載包含指定初始化步驟404-416的引導(dǎo)代碼的初始程序裝載固件。而且,當(dāng)啟動(dòng)或者引導(dǎo)計(jì)算機(jī)時(shí),服務(wù)處理器418裝載包含引導(dǎo)代碼的初始程序裝載固件,具體是初始化任務(wù)420-432。服務(wù)處理器402和418可以是諸如圖3的靈活服務(wù)處理器302和304之類的服務(wù)處理器。兩個(gè)服務(wù)處理器402和418都執(zhí)行它們相應(yīng)的通電處理404和420以及內(nèi)置自檢處理406和422。
如果兩個(gè)服務(wù)處理器402和418都是可操作的,則用于服務(wù)處理器402和418的每一個(gè)的初始程序裝載固件指定每個(gè)服務(wù)處理器應(yīng)該針對(duì)它們相應(yīng)的系統(tǒng)部分執(zhí)行的獨(dú)立和非冗余處理。對(duì)于服務(wù)處理器402,針對(duì)其相應(yīng)的系統(tǒng)部分執(zhí)行處理408、410、412、414和416,而對(duì)于服務(wù)處理器418,針對(duì)其相應(yīng)的系統(tǒng)部分執(zhí)行處理424、426、428、430和432。作為簡(jiǎn)單的例子,如果是兩個(gè)處理器的計(jì)算機(jī)系統(tǒng),則服務(wù)處理器402可以初始化一個(gè)處理器而服務(wù)處理器418可以初始化另一個(gè)處理器。作為更加復(fù)雜的例子,如果計(jì)算機(jī)系統(tǒng)具有六十四個(gè)處理器,則服務(wù)處理器402可以初始化三十二個(gè)處理器,而服務(wù)處理器428可以初始化另外三十二個(gè)處理器。當(dāng)每個(gè)初始化任務(wù)完成時(shí)或者當(dāng)每個(gè)服務(wù)處理器完成其所有的特定任務(wù)時(shí),在服務(wù)處理器402和418之間可能發(fā)生握手。在每個(gè)服務(wù)處理器402和418執(zhí)行它們相應(yīng)的初始化任務(wù)后,將控制返回給被指定為主處理器以完成系統(tǒng)引導(dǎo)并且用于運(yùn)行時(shí)的任何一個(gè)服務(wù)處理器。在服務(wù)處理器之間分割初始化任務(wù),通過利用兩個(gè)服務(wù)處理器來完成初始化任務(wù)增強(qiáng)了引導(dǎo)時(shí)間,從而將引導(dǎo)時(shí)間砍掉一半。
圖5是示出根據(jù)本發(fā)明的優(yōu)選實(shí)施方式的示例增強(qiáng)的引導(dǎo)時(shí)間操作的流程圖。當(dāng)操作開始時(shí),發(fā)生計(jì)算機(jī)的啟動(dòng)或者引導(dǎo)(步驟502)。在計(jì)算機(jī)中的每個(gè)服務(wù)處理器執(zhí)行通電處理之后進(jìn)行內(nèi)置自檢(步驟504)。確定服務(wù)處理器是否可操作(步驟506)。如果服務(wù)處理器可操作,則服務(wù)處理器通過初始化分配給初始程序裝載固件中的每個(gè)服務(wù)處理器的獨(dú)立和非冗余特定任務(wù)來彼此進(jìn)行工作。一旦完成了分配給每個(gè)服務(wù)處理器的任務(wù),則將控制切換給所指定的主服務(wù)處理器,并且將任何剩下的服務(wù)處理器設(shè)置為備用狀態(tài)(步驟510)。如果在步驟506,只有一個(gè)服務(wù)處理器可操作,則通過該一個(gè)可操作的服務(wù)處理器執(zhí)行所有初始化任務(wù)(步驟512)。在步驟510或者512之后,裝載和啟動(dòng)運(yùn)行時(shí)固件(步驟514)。然后將系統(tǒng)操作移動(dòng)到操作系統(tǒng)(步驟516),之后服務(wù)處理操作結(jié)束。
圖6示示出根據(jù)本發(fā)明的優(yōu)選實(shí)施方式的示例固件操作的流程圖。當(dāng)操作開始時(shí),固件檢測(cè)服務(wù)處理器的通電(步驟602)。然后固件執(zhí)行內(nèi)置的自檢(步驟604)。然后確定自檢的狀態(tài)(步驟606)。如果自檢失敗,則將錯(cuò)誤消息發(fā)送給計(jì)算機(jī)系統(tǒng)中的其他處理器(步驟608),之后操作結(jié)束。如果自檢通過,則將通知發(fā)送給其他處理器指示自檢通過(步驟610)。
然后,固件確定其他處理器的自檢是否通過(步驟612)。如果其他處理器的自檢通過了,則固件針對(duì)在初始程序裝載固件中所定義的那個(gè)服務(wù)處理器開始獨(dú)立和非冗余的特定任務(wù)(步驟614)。然后確定固件是否指示主狀態(tài)(步驟616)。如果在步驟612,其他處理器的自檢失敗了,則處理器宣稱主狀態(tài)(步驟618)并且執(zhí)行所有的初始化任務(wù)(步驟620),之后操作繼續(xù)到步驟622。如果在步驟616,固件指示主狀態(tài),則裝載和啟動(dòng)運(yùn)行時(shí)固件(步驟622)。然后將系統(tǒng)操作傳送給操作系統(tǒng)(步驟624),之后服務(wù)處理操作結(jié)束。如果在步驟616,固件不指示主狀態(tài),則由服務(wù)處理器宣稱備用狀態(tài)(步驟626),之后操作結(jié)束。
因此,本發(fā)明在引導(dǎo)期間利用兩個(gè)服務(wù)處理器。引導(dǎo)處理分割初始化任務(wù),從而每個(gè)服務(wù)處理器具有一部分系統(tǒng)來初始化。分割系統(tǒng)初始化可以將引導(dǎo)時(shí)間減少為一個(gè)處理器執(zhí)行所有初始化任務(wù)的時(shí)間的一半。
本發(fā)明可以采用整體硬件實(shí)施方式、整體軟件實(shí)施方式或者包含硬件和軟件元件的實(shí)施方式。在優(yōu)選實(shí)施方式中,以軟件實(shí)施本發(fā)明,其包括但不限于固件、駐留軟件、微代碼等。
而且,本發(fā)明可以采取計(jì)算機(jī)程序產(chǎn)品的形式,可以從提供由或者結(jié)合計(jì)算機(jī)或者任何指令執(zhí)行系統(tǒng)使用的程序代碼的計(jì)算機(jī)可用或者計(jì)算機(jī)可讀介質(zhì)來存取所述計(jì)算機(jī)程序產(chǎn)品。為了本說明書的目的,計(jì)算機(jī)可用或者計(jì)算機(jī)可讀介質(zhì)可以是包含、存儲(chǔ)、通信、傳播或者傳輸由或者結(jié)合指令執(zhí)行系統(tǒng)、設(shè)備或者裝置使用的程序的任何有形設(shè)備。
介質(zhì)可以是電子、磁、光、電磁、紅外或者半導(dǎo)體系統(tǒng)(或者設(shè)備或者裝置)或者傳播介質(zhì)。計(jì)算機(jī)可讀介質(zhì)的例子包括半導(dǎo)體或者固態(tài)存儲(chǔ)器、磁帶、可拆卸計(jì)算機(jī)磁盤、隨機(jī)存取存儲(chǔ)器(RAM)、只讀存儲(chǔ)器(ROM)、硬磁盤(rigidmagnetic disk)和光盤。當(dāng)今光盤的例子包括致密盤-只讀存儲(chǔ)器(CD-ROM)、致密盤-讀/寫(CD-R/W)和DVD。
適于存儲(chǔ)和/或執(zhí)行程序代碼的數(shù)據(jù)處理系統(tǒng)將包括通過系統(tǒng)總線直接或者間接耦合到存儲(chǔ)器元件的至少一個(gè)處理器。存儲(chǔ)器元件可以包括在程序代碼的實(shí)際執(zhí)行期間所使用的本地存儲(chǔ)器、海量存儲(chǔ)器、和提供至少某些程序代碼的臨時(shí)存儲(chǔ)以減少在執(zhí)行期間必須從海量存儲(chǔ)器取回代碼的次數(shù)的高速緩存存儲(chǔ)器。
可以將輸入/輸出或者I/O裝置(包括但不限于鍵盤、顯示器、指示裝置等)直接或者通過中介I/O控制器耦合到系統(tǒng)。
還可以將網(wǎng)絡(luò)適配器耦合到系統(tǒng)以使得數(shù)據(jù)處理系統(tǒng)能夠變?yōu)橥ㄟ^中介專用或者公共網(wǎng)絡(luò)耦合到其他的數(shù)據(jù)處理系統(tǒng)或者遠(yuǎn)程打印機(jī)或者存儲(chǔ)裝置。調(diào)制解調(diào)器、有線調(diào)制解調(diào)器和以太網(wǎng)卡只是當(dāng)前可用的一些網(wǎng)絡(luò)適配器類型。
已經(jīng)為了說明和描述的目的呈現(xiàn)了本發(fā)明的描述,其不試圖窮盡或者限于本發(fā)明所公開的形式。對(duì)于本領(lǐng)域的普通技術(shù)人員來說許多變型和改變都很明顯。選擇和描述這些實(shí)施方式以最好地解釋本發(fā)明的原理、實(shí)際應(yīng)用,并且使得本領(lǐng)域的其他普通技術(shù)人員能夠理解,帶有各種變型的各種實(shí)施方式的本發(fā)明也適于所考慮的實(shí)際使用。
權(quán)利要求
1.一種用于增強(qiáng)計(jì)算機(jī)系統(tǒng)的引導(dǎo)時(shí)間的計(jì)算機(jī)實(shí)施方法,該方法包括在多個(gè)服務(wù)處理器上初始化初始程序裝載固件;執(zhí)行初始化任務(wù),其中在所述多個(gè)服務(wù)處理器上執(zhí)行所述初始化任務(wù),而且當(dāng)由所述多個(gè)服務(wù)處理器中的另一個(gè)服務(wù)處理器執(zhí)行其他獨(dú)立的非冗余初始化任務(wù)時(shí),在所述多個(gè)服務(wù)處理器中的每個(gè)服務(wù)處理器并發(fā)地執(zhí)行獨(dú)立的非冗余初始化任務(wù);將控制切換回所述多個(gè)服務(wù)處理器內(nèi)的主服務(wù)處理器;和裝載一組運(yùn)行時(shí)固件,其中由所述主服務(wù)處理器裝載該組運(yùn)行時(shí)固件。
2.根據(jù)權(quán)利要求1所述的計(jì)算機(jī)實(shí)施方法,還包括響應(yīng)于完成裝載該組運(yùn)行時(shí)固件,將操作傳送給操作系統(tǒng)。
3.根據(jù)權(quán)利要求1所述的計(jì)算機(jī)實(shí)施方法,還包括確定所述多個(gè)服務(wù)處理器內(nèi)的服務(wù)處理器是否為不可操作;和響應(yīng)于所述服務(wù)處理器的所述不可操作狀態(tài),由可操作的服務(wù)處理器執(zhí)行所有初始化任務(wù)。
4.根據(jù)權(quán)利要求3所述的計(jì)算機(jī)實(shí)施方法,其中確定所述多個(gè)服務(wù)處理器內(nèi)的服務(wù)處理器是否不可操作包括將所述多個(gè)服務(wù)處理器通電;在所述多個(gè)服務(wù)處理器內(nèi)的每個(gè)服務(wù)處理器上運(yùn)行內(nèi)置自檢;和確定在所述多個(gè)服務(wù)處理器內(nèi)的至少一個(gè)服務(wù)處理器上所述內(nèi)置自檢失敗。
5.根據(jù)權(quán)利要求1所述的計(jì)算機(jī)實(shí)施方法,其中在初始程序裝載固件中指定所述獨(dú)立的非冗余初始化任務(wù)。
6.根據(jù)權(quán)利要求5所述的計(jì)算機(jī)實(shí)施方法,其中將所述初始程序裝載固件存儲(chǔ)在閃存上。
7.根據(jù)權(quán)利要求1所述的計(jì)算機(jī)實(shí)施方法,其中當(dāng)每個(gè)獨(dú)立的非冗余初始化任務(wù)完成時(shí),在所述多個(gè)服務(wù)處理器中的每個(gè)服務(wù)處理器發(fā)送確認(rèn)給所述多個(gè)處理器。
8.一種數(shù)據(jù)處理系統(tǒng),包括初始程序裝載固件;和多個(gè)服務(wù)處理器,其中所述多個(gè)服務(wù)處理器初始化在所述多個(gè)服務(wù)處理器上的所述初始程序裝載固件;在所述初始程序裝載固件中執(zhí)行初始化任務(wù),其中在所述多個(gè)服務(wù)處理器上執(zhí)行所述初始化任務(wù),而且其中當(dāng)由所述多個(gè)服務(wù)處理器中的另一個(gè)服務(wù)處理器執(zhí)行其他獨(dú)立的非冗余初始化任務(wù)時(shí),在所述多個(gè)服務(wù)處理器中的每個(gè)服務(wù)處理器并發(fā)地執(zhí)行獨(dú)立的非冗余初始化任務(wù);將控制切換回所述多個(gè)服務(wù)處理器內(nèi)的主服務(wù)處理器;和裝載一組運(yùn)行時(shí)固件,其中由所述主服務(wù)處理器裝載該組運(yùn)行時(shí)固件。
9.根據(jù)權(quán)利要求8所述的數(shù)據(jù)處理系統(tǒng),其中所述主服務(wù)處理器響應(yīng)于完成裝載該組運(yùn)行時(shí)固件,執(zhí)行初始程序裝載固件以將操作傳送給操作系統(tǒng)。
10.根據(jù)權(quán)利要求8所述的數(shù)據(jù)處理系統(tǒng),其中所述主服務(wù)處理器執(zhí)行初始程序裝載固件以確定所述多個(gè)服務(wù)處理器中的服務(wù)處理器是否為不可操作,并且響應(yīng)于所述服務(wù)處理器的不可操作狀態(tài)由可操作的服務(wù)處理器執(zhí)行所有初始化任務(wù)。
11.根據(jù)權(quán)利要求10所述的數(shù)據(jù)處理系統(tǒng),其中所述主服務(wù)處理器執(zhí)行初始程序裝載固件以確定所述多個(gè)服務(wù)處理器中的服務(wù)處理器是否為不可操作包括所述主服務(wù)處理器執(zhí)行初始程序裝載固件以將所述多個(gè)服務(wù)處理器通電;在所述多個(gè)服務(wù)處理器中的每個(gè)服務(wù)處理器上運(yùn)行內(nèi)置自檢;和確定在所述多個(gè)服務(wù)處理器中的至少一個(gè)服務(wù)處理器上內(nèi)置自檢失敗。
12.根據(jù)權(quán)利要求8所述的數(shù)據(jù)處理系統(tǒng),其中在初始程序裝載固件中指定所述獨(dú)立的非冗余初始化任務(wù)。
13.根據(jù)權(quán)利要求8所述的數(shù)據(jù)處理系統(tǒng),其中當(dāng)每個(gè)獨(dú)立的非冗余初始化任務(wù)完成時(shí),在所述多個(gè)服務(wù)處理器中的每個(gè)服務(wù)處理器發(fā)送確認(rèn)給所述多個(gè)處理器。
全文摘要
提供用于增強(qiáng)計(jì)算機(jī)系統(tǒng)的引導(dǎo)時(shí)間的計(jì)算機(jī)實(shí)施方法、數(shù)據(jù)處理系統(tǒng)、計(jì)算機(jī)可用程序代碼和設(shè)備。在多個(gè)服務(wù)處理器上初始化初始程序裝載固件。當(dāng)由另一個(gè)服務(wù)處理器執(zhí)行其他獨(dú)立的非冗余初始化任務(wù)時(shí),所述多個(gè)服務(wù)處理器并發(fā)地執(zhí)行獨(dú)立的非冗余初始化任務(wù)。一旦完成了初始化任務(wù),將控制切換給所述多個(gè)服務(wù)處理器中的主服務(wù)處理器,而且由所述主服務(wù)處理器裝載運(yùn)行時(shí)固件。
文檔編號(hào)G06F9/445GK101021796SQ20071000577
公開日2007年8月22日 申請(qǐng)日期2007年2月13日 優(yōu)先權(quán)日2006年2月13日
發(fā)明者馬克·D·麥克拉夫林, 邁克·C·杜龍 申請(qǐng)人:國(guó)際商業(yè)機(jī)器公司
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評(píng)論。精彩留言會(huì)獲得點(diǎn)贊!
1
庐江县| 广南县| 永善县| 扶沟县| 赞皇县| 昌吉市| 土默特左旗| 双城市| 龙山县| 杨浦区| 乌恰县| 平昌县| 江都市| 临海市| 故城县| 永德县| 晋城| 麟游县| 神农架林区| 民勤县| 鄢陵县| 绥滨县| 邛崃市| 疏勒县| 固镇县| 四子王旗| 左权县| 盐津县| 阳原县| 哈巴河县| 九台市| 塔河县| 桂阳县| 布尔津县| 龙泉市| 木兰县| 将乐县| 中江县| 雅江县| 永吉县| 开封县|