最新的毛片基地免费,国产国语一级毛片,免费国产成人高清在线电影,中天堂国产日韩欧美,中国国产aa一级毛片,国产va欧美va在线观看,成人不卡在线

一種使用Xeon處理器的服務(wù)器的內(nèi)存測試方法和系統(tǒng)的制作方法

文檔序號:6489339閱讀:252來源:國知局
一種使用Xeon處理器的服務(wù)器的內(nèi)存測試方法和系統(tǒng)的制作方法
【專利摘要】本發(fā)明公開了一種使用Xeon處理器的服務(wù)器的內(nèi)存測試方法和系統(tǒng),方法包括:響應(yīng)于在所述服務(wù)器啟動過程中接收到硬件內(nèi)存測試的請求,獲得存儲的過去內(nèi)存測試的結(jié)果,其中過去內(nèi)存測試的結(jié)果至少包括在測試中使用的測試循環(huán)次數(shù),測試模式以及測試中發(fā)生的錯誤;根據(jù)獲得的過去內(nèi)存測試的結(jié)果調(diào)整所述硬件內(nèi)存測試的測試循環(huán)次數(shù)以及使用的測試模式;以及根據(jù)調(diào)整后的測試循環(huán)次數(shù)以及使用的測試模式執(zhí)行硬件內(nèi)存測試。該方法和系統(tǒng)能夠平衡內(nèi)存系統(tǒng)的可靠性和服務(wù)器的啟動效率。
【專利說明】—種使用Xeon處理器的服務(wù)器的內(nèi)存測試方法和系統(tǒng)
【技術(shù)領(lǐng)域】
[0001]本發(fā)明涉及內(nèi)存測試,更具體地,涉及一種使用Xeon處理器的服務(wù)器的內(nèi)存測試方法和系統(tǒng)。
【背景技術(shù)】
[0002]內(nèi)存,作為計(jì)算機(jī)的一個重要零件,其兼容性、運(yùn)行速度和穩(wěn)定性等性能對計(jì)算機(jī)的品質(zhì)起著十分重要的作用。隨著數(shù)據(jù)處理能力要求的持續(xù)快速增長,內(nèi)存在IT工業(yè)界扮演著空前重要的角色。具有更大尺寸以及更先進(jìn)的硅技術(shù)的內(nèi)存子系統(tǒng)對內(nèi)存測試提出了更高的要求,并且?guī)砹烁氐臏y試負(fù)擔(dān)。
[0003]一方面,更大的內(nèi)存尺寸導(dǎo)致了更大的測試范圍;另一方面,更高級的硅加工技術(shù)使得內(nèi)存更容易損壞,這又要求更嚴(yán)格的內(nèi)存測試技術(shù),使用更多的測試循環(huán)(loops)以及不同的測試模式(patterns),來保證系統(tǒng)的可靠性。
[0004]內(nèi)存測試的付出與內(nèi)存的大小以及測試循環(huán)次數(shù)成正比,而當(dāng)前計(jì)算機(jī)的內(nèi)存大小一直在增加,測試循環(huán)次數(shù)也一直在增加,內(nèi)存測試已經(jīng)成為阻礙計(jì)算機(jī)系統(tǒng)啟動效率的一個主要負(fù)擔(dān)。而計(jì)算機(jī)系統(tǒng)啟動的效率從可獲得性以及服務(wù)性的角度來說,對于服務(wù)器來說是至關(guān)重要的,這里就出現(xiàn)了矛盾:內(nèi)存子系統(tǒng)需要更嚴(yán)格的、更寬廣的內(nèi)存測試,而這又會降低服務(wù)器的啟動效率。
[0005]Xeon是英特爾公司的一款處理器,主要供服務(wù)器及高級工作站使用。它跟奔騰(Pentium)系列一樣,經(jīng)過幾代處理器架構(gòu)的變遷后,名字仍保留下來。舊款Xeon的名字是將Xeon放到相對奔騰的名字之后(例如Pentium II Xeon),但新款的Xeon則直接叫作Xeon0通常使用Xeon處理器的服務(wù)器支持的內(nèi)存的容量都很大。
[0006]使用Xeon處理器的服務(wù)器的內(nèi)存控制器提供了硬件內(nèi)存測試功能。BIOS能夠制定測試模式,內(nèi)存控制器基于測試模式執(zhí)行測試。如果發(fā)生了測試錯誤,BIOS發(fā)現(xiàn)并通知內(nèi)存控制器隔離失敗的設(shè)備。為了更加可靠和一致,現(xiàn)有的BIOS內(nèi)存測試方案是:執(zhí)行更多次的內(nèi)存測試循環(huán),每次循環(huán)使用相同的測試模式。更多的測試循環(huán)次數(shù)意味著更可靠,但是也意味著系統(tǒng)效率更差。目前,折中的BIOS內(nèi)存測試方案是:使用隨機(jī)的或者是任意的測試模式來執(zhí)行一次硬件測試循環(huán),或者是任意次的測試循環(huán)進(jìn)行硬件測試,從而平衡可靠性和效率的要求。

【發(fā)明內(nèi)容】

[0007]本發(fā)明的目標(biāo)是提供一種對使用Xeon處理器的服務(wù)器的內(nèi)存測試方法和系統(tǒng)。
[0008]根據(jù)本發(fā)明的一個方面,提供了一種使用Xeon處理器的服務(wù)器的內(nèi)存測試方法,包括:
[0009]響應(yīng)于在所述服務(wù)器啟動過程中接收到硬件內(nèi)存測試的請求,獲得存儲的過去內(nèi)存測試的結(jié)果,其中過去內(nèi)存測試的結(jié)果至少包括在測試中使用的測試循環(huán)次數(shù),測試模式以及測試中發(fā)生的錯誤;[0010]根據(jù)獲得的過去內(nèi)存測試的結(jié)果調(diào)整所述硬件內(nèi)存測試的測試循環(huán)次數(shù)以及使用的測試模式;以及
[0011]根據(jù)調(diào)整后的測試循環(huán)次數(shù)以及使用的測試模式執(zhí)行硬件內(nèi)存測試。
[0012]根據(jù)本發(fā)明的另一個方面,提供了一種使用Xeon處理器的服務(wù)器的內(nèi)存測試系統(tǒng),包括:
[0013]過去內(nèi)存測試結(jié)果獲得裝置,被配置為響應(yīng)于在所述服務(wù)器啟動過程中接收到硬件內(nèi)存測試的請求,獲得存儲的過去內(nèi)存測試的結(jié)果,其中過去內(nèi)存測試的\結(jié)果至少包括在測試中使用的測試循環(huán)次數(shù),測試模式以及測試中發(fā)生的錯誤;
[0014]硬件內(nèi)存測試調(diào)整裝置,被配置為根據(jù)獲得的過去內(nèi)存測試的結(jié)果調(diào)整所述硬件內(nèi)存測試的測試循環(huán)次數(shù)以及使用的測試模式;以及
[0015]硬件內(nèi)存測試執(zhí)行裝置,被配置為根據(jù)調(diào)整后的測試循環(huán)次數(shù)以及使用的測試模式執(zhí)行硬件內(nèi)存測試。
【專利附圖】

【附圖說明】
[0016]通過結(jié)合附圖對本公開示例性實(shí)施方式進(jìn)行更詳細(xì)的描述,本公開的上述以及其它目的、特征和優(yōu)勢將變得更加明顯,其中,在本公開示例性實(shí)施方式中,相同的參考標(biāo)號通常代表相同部件。
[0017]圖1示出了適于用來實(shí)現(xiàn)本發(fā)明實(shí)施方式的示例性計(jì)算機(jī)系統(tǒng)/服務(wù)器12的框圖;
[0018]圖2示意性地示出了 BIOS如何初始化內(nèi)存以及加載OS的啟動流程;
[0019]圖3示出了根據(jù)本發(fā)明的一種實(shí)施方式的一種使用Xeon處理器的服務(wù)器的內(nèi)存測試方法的流程圖;
[0020]圖4示出了根據(jù)本發(fā)明的一種實(shí)施方式的一種使用Xeon處理器的服務(wù)器的內(nèi)存測試系統(tǒng)的結(jié)構(gòu)框圖。
【具體實(shí)施方式】
[0021]下面將參照附圖更詳細(xì)地描述本公開的優(yōu)選實(shí)施方式。雖然附圖中顯示了本公開的優(yōu)選實(shí)施方式,然而應(yīng)該理解,可以以各種形式實(shí)現(xiàn)本公開而不應(yīng)被這里闡述的實(shí)施方式所限制。相反,提供這些實(shí)施方式是為了使本公開更加透徹和完整,并且能夠?qū)⒈竟_的范圍完整地傳達(dá)給本領(lǐng)域的技術(shù)人員。
[0022]所屬【技術(shù)領(lǐng)域】的技術(shù)人員知道,本發(fā)明可以實(shí)現(xiàn)為系統(tǒng)、方法或計(jì)算機(jī)程序產(chǎn)品。因此,本公開可以具體實(shí)現(xiàn)為以下形式,即:可以是完全的硬件、也可以是完全的軟件(包括固件、駐留軟件、微代碼等),還可以是硬件和軟件結(jié)合的形式,本文一般稱為“電路”、“模塊”或“系統(tǒng)”。此外,在一些實(shí)施例中,本發(fā)明還可以實(shí)現(xiàn)為在一個或多個計(jì)算機(jī)可讀介質(zhì)中的計(jì)算機(jī)程序產(chǎn)品的形式,該計(jì)算機(jī)可讀介質(zhì)中包含計(jì)算機(jī)可讀的程序代碼。
[0023]可以采用一個或多個計(jì)算機(jī)可讀的介質(zhì)的任意組合。計(jì)算機(jī)可讀介質(zhì)可以是計(jì)算機(jī)可讀信號介質(zhì)或者計(jì)算機(jī)可讀存儲介質(zhì)。計(jì)算機(jī)可讀存儲介質(zhì)例如可以是一但不限于——電、磁、光、電磁、紅外線、或半導(dǎo)體的系統(tǒng)、裝置或器件,或者任意以上的組合。計(jì)算機(jī)可讀存儲介質(zhì)的更具體的例子(非窮舉的列表)包括:具有一個或多個導(dǎo)線的電連接、便攜式計(jì)算機(jī)磁盤、硬盤、隨機(jī)存取存儲器(RAM)、只讀存儲器(ROM)、可擦式可編程只讀存儲器(EPR0M或閃存)、光纖、便攜式緊湊磁盤只讀存儲器(CD-ROM)、光存儲器件、磁存儲器件、或者上述的任意合適的組合。在本文件中,計(jì)算機(jī)可讀存儲介質(zhì)可以是任何包含或存儲程序的有形介質(zhì),該程序可以被指令執(zhí)行系統(tǒng)、裝置或者器件使用或者與其結(jié)合使用。
[0024]計(jì)算機(jī)可讀的信號介質(zhì)可以包括在基帶中或者作為載波一部分傳播的數(shù)據(jù)信號,其中承載了計(jì)算機(jī)可讀的程序代碼。這種傳播的數(shù)據(jù)信號可以采用多種形式,包括——但不限于——電磁信號、光信號或上述的任意合適的組合。計(jì)算機(jī)可讀的信號介質(zhì)還可以是計(jì)算機(jī)可讀存儲介質(zhì)以外的任何計(jì)算機(jī)可讀介質(zhì),該計(jì)算機(jī)可讀介質(zhì)可以發(fā)送、傳播或者傳輸用于由指令執(zhí)行系統(tǒng)、裝置或者器件使用或者與其結(jié)合使用的程序。
[0025]計(jì)算機(jī)可讀介質(zhì)上包含的程序代碼可以用任何適當(dāng)?shù)慕橘|(zhì)傳輸,包括一但不限于一無線、電線、光纜、RF等等,或者上述的任意合適的組合。
[0026]可以以一種或多種程序設(shè)計(jì)語言或其組合來編寫用于執(zhí)行本發(fā)明操作的計(jì)算機(jī)程序代碼,所述程序設(shè)計(jì)語言包括面向?qū)ο蟮某绦蛟O(shè)計(jì)語言一諸如Java、Smalltalk、C++,還包括常規(guī)的過程式程序設(shè)計(jì)語言一諸如”C”語言或類似的程序設(shè)計(jì)語言。程序代碼可以完全地在用戶計(jì)算機(jī)上執(zhí)行、部分地在用戶計(jì)算機(jī)上執(zhí)行、作為一個獨(dú)立的軟件包執(zhí)行、部分在用戶計(jì)算機(jī)上部分在遠(yuǎn)程計(jì)算機(jī)上執(zhí)行、或者完全在遠(yuǎn)程計(jì)算機(jī)或服務(wù)器上執(zhí)行。在涉及遠(yuǎn)程計(jì)算機(jī)的情形中,遠(yuǎn)程計(jì)算機(jī)可以通過任意種類的網(wǎng)絡(luò)一包括局域網(wǎng)(LAN)或廣域網(wǎng)(WAN)—連接到用戶計(jì)算機(jī),或者,可以連接到外部計(jì)算機(jī)(例如利用因特網(wǎng)服務(wù)提供商來通過因特網(wǎng)連接)。
[0027]下面將參照本發(fā)明實(shí)施例的方法、裝置(系統(tǒng))和計(jì)算機(jī)程序產(chǎn)品的流程圖和/或框圖描述本發(fā)明。應(yīng)當(dāng)理解,流程圖和/或框圖的每個方框以及流程圖和/或框圖中各方框的組合,都可以由計(jì)算機(jī)程序指令實(shí)現(xiàn)。這些計(jì)算機(jī)程序指令可以提供給通用計(jì)算機(jī)、專用計(jì)算機(jī)或其它可編程數(shù)據(jù)處理裝置的處理器,從而生產(chǎn)出一種機(jī)器,這些計(jì)算機(jī)程序指令通過計(jì)算機(jī)或其它可編程數(shù)據(jù)處理裝置執(zhí)行,產(chǎn)生了實(shí)現(xiàn)流程圖和/或框圖中的方框中規(guī)定的功能/操作的裝置。
[0028]也可以把這些計(jì)算機(jī)程序指令存儲在能使得計(jì)算機(jī)或其它可編程數(shù)據(jù)處理裝置以特定方式工作的計(jì)算機(jī)可讀介質(zhì)中,這樣,存儲在計(jì)算機(jī)可讀介質(zhì)中的指令就產(chǎn)生出一個包括實(shí)現(xiàn)流程圖和/或框圖中的方框中規(guī)定的功能/操作的指令裝置(instructionmeans)的制造品(manufacture)。
[0029]也可以把計(jì)算機(jī)程序指令加載到計(jì)算機(jī)、其它可編程數(shù)據(jù)處理裝置、或其它設(shè)備上,使得在計(jì)算機(jī)、其它可編程數(shù)據(jù)處理裝置或其它設(shè)備上執(zhí)行一系列操作步驟,以產(chǎn)生計(jì)算機(jī)實(shí)現(xiàn)的過程,從而使得在計(jì)算機(jī)或其它可編程裝置上執(zhí)行的指令能夠提供實(shí)現(xiàn)流程圖和/或框圖中的方框中規(guī)定的功能/操作的過程。
[0030]圖1示出了適于用來實(shí)現(xiàn)本發(fā)明實(shí)施方式的示例性計(jì)算機(jī)系統(tǒng)/服務(wù)器12的框圖。圖1顯示的計(jì)算機(jī)系統(tǒng)/服務(wù)器12僅僅是一個示例,不應(yīng)對本發(fā)明實(shí)施例的功能和使用范圍帶來任何限制。
[0031]如圖1所示,計(jì)算機(jī)系統(tǒng)/服務(wù)器12以通用計(jì)算設(shè)備的形式表現(xiàn)。計(jì)算機(jī)系統(tǒng)/服務(wù)器12的組件可以包括但不限于:一個或者多個處理器或者處理單元16,系統(tǒng)存儲器28,連接不同系統(tǒng)組件(包括系統(tǒng)存儲器28和處理單元16)的總線18。[0032]總線18表示幾類總線結(jié)構(gòu)中的一種或多種,包括存儲器總線或者存儲器控制器,外圍總線,圖形加速端口,處理器或者使用多種總線結(jié)構(gòu)中的任意總線結(jié)構(gòu)的局域總線。舉例來說,這些體系結(jié)構(gòu)包括但不限于工業(yè)標(biāo)準(zhǔn)體系結(jié)構(gòu)(ISA)總線,微通道體系結(jié)構(gòu)(MAC)總線,增強(qiáng)型ISA總線、視頻電子標(biāo)準(zhǔn)協(xié)會(VESA)局域總線以及外圍組件互連(PCI)總線。
[0033]計(jì)算機(jī)系統(tǒng)/服務(wù)器12典型地包括多種計(jì)算機(jī)系統(tǒng)可讀介質(zhì)。這些介質(zhì)可以是任何能夠被計(jì)算機(jī)系統(tǒng)/服務(wù)器12訪問的可用介質(zhì),包括易失性和非易失性介質(zhì),可移動的和不可移動的介質(zhì)。
[0034]系統(tǒng)存儲器28可以包括易失性存儲器形式的計(jì)算機(jī)系統(tǒng)可讀介質(zhì),例如隨機(jī)存取存儲器(RAM)30和/或高速緩存存儲器32。計(jì)算機(jī)系統(tǒng)/服務(wù)器12可以進(jìn)一步包括其它可移動/不可移動的、易失性/非易失性計(jì)算機(jī)系統(tǒng)存儲介質(zhì)。僅作為舉例,存儲系統(tǒng)34可以用于讀寫不可移動的、非易失性磁介質(zhì)(圖1未顯示,通常稱為“硬盤驅(qū)動器”)。盡管圖1中未示出,可以提供用于對可移動非易失性磁盤(例如“軟盤”)讀寫的磁盤驅(qū)動器,以及對可移動非易失性光盤(例如⑶-ROM,DVD-ROM或者其它光介質(zhì))讀寫的光盤驅(qū)動器。在這些情況下,每個驅(qū)動器可以通過一個或者多個數(shù)據(jù)介質(zhì)接口與總線18相連。存儲器28可以包括至少一個程序產(chǎn)品,該程序產(chǎn)品具有一組(例如至少一個)程序模塊,這些程序模塊被配置以執(zhí)行本發(fā)明各實(shí)施例的功能。
[0035]具有一組(至少一個)程序模塊42的程序/實(shí)用工具40,可以存儲在例如存儲器28中,這樣的程序模塊42包括——但不限于——操作系統(tǒng)、一個或者多個應(yīng)用程序、其它程序模塊以及程序數(shù)據(jù),這些示例中的每一個或某種組合中可能包括網(wǎng)絡(luò)環(huán)境的實(shí)現(xiàn)。程序模塊42通常執(zhí)行本發(fā)明所描述的實(shí)施例中的功能和/或方法。
[0036]計(jì)算機(jī)系統(tǒng)/服務(wù)器12也可以與一個或多個外部設(shè)備14 (例如鍵盤、指向設(shè)備、顯示器24等)通信,還可與一個或者多個使得用戶能與該計(jì)算機(jī)系統(tǒng)/服務(wù)器12交互的設(shè)備通信,和/或與使得該計(jì)算機(jī)系統(tǒng)/服務(wù)器12能與一個或多個其它計(jì)算設(shè)備進(jìn)行通信的任何設(shè)備(例如網(wǎng)卡,調(diào)制解調(diào)器等等)通信。這種通信可以通過輸入/輸出(I/O)接口 22進(jìn)行。并且,計(jì)算機(jī)系統(tǒng)/服務(wù)器12還可以通過網(wǎng)絡(luò)適配器20與一個或者多個網(wǎng)絡(luò)(例如局域網(wǎng)(LAN),廣域網(wǎng)(WAN)和/或公共網(wǎng)絡(luò),例如因特網(wǎng))通信。如圖所示,網(wǎng)絡(luò)適配器20通過總線18與計(jì)算機(jī)系統(tǒng)/服務(wù)器12的其它模塊通信。應(yīng)當(dāng)明白,盡管圖中未示出,可以結(jié)合計(jì)算機(jī)系統(tǒng)/服務(wù)器12使用其它硬件和/或軟件模塊,包括但不限于:微代碼、設(shè)備驅(qū)動器、冗余處理單元、外部磁盤驅(qū)動陣列、RAID系統(tǒng)、磁帶驅(qū)動器以及數(shù)據(jù)備份存儲系統(tǒng)等。
[0037]現(xiàn)在參看圖2,圖2示意性地示出了 BIOS如何初始化內(nèi)存以及加載OS的啟動流程。
[0038]在步驟S201,系統(tǒng)上電時,BIOS開始啟動流程.[0039]在步驟S202,B10S進(jìn)行預(yù)先內(nèi)存初始化。此時,BIOS在沒有可使用的系統(tǒng)內(nèi)存情況下,接管系統(tǒng),進(jìn)行最 初的初始化。
[0040]在步驟S203中,BIOS檢測到系統(tǒng)內(nèi)存的存在,內(nèi)存的大小、速度等后,初始化安裝的全部內(nèi)存設(shè)備,這樣才可以讀寫內(nèi)存,以便系統(tǒng)使用。
[0041]在步驟S204,BIOS給內(nèi)存控制器發(fā)出“硬件內(nèi)存測試”的命令。硬件內(nèi)存測試的基本原理是由內(nèi)存控制器完成內(nèi)存的讀寫和驗(yàn)證操作。在該步驟期間,BIOS可以指定測試模式,內(nèi)存控制器基于測試模式執(zhí)行寫/讀測試,每執(zhí)行一次就是一次測試循環(huán)。目前的內(nèi)存硬件測試使用固定的一個測試模式或者固定次數(shù)的測試模式(假設(shè)是10),對于一個配置64GB內(nèi)存的服務(wù)器系統(tǒng),測試一個測試模式,一個測試循環(huán)需要5-10秒的時間,那么10個測試模式就是50-100秒。顯然,硬件測試是很耗時的,會降低服務(wù)器系統(tǒng)的啟動效率。如果在該步驟發(fā)生測試錯誤,錯誤設(shè)備可以被暫停并且很快被隔離,這樣以后就不會訪問出錯的內(nèi)存。
[0042]在步驟S205,硬件測試后,就建立了系統(tǒng)內(nèi)存,所有的通過硬件內(nèi)存測試的初始化的內(nèi)存設(shè)備都映射到系統(tǒng)內(nèi)存圖,可以使用內(nèi)存地址訪問。
[0043]在步驟S206,使用建立好的系統(tǒng)內(nèi)存圖,BIOS執(zhí)行軟件內(nèi)存測試來補(bǔ)充以前的硬件測試。軟件測試使用稀疏的測試覆蓋水平達(dá)到比硬件測試更快的效率,即目前的軟件測試只選擇一塊內(nèi)存區(qū)域做讀寫測試,大概只有1GB。類似于硬件測試,目前的軟件測試也使用固定的一個測試模式和一次測試循環(huán)。
[0044]在步驟S207,如果系統(tǒng)通過硬件測試和軟件測試,就進(jìn)行早期POST初始化。在該步驟中,BIOS初始化必要的系統(tǒng)資源,并且準(zhǔn)備建立運(yùn)行時內(nèi)存錯誤處理機(jī)制。
[0045]在步驟S208,建立運(yùn)行時內(nèi)存錯誤處理機(jī)制。在Xeon系統(tǒng)上的運(yùn)行時內(nèi)存錯誤處理是通過 SMI (System Management Interrupt,系統(tǒng)管理中斷)和 IPMI (IntelligentPlatform Management Interface,智能平臺管理接口)進(jìn)行匯報的。該步驟需要建立SMM處理器機(jī)制以及IPMI通信方,以便在后續(xù)的步驟中,由運(yùn)行時內(nèi)存處理機(jī)制進(jìn)行內(nèi)存測試。SMM模式是Intel X86處理器的一個特定的操作模式,用于處理系統(tǒng)級的功能。比如:電源管理(Power management),系統(tǒng)硬件控制(system hardware control),特殊的 OEM定制代碼(special OEM designed code)。它被設(shè)計(jì)成只給系統(tǒng)固件使用,不是給應(yīng)用軟件或者一般的系統(tǒng)軟件使用。SMM主要的好處是其提供了一個獨(dú)特且易用的獨(dú)立的處理器環(huán)境,以便更容易操作OS及軟件應(yīng)用。BIOS會注冊一個SMM處理函數(shù)用來處理運(yùn)行時(runtime)的錯誤。比如內(nèi)存錯誤,如果是可恢復(fù)的內(nèi)存錯誤,SMM處理函數(shù)處理完之后會直接返回,離開SMM模式,這樣操作系統(tǒng)可以繼續(xù)運(yùn)行。如果是不可恢復(fù)的錯誤(fatal error),服務(wù)器系統(tǒng)會直接重新啟動。
[0046]在步驟S209,進(jìn)行后期POST初始化,并且準(zhǔn)備啟動OS。
[0047]然后在步驟S210,OS啟動裝載器激活,并且完全接管服務(wù)器系統(tǒng)的控制。
[0048]在步驟S211,該流程結(jié)束。
[0049]上述硬件內(nèi)存測試固定10個測試模式的一次測試循環(huán)就達(dá)到50-100秒的測試時間,如果多次測試循環(huán),測試時間更大。其實(shí)對于一個穩(wěn)定的服務(wù)器系統(tǒng),可以考慮不進(jìn)行硬件測試或者減少硬件測試強(qiáng)度;但是對于一個不穩(wěn)定的內(nèi)存系統(tǒng),使用一個或者固定的測試模式的硬件測試往往不能完全檢測到所有內(nèi)存錯誤。軟件的稀疏內(nèi)存測試雖然也不能完全檢測到所有內(nèi)存錯誤,但是軟件內(nèi)存測試由于效率很高,可以執(zhí)行更多次的測試循環(huán),使用更多的測試模式,而沒有服務(wù)器啟動效率的損失。因此,本發(fā)明考慮將內(nèi)存測試的歷史結(jié)果存儲起來,來確定該服務(wù)器的內(nèi)存子系統(tǒng)是否是穩(wěn)定的,從而確定是執(zhí)行何種程度的內(nèi)存測試。
[0050]圖3示出了根據(jù)本發(fā)明的一個實(shí)施方式的一種使用Xeon處理器的服務(wù)器的內(nèi)存測試方法的流程圖。根據(jù)圖3,
[0051]在步驟S301,響應(yīng)于在所述服務(wù)器啟動過程中接收到硬件內(nèi)存測試的請求,獲得存儲的過去內(nèi)存測試的結(jié)果,其中過去內(nèi)存測試結(jié)果包括在測試中使用的測試循環(huán)次數(shù),測試模式以及測試中發(fā)生的錯誤;這里的過去內(nèi)存測試的結(jié)果至少包括以下之一:過去的硬件內(nèi)存測試結(jié)果,過去的軟件內(nèi)存測試結(jié)果,以及過去的運(yùn)行時內(nèi)存錯誤。后續(xù)流程中會描述這些結(jié)果是如何獲得的。過去內(nèi)存測試的結(jié)果可以存儲在flash中。存儲的格式?jīng)]有限定。
[0052]在步驟S302,根據(jù)獲得的過去內(nèi)存測試的結(jié)果調(diào)整所述硬件內(nèi)存測試的測試循環(huán)次數(shù)以及使用的測試模式;根據(jù)過去內(nèi)存測試的結(jié)果,來調(diào)整本次硬件測試需要使用的測試循環(huán)次數(shù)以及使用的測試模式,基本原則是:對于測試循環(huán)的次數(shù),如果系統(tǒng)不穩(wěn)定,并且以前硬件內(nèi)存測試沒有有效地檢測到錯誤,就增加內(nèi)存硬件測試的測試循環(huán)次數(shù);如果系統(tǒng)是穩(wěn)定的,就減少硬件內(nèi)存測試循環(huán)的次數(shù);對于測試模式,如果紀(jì)錄的測試模式小于測試循環(huán)的次數(shù),可以用預(yù)先設(shè)定的模式或者隨機(jī)模式作為補(bǔ)充。
[0053]可以考慮以下幾種情況:
[0054](I)第一次啟動,因?yàn)闆]有過去的內(nèi)存測試結(jié)果,可以使用一個設(shè)定的內(nèi)存測試模式和設(shè)定的測試循環(huán)次數(shù)(假設(shè)是10),做硬件內(nèi)存測試。
[0055](2)響應(yīng)于存儲的過去內(nèi)存測試的結(jié)果是正常的,也就是沒有發(fā)生過內(nèi)存測試錯誤,那么本次硬件測試需要使用的測試循環(huán)次數(shù)以及使用的測試模式都設(shè)為0,也就是跳過硬件內(nèi)存測試,即可以響應(yīng)于存儲的過去內(nèi)存測試的結(jié)果中沒有錯誤,將所述硬件內(nèi)存測試的測試循環(huán)次數(shù)調(diào)整為O ;然后響應(yīng)于所述硬件內(nèi)存測試的測試循環(huán)次數(shù)為0,不執(zhí)行硬件內(nèi)存測試。從而對64GB字節(jié)的內(nèi)存,節(jié)省50-100秒的時間;或者調(diào)整為很小的測試循環(huán)次數(shù)(例如I次)以及固定一個測試模式,從而減少硬件測試的時間消耗,提高服務(wù)器系統(tǒng)的啟動效率。
[0056](3)響應(yīng)于存儲的過去內(nèi)存測試的結(jié)果存在不正常的情況,并且上一次軟件測試結(jié)果不正常,比如上一次軟件測試在測試模式(0x5A5AA5A5)的時候出現(xiàn)錯誤,那么這次可以只使用模式(0x5A5AA5A5)做硬件測試,此時循環(huán)次數(shù)可以使用一個固定值,例如10,來發(fā)現(xiàn)內(nèi)存錯誤。
[0057]本領(lǐng)域技術(shù)人員可以知道,上述的調(diào)整方式只是示例性的,具體本領(lǐng)域技術(shù)人員可以了解,有多種調(diào)整方式,并不僅僅限于上述的調(diào)整方式,只要能根據(jù)過去的測試結(jié)果,來調(diào)整本次硬件測試的測試模式和測試循環(huán)次數(shù),任何調(diào)整方法都落在本發(fā)明的保護(hù)范圍內(nèi)。
[0058]在步驟S303,根據(jù)調(diào)整后的測試循環(huán)次數(shù)以及使用的測試模式執(zhí)行硬件內(nèi)存測試。這里包括本次硬件測試需要使用的測試循環(huán)次數(shù)以及使用的測試模式都為0,也就是跳過硬件內(nèi)存測試,本次不進(jìn)行硬件內(nèi)存測試。該步驟由使用Xeon處理器的服務(wù)器系統(tǒng)的內(nèi)存控制器提供的硬件內(nèi)存測試邏輯,硬件內(nèi)存測試由BIOS啟動,內(nèi)存控制器執(zhí)行。
[0059]在另一種實(shí)施方式中,可以對存儲的過去內(nèi)存測試的結(jié)果進(jìn)行統(tǒng)計(jì),即獲得存儲的過去內(nèi)存測試的結(jié)果中全部內(nèi)存錯誤發(fā)生的次數(shù);響應(yīng)于所述全部內(nèi)存錯誤發(fā)生的次數(shù)大于設(shè)定的閾值,終止服務(wù)器的啟動流程,以便進(jìn)行硬件修復(fù),而不是進(jìn)一步增加內(nèi)存測試的強(qiáng)度(圖3未示出)。該實(shí)施方式用于防止一種死循環(huán),就是軟件測試每次都能發(fā)現(xiàn)錯誤,但是硬件測試沒有檢測到錯誤,這樣會導(dǎo)致系統(tǒng)不停地在重復(fù)內(nèi)存測試,當(dāng)然這是一種極端情況,這里的閾值假設(shè)暫定為3次。[0060]在另一種實(shí)施方式中,在步驟S304,響應(yīng)于硬件內(nèi)存測試執(zhí)行完畢,記錄硬件內(nèi)存測試結(jié)果。該記錄結(jié)果在以后內(nèi)存測試中就稱為存儲的過去內(nèi)存測試的結(jié)果。在步驟S305,響應(yīng)于硬件內(nèi)存測試檢測到內(nèi)存錯誤,暫停并隔離出錯的內(nèi)存設(shè)備;這時被隔離的內(nèi)存設(shè)備以后就不會被訪問,也不會被進(jìn)行軟件內(nèi)存測試。除非系統(tǒng)重新啟動后該出錯的內(nèi)存設(shè)備被更換,可以重新啟動該測試方法。BIOS模塊可以在內(nèi)部的內(nèi)存初始化模塊中使用內(nèi)存控制器隔離有錯誤的內(nèi)存設(shè)備。其中還包括一種實(shí)施方式:判斷隔離出錯的內(nèi)存設(shè)備后剩余的內(nèi)存是否足夠;響應(yīng)于沒有足夠的剩余的內(nèi)存,終止服務(wù)器的啟動流程并且通知用戶更換出錯的內(nèi)存設(shè)備(圖3未不出)。
[0061]在步驟S306,根據(jù)獲得的過去內(nèi)存測試的結(jié)果調(diào)整所述軟件內(nèi)存測試的測試循環(huán)次數(shù)以及使用的測試模式,并根據(jù)調(diào)整后的測試循環(huán)次數(shù)以及使用的測試模式執(zhí)行軟件內(nèi)存測試。軟件測試使用稀疏測試覆蓋水平,即讀寫間隔可以為IM字節(jié)(其中1M=1,000,000),因此,軟件測試的時間通常遠(yuǎn)小于硬件測試的時間。如果內(nèi)存測試發(fā)生錯誤,使用稀疏測試檢測到錯誤的概率是很高的。和硬件測試相比,軟件測試更快,因此可以測試更多的測試模式,使用更多的測試模式,而沒有明顯的服務(wù)器起動性能降低。然而,軟件測試只能檢測到錯誤的內(nèi)存地址,但是不能識別以及隔離出錯的內(nèi)存設(shè)備。假設(shè)在BIOS內(nèi)預(yù)置了 10 個測試模式,分別:0χΑΑΑΑΑΑΑΑ,0x55555555,0x5A5A5A5A,0xA5A5A5A5,0xFFFFFFFF,0x00000000,OxFOFOFOFO,OxOFOFOFOF,0x12345678,0x87654321。這里可以分為幾種情況:
[0062](I)本次硬件內(nèi)存測試沒有錯誤或者跳過了硬件內(nèi)存測試,那么本次軟件測試需要使用所有的測試模式,每個測試模式循環(huán)一次測試循環(huán)。
[0063](2)響應(yīng)于本次硬件內(nèi)存測試檢測到錯誤,假設(shè)錯誤發(fā)生在測試模式OxAAAAAAAA,則本次軟件測試會忽略測試模式OxAAAAAAAA,使用剩下的9個測試模式,每個測試模式循環(huán)一次。因?yàn)橛布y試是全部內(nèi)存都參與的,如果有發(fā)生錯誤的測試模式,就說明發(fā)生錯誤的設(shè)備已經(jīng)被隔離,沒必要再進(jìn)行一次軟件測試。這樣可以進(jìn)一步平衡內(nèi)存系統(tǒng)的可靠性和服務(wù)器的啟動效率。
[0064]本領(lǐng)域技術(shù)人員可以知道,上述的調(diào)整方式只是示例性的,具體本領(lǐng)域技術(shù)人員可以了解,有多種調(diào)整方式,并不僅僅限于上述的調(diào)整方式,只要能根據(jù)過去的測試結(jié)果,來調(diào)整本次軟件測試的測試模式和此時循環(huán)次數(shù),任何調(diào)整方法都落在本發(fā)明的保護(hù)范圍內(nèi)。
[0065]這里的軟件內(nèi)存測試跟硬件內(nèi)存測試不同,軟件內(nèi)存測試只在每條內(nèi)存的最后IMB字節(jié)做讀寫測試,這樣做的好處就是既使用了所有測試模式,又覆蓋了所有內(nèi)存條。對于一個配置了 16條4G (其中1G=1,000,000,000)字節(jié)的內(nèi)存的系統(tǒng)(一共64G字節(jié)),最多只需要測試16*1M字節(jié)*10=160M字節(jié),對于現(xiàn)在內(nèi)存帶寬達(dá)到GB/s (字節(jié)/秒)的系統(tǒng),讀寫測試160MB,只需要不到I秒的時間。
[0066]在一種實(shí)施方式中,在步驟S307,響應(yīng)于軟件內(nèi)存測試執(zhí)行完畢,記錄軟件內(nèi)存測試結(jié)果。該記錄結(jié)果在以后內(nèi)存測試中就稱為存儲的過去內(nèi)存測試的結(jié)果。在步驟S308,響應(yīng)于軟件內(nèi)存檢測發(fā)生錯誤,重新啟動該服務(wù)器的啟動流程。軟件內(nèi)存檢測發(fā)生錯誤有兩種可能的情況:第一是硬件內(nèi)存測試沒有執(zhí)行,因此,軟件測試出錯后需要重啟服務(wù)器系統(tǒng),再用出錯的測試模式重新進(jìn)行硬件內(nèi)存測試。另一種情況是:硬件內(nèi)存測試執(zhí)行了,但是沒有發(fā)現(xiàn)錯誤,可能是因?yàn)闇y試的循環(huán)次數(shù)不夠或者使用的測試模式不夠多。軟件測試出錯后,重啟服務(wù)器系統(tǒng),硬件測試相應(yīng)增減測試循環(huán)的次數(shù),并且使用該次軟件內(nèi)存測試中發(fā)現(xiàn)錯誤的測試模式。
[0067]在另一種實(shí)施方式中,該方法還包括步驟S309,響應(yīng)于軟件內(nèi)存測試沒有檢測到錯誤,并且檢測到運(yùn)行時內(nèi)存錯誤,記錄該運(yùn)行時內(nèi)存錯誤;判斷該內(nèi)存錯誤對服務(wù)器運(yùn)行是否致命;響應(yīng)于該內(nèi)存錯誤對服務(wù)器運(yùn)行是致命的,重新啟動該服務(wù)器的啟動流程。從而,新的硬件和軟件內(nèi)存測試可以基于錯誤狀態(tài)進(jìn)行調(diào)整。對于使用Xeon處理器的服務(wù)器,如果通過了硬件和軟件內(nèi)存測試,運(yùn)行到后期的上電自測或者操作系統(tǒng),發(fā)生了內(nèi)存錯誤,BIOS或者服務(wù)器管理控制器(BMC)能夠被通知到,并且處理該錯誤。類似于軟件內(nèi)存測試,如果錯誤被運(yùn)行時錯誤處理器檢測到,該處理器記錄錯誤信息,以便在下次啟動時,硬件內(nèi)存測試可以相應(yīng)增加測試的強(qiáng)度。
[0068]如果服務(wù)器通過了硬件內(nèi)存測試、軟件內(nèi)存測試、以及運(yùn)行時內(nèi)存測試,測試流程就結(jié)束了。在該發(fā)明中,對于沒有內(nèi)存錯誤的服務(wù)器系統(tǒng),可以省掉所有硬件內(nèi)存測試的時間,大多數(shù)情況下都是這樣的情形,因此可以大大提高服務(wù)器系統(tǒng)的啟動效率;對于存在內(nèi)存錯誤的系統(tǒng),所用的時間和現(xiàn)在的內(nèi)存測試設(shè)計(jì)是一樣的,因此,也沒有降低服務(wù)器系統(tǒng)的啟動效率。
[0069]在同一個發(fā)明構(gòu)思下,本發(fā)明還公開了一種使用Xeon處理器的服務(wù)器的內(nèi)存測試系統(tǒng),圖4示出了根據(jù)本發(fā)明的一個實(shí)施方式的一種使用Xeon處理器的服務(wù)器的內(nèi)存測試系統(tǒng)400的結(jié)構(gòu)框圖。根據(jù)圖4,該系統(tǒng)包括:過去內(nèi)存測試結(jié)果獲得裝置401,被配置為響應(yīng)于在所述服務(wù)器啟動過程中接收到硬件內(nèi)存測試的請求,獲得存儲的過去內(nèi)存測試的結(jié)果,其中過去內(nèi)存測試的結(jié)果至少包括在測試中使用的測試循環(huán)次數(shù),測試模式以及測試中發(fā)生的錯誤;硬件內(nèi)存測試調(diào)整裝置402,被配置為根據(jù)獲得的過去內(nèi)存測試的結(jié)果調(diào)整所述硬件內(nèi)存測試的測試循環(huán)次數(shù)以及使用的測試模式;以及硬件內(nèi)存測試執(zhí)行裝置403,被配置為根據(jù)調(diào)整后的測試循環(huán)次數(shù)以及使用的測試模式執(zhí)行硬件內(nèi)存測試。
[0070]在一種實(shí)施方式中,所述過去內(nèi)存測試結(jié)果至少包括以下之一:過去的硬件內(nèi)存測試結(jié)果,過去的軟件內(nèi)存測試結(jié)果,以及過去的運(yùn)行時內(nèi)存錯誤。
[0071]在一種實(shí)施方式中,硬件內(nèi)存測試調(diào)整裝置還被配置為:響應(yīng)于存儲的過去內(nèi)存測試的結(jié)果中沒有錯誤,將所述硬件內(nèi)存測試的測試循環(huán)次數(shù)調(diào)整為O ;響應(yīng)于所述硬件內(nèi)存測試的測試循環(huán)次數(shù)為0,所述硬件內(nèi)存測試執(zhí)行裝置被配置為不執(zhí)行硬件內(nèi)存測試。
[0072]在一種實(shí)施方式中,該系統(tǒng)還包括統(tǒng)計(jì)裝置,被配置為獲得存儲的過去內(nèi)存測試的結(jié)果中全部內(nèi)存錯誤發(fā)生的次數(shù);以及終止服務(wù)器的啟動流程裝置,被配置為響應(yīng)于所述全部內(nèi)存錯誤發(fā)生的次數(shù)大于設(shè)定的閾值,終止服務(wù)器的啟動流程(圖4未示出)。
[0073]在一種實(shí)施方式中,該系統(tǒng)還包括記錄裝置404,被配置為響應(yīng)于硬件內(nèi)存測試執(zhí)行裝置測試完畢,記錄硬件內(nèi)存測試結(jié)果。
[0074]在一種實(shí)施方式中,該系統(tǒng)還包括:隔離裝置405,被配置為響應(yīng)于硬件內(nèi)存測試執(zhí)行裝置檢測到內(nèi)存錯誤,暫停并隔離出錯的內(nèi)存設(shè)備。
[0075]在一種實(shí)施方式中,該系統(tǒng)還包括:判斷裝置,被配置為判斷隔離出錯的內(nèi)存設(shè)備后剩余的內(nèi)存是否足夠;以及終止服務(wù)器的啟動流程裝置,被配置為響應(yīng)于判斷裝置判斷沒有足夠的剩余的內(nèi)存,終止服務(wù)器的啟動流程并且通知用戶更換出錯的內(nèi)存設(shè)備(圖4未示出)。[0076]在一種實(shí)施方式中,該系統(tǒng)還包括:軟件內(nèi)存測試調(diào)整裝置406,被配置為根據(jù)獲得的過去內(nèi)存測試的結(jié)果調(diào)整軟件內(nèi)存測試的測試循環(huán)次數(shù)以及使用的測試模式;以及軟件內(nèi)存測試執(zhí)行裝置407,被配置為根據(jù)調(diào)整后的測試循環(huán)次數(shù)以及使用的測試模式執(zhí)行軟件內(nèi)存測試。
[0077]在一種實(shí)施方式中,該系統(tǒng)的記錄裝置還被配置為響應(yīng)于軟件內(nèi)存測試執(zhí)行裝置測試完畢,記錄軟件內(nèi)存測試結(jié)果。
[0078]在一種實(shí)施方式中,該系統(tǒng)還包括:重啟服務(wù)器的啟動流程裝置408,被配置為所述響應(yīng)于軟件內(nèi)存測試執(zhí)行裝置檢測到內(nèi)存錯誤,重新啟動該服務(wù)器的啟動流程。
[0079]在一種實(shí)施方式中,該系統(tǒng)還包括:運(yùn)行時內(nèi)存測試裝置409,被配置為響應(yīng)于檢測到運(yùn)行時內(nèi)存錯誤,指示所述記錄裝置記錄該運(yùn)行時內(nèi)存錯誤;以及重啟服務(wù)器的啟動流程裝置408,被配置為響應(yīng)于檢測到運(yùn)行時內(nèi)存錯誤,判斷運(yùn)行時內(nèi)存錯誤對服務(wù)器運(yùn)行是否致命,響應(yīng)于運(yùn)行時內(nèi)存錯誤對服務(wù)器運(yùn)行是致命的,重新啟動該服務(wù)器的啟動流程。
[0080]附圖中的流程圖和框圖顯示了根據(jù)本發(fā)明的多個實(shí)施例的系統(tǒng)、方法和計(jì)算機(jī)程序產(chǎn)品的可能實(shí)現(xiàn)的體系架構(gòu)、功能和操作。在這點(diǎn)上,流程圖或框圖中的每個方框可以代表一個模塊、程序段或代碼的一部分,所述模塊、程序段或代碼的一部分包含一個或多個用于實(shí)現(xiàn)規(guī)定的邏輯功能的可執(zhí)行指令。也應(yīng)當(dāng)注意,在有些作為替換的實(shí)現(xiàn)中,方框中所標(biāo)注的功能也可以以不同于附圖中所標(biāo)注的順序發(fā)生。例如,兩個連續(xù)的方框?qū)嶋H上可以基本并行地執(zhí)行,它們有時也可以按相反的順序執(zhí)行,這依所涉及的功能而定。也要注意的是,框圖和/或流程圖中的每個方框、以及框圖和/或流程圖中的方框的組合,可以用執(zhí)行規(guī)定的功能或操作的專用的基于硬件的系統(tǒng)來實(shí)現(xiàn),或者可以用專用硬件與計(jì)算機(jī)指令的組合來實(shí)現(xiàn)。
[0081]以上已經(jīng)描述了本發(fā)明的各實(shí)施例,上述說明是示例性的,并非窮盡性的,并且也不限于所披露的各實(shí)施例。在不偏離所說明的各實(shí)施例的范圍和精神的情況下,對于本【技術(shù)領(lǐng)域】的普通技術(shù)人員來說許多修改和變更都是顯而易見的。本文中所用術(shù)語的選擇,旨在最好地解釋各實(shí)施例的原理、實(shí)際應(yīng)用或?qū)κ袌鲋械募夹g(shù)的技術(shù)改進(jìn),或者使本【技術(shù)領(lǐng)域】的其它普通技術(shù)人員能理解本文披露的各實(shí)施例。
【權(quán)利要求】
1.一種使用Xeon處理器的服務(wù)器的內(nèi)存測試方法,包括: 響應(yīng)于在所述服務(wù)器啟動過程中接收到硬件內(nèi)存測試的請求,獲得存儲的過去內(nèi)存測試的結(jié)果,其中過去內(nèi)存測試的結(jié)果至少包括在測試中使用的測試循環(huán)次數(shù),測試模式以及測試中發(fā)生的錯誤; 根據(jù)獲得的過去內(nèi)存測試的結(jié)果調(diào)整所述硬件內(nèi)存測試的測試循環(huán)次數(shù)以及使用的測試模式;以及 根據(jù)調(diào)整后的測試循環(huán)次數(shù)以及使用的測試模式執(zhí)行硬件內(nèi)存測試。
2.根據(jù)權(quán)利要求1所述的方法,其中所述過去內(nèi)存測試結(jié)果至少包括以下之一:過去的硬件內(nèi)存測試結(jié)果,過去的軟件內(nèi)存測試結(jié)果,以及過去的運(yùn)行時內(nèi)存錯誤。
3.根據(jù)權(quán)利要求1或2所述的方法,其中還包括: 響應(yīng)于存儲的過去內(nèi)存測試的結(jié)果中沒有錯誤,將所述硬件內(nèi)存測試的測試循環(huán)次數(shù)調(diào)整為O ; 響應(yīng)于所述硬件內(nèi)存測試的測試循環(huán)次數(shù)為0,所述根據(jù)調(diào)整后的測試循環(huán)次數(shù)以及使用的測試模式執(zhí)行硬件內(nèi)存測試中不執(zhí)行硬件內(nèi)存測試。
4.根據(jù)權(quán)利要求1或2所述的方法,其中還包括: 獲得存儲的過去內(nèi)存測試的結(jié)果中全部內(nèi)存錯誤發(fā)生的次數(shù); 響應(yīng)于所述全部內(nèi)存錯誤 發(fā)生的次數(shù)大于設(shè)定的閾值,終止服務(wù)器的啟動流程。
5.根據(jù)權(quán)利要求1所述的方法,其中還包括: 響應(yīng)于硬件內(nèi)存測試執(zhí)行完畢,記錄硬件內(nèi)存測試結(jié)果。
6.根據(jù)權(quán)利要求5所述的方法,其中還包括: 響應(yīng)于硬件內(nèi)存測試中檢測到內(nèi)存錯誤,暫停并隔離出錯的內(nèi)存設(shè)備。
7.根據(jù)權(quán)利要求6所述的方法,其中還包括: 判斷隔離出錯的內(nèi)存設(shè)備后剩余的內(nèi)存是否足夠; 響應(yīng)于沒有足夠的剩余的內(nèi)存,終止服務(wù)器的啟動流程并且通知用戶更換出錯的內(nèi)存設(shè)備。
8.根據(jù)權(quán)利要求5或6所述的方法,其中還包括: 根據(jù)獲得的過去內(nèi)存測試的結(jié)果調(diào)整軟件內(nèi)存測試的測試循環(huán)次數(shù)以及使用的測試模式; 根據(jù)調(diào)整后的測試循環(huán)次數(shù)以及使用的測試模式執(zhí)行軟件內(nèi)存測試。
9.根據(jù)權(quán)利要求8所述的方法,其中還包括: 響應(yīng)于軟件內(nèi)存測試執(zhí)行完畢,記錄軟件內(nèi)存測試結(jié)果。
10.根據(jù)權(quán)利要求9所述的方法,其中還包括: 響應(yīng)于軟件內(nèi)存測試中檢測到內(nèi)存錯誤,重新啟動該服務(wù)器的啟動流程。
11.根據(jù)權(quán)利要求9所述的方法,其中還包括: 響應(yīng)于軟件內(nèi)存測試沒有檢測到錯誤,并且檢測到運(yùn)行時內(nèi)存錯誤,記錄該運(yùn)行時內(nèi)存錯誤; 判斷該內(nèi)存錯誤對服務(wù)器運(yùn)行是否致命; 響應(yīng)于該內(nèi)存錯誤對服務(wù)器運(yùn)行是致命的,重新啟動該服務(wù)器的啟動流程。
12.一種使用Xeon處理器的服務(wù)器的內(nèi)存測試系統(tǒng),包括:過去內(nèi)存測試結(jié)果獲得裝置,被配置為響應(yīng)于在所述服務(wù)器啟動過程中接收到硬件內(nèi)存測試的請求,獲得存儲的過去內(nèi)存測試的結(jié)果,其中過去內(nèi)存測試的結(jié)果至少包括在測試中使用的測試循環(huán)次數(shù),測試模式以及測試中發(fā)生的錯誤; 硬件內(nèi)存測試調(diào)整裝置,被配置為根據(jù)獲得的過去內(nèi)存測試的結(jié)果調(diào)整所述硬件內(nèi)存測試的測試循環(huán)次數(shù)以及使用的測試模式;以及 硬件內(nèi)存測試執(zhí)行裝置,被配置為根據(jù)調(diào)整后的測試循環(huán)次數(shù)以及使用的測試模式執(zhí)行硬件內(nèi)存測試。
13.根據(jù)權(quán)利要求12所述的系統(tǒng),其中所述過去內(nèi)存測試結(jié)果至少包括以下之一:過去的硬件內(nèi)存測試結(jié)果,過去的軟件內(nèi)存測試結(jié)果,以及過去的運(yùn)行時內(nèi)存錯誤。
14.根據(jù)權(quán)利要求12或13所述的系統(tǒng),其中硬件內(nèi)存測試調(diào)整裝置還被配置為:響應(yīng)于存儲的過去內(nèi)存測試的結(jié)果中沒有錯誤,將所述硬件內(nèi)存測試的測試循環(huán)次數(shù)調(diào)整為O ; 響應(yīng)于所述硬件內(nèi)存測試的測試循環(huán)次數(shù)為O,所述硬件內(nèi)存測試執(zhí)行裝置被配置為不執(zhí)行硬件內(nèi)存測試。
15.根據(jù)權(quán)利要求12或13所述的系統(tǒng),其中還包括: 統(tǒng)計(jì)裝置,被配置為獲得存儲的過去內(nèi)存測試的結(jié)果中全部內(nèi)存錯誤發(fā)生的次數(shù); 終止服務(wù)器的啟動流程裝置,被配置為響應(yīng)于所述全部內(nèi)存錯誤發(fā)生的次數(shù)大于設(shè)定的閾值,終止服務(wù)器的啟動流程。
16.根據(jù)權(quán)利要求12所述的系統(tǒng),其中還包括: 記錄裝置,被配置為響應(yīng)于 硬件內(nèi)存測試執(zhí)行裝置測試完畢,記錄硬件內(nèi)存測試結(jié)果。
17.根據(jù)權(quán)利要求16所述的系統(tǒng),其中還包括: 隔離裝置,被配置為響應(yīng)于硬件內(nèi)存測試執(zhí)行裝置檢測到內(nèi)存錯誤,暫停并隔離出錯的內(nèi)存設(shè)備。
18.根據(jù)權(quán)利要求17所述的系統(tǒng),其中還包括: 判斷裝置,被配置為判斷隔離出錯的內(nèi)存設(shè)備后剩余的內(nèi)存是否足夠; 終止服務(wù)器的啟動流程裝置,被配置為響應(yīng)于判斷裝置判斷沒有足夠的剩余的內(nèi)存,終止服務(wù)器的啟動流程并且通知用戶更換出錯的內(nèi)存設(shè)備。
19.根據(jù)權(quán)利要求16或17所述的系統(tǒng),其中還包括: 軟件內(nèi)存測試調(diào)整裝置,被配置為根據(jù)獲得的過去內(nèi)存測試的結(jié)果調(diào)整軟件內(nèi)存測試的測試循環(huán)次數(shù)以及使用的測試模式; 軟件內(nèi)存測試執(zhí)行裝置,被配置為根據(jù)調(diào)整后的測試循環(huán)次數(shù)以及使用的測試模式執(zhí)行軟件內(nèi)存測試。
20.根據(jù)權(quán)利要求18所述的系統(tǒng),其中記錄裝置還被配置為響應(yīng)于軟件內(nèi)存測試執(zhí)行裝置測試完畢,記錄軟件內(nèi)存測試結(jié)果。
21.根據(jù)權(quán)利要求20所述的系統(tǒng),其中還包括: 重啟服務(wù)器的啟動流程裝置,被配置為所述響應(yīng)于軟件內(nèi)存測試執(zhí)行裝置檢測到內(nèi)存錯誤,重新啟動該服務(wù)器的啟動流程。
22.根據(jù)權(quán)利要求19所述的系統(tǒng),其中還包括: 運(yùn)行時內(nèi)存測試裝置,被配置為響應(yīng)于軟件內(nèi)存測試沒有檢測到錯誤,并且檢測到運(yùn)行時內(nèi)存錯誤,指示所述記錄裝置記錄該運(yùn)行時內(nèi)存錯誤;以及 重啟服務(wù)器的啟動流程裝置,被配置為響應(yīng)于檢測到運(yùn)行時內(nèi)存錯誤,判斷運(yùn)行時內(nèi)存錯誤對服務(wù)器運(yùn)行是否致命,響應(yīng)于運(yùn)行時內(nèi)存錯誤對服務(wù)器運(yùn)行是致命的,重新啟動該服務(wù)器的啟動流程。
【文檔編號】G06F11/22GK103699463SQ201210367361
【公開日】2014年4月2日 申請日期:2012年9月28日 優(yōu)先權(quán)日:2012年9月28日
【發(fā)明者】李翔, S·考查爾, 徐超, 李海強(qiáng) 申請人:國際商業(yè)機(jī)器公司
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點(diǎn)贊!
1