專利名稱:分析從崩潰得到的數(shù)據(jù)的方法和數(shù)據(jù)處理系統(tǒng)的制作方法
技術(shù)領(lǐng)域:
本發(fā)明主要涉及一種改進(jìn)的數(shù)據(jù)處理系統(tǒng),具體來說,涉及一種數(shù)據(jù)處理的方法和裝置。更具體而言,本發(fā)明涉及一種在數(shù)據(jù)處理系統(tǒng)的崩潰之后進(jìn)行數(shù)據(jù)分析的方法、裝置和計(jì)算機(jī)指令。
背景技術(shù):
在數(shù)據(jù)處理系統(tǒng)的測試應(yīng)用和其他構(gòu)件中,測試和調(diào)試階段過程中的系統(tǒng)崩潰并不少見。系統(tǒng)崩潰發(fā)生在出現(xiàn)故障或錯(cuò)誤而操作系統(tǒng)無法從中恢復(fù)時(shí)。軟件或硬件都可能導(dǎo)致系統(tǒng)崩潰。系統(tǒng)崩潰意味著數(shù)據(jù)處理系統(tǒng)無法工作,并可能引起硬件故障或者嚴(yán)重的軟件錯(cuò)誤或者瑕疵。瑕疵是導(dǎo)致數(shù)據(jù)處理系統(tǒng)或軟件故障的軟件或硬件中的錯(cuò)誤或缺陷。
在系統(tǒng)崩潰之后,一般會(huì)收集數(shù)據(jù),用于在不同的系統(tǒng)或重啟后的當(dāng)前系統(tǒng)上進(jìn)行分析。
在系統(tǒng)崩潰之后的數(shù)據(jù)分析一般在不同的數(shù)據(jù)處理系統(tǒng)上進(jìn)行。崩潰的數(shù)據(jù)一般通過OS轉(zhuǎn)儲(dump)收集到磁帶或磁盤存儲器或者外部業(yè)務(wù)處理器,或者通過某種其它類型的外部分析器收集。收集數(shù)據(jù)進(jìn)行遠(yuǎn)程分析有多種好處。例如,在某些情況下,數(shù)據(jù)處理系統(tǒng)可以返回繼續(xù)工作,而數(shù)據(jù)分析則同時(shí)進(jìn)行。此外,崩潰數(shù)據(jù)可以在生產(chǎn)環(huán)境中收集,發(fā)送給專家進(jìn)行分析。
但是,也存在著一些限制。對跟蹤數(shù)據(jù)保存的一種限制是跟蹤數(shù)據(jù)的大小。跟蹤數(shù)據(jù)是由硬件監(jiān)控器或者軟件監(jiān)控器收集的數(shù)據(jù)。這些監(jiān)控器記錄一系列情況或數(shù)據(jù),以生成跟蹤數(shù)據(jù)。例如,監(jiān)控器可以記錄跟蹤的程序流,監(jiān)控器也可以跟蹤記錄程序所處理的數(shù)據(jù)序列,或者可以是數(shù)據(jù)處理系統(tǒng)的構(gòu)件之間傳送的數(shù)據(jù)。收集的跟蹤數(shù)據(jù)的大小一般受限于可用資源,例如磁帶或磁盤的容量,或者可以是業(yè)務(wù)部件的存儲及其卸載能力。此外,卸載跟蹤數(shù)據(jù)的時(shí)間與跟蹤數(shù)據(jù)的大小以及卸載接口的帶寬成正比。
與業(yè)務(wù)部件維護(hù)的數(shù)據(jù)處理系統(tǒng)相比,業(yè)務(wù)部件一般是相對較慢且所支持的帶寬較低的處理器。此外,業(yè)務(wù)處理器必須相對簡單,能夠自己進(jìn)行初始化。這種類型的處理器被定制為具有初始化數(shù)據(jù)處理系統(tǒng)以及在數(shù)據(jù)處理系統(tǒng)運(yùn)行時(shí)進(jìn)行監(jiān)控的能力。由于具有數(shù)據(jù)處理系統(tǒng)中的所有部件,為了節(jié)省成本,業(yè)務(wù)處理器的大小只考慮了它基本的初始化和監(jiān)控任務(wù)。
業(yè)務(wù)部件的帶寬、處理和存儲資源一般都很有限。這種限制在某些問題上成為一個(gè)主要的障礙。
業(yè)務(wù)部件不是收集數(shù)據(jù)的唯一方法。操作系統(tǒng)可以將系統(tǒng)轉(zhuǎn)儲傳送到磁盤或磁帶。
一個(gè)例子是分析系統(tǒng)存儲器中收集的跟蹤數(shù)據(jù)。需要幾千兆字節(jié)或更大的跟蹤數(shù)據(jù)的情況并不少見。因此,將這么大量的跟蹤數(shù)據(jù)發(fā)送到某個(gè)介質(zhì),例如硬盤或其它存儲設(shè)備,用于在另一數(shù)據(jù)處理系統(tǒng)上進(jìn)行分析,這不僅需要很多時(shí)間,而且減慢了測試和調(diào)試進(jìn)度。很多時(shí)候,跟蹤數(shù)據(jù)被轉(zhuǎn)移到另一數(shù)據(jù)處理系統(tǒng),因?yàn)榕c收集跟蹤數(shù)據(jù)的操作環(huán)境相比,該數(shù)據(jù)處理系統(tǒng)上的操作環(huán)境更適于分析跟蹤數(shù)據(jù)。
業(yè)務(wù)部件可以有多種方式收集跟蹤數(shù)據(jù)。業(yè)務(wù)部件可以通過JTAG訪問存儲器和芯片數(shù)據(jù)。這種方法適用于很多類型的崩潰,但非常慢。第二種方法是將業(yè)務(wù)處理器DMA數(shù)據(jù)從主系統(tǒng)存儲器轉(zhuǎn)移到它的本地存儲器。這種方法要快得多,但需要系統(tǒng)的大部分都可以操作,當(dāng)然,業(yè)務(wù)部件必須有資源來存儲或卸載數(shù)據(jù)。
目前,數(shù)十兆字節(jié)的數(shù)據(jù)的傳送和進(jìn)行普通的格式化需要幾小時(shí)。一些情況下,在收集過程中篩選數(shù)據(jù),以減少收集的數(shù)據(jù)量?;蛘?,有時(shí)只收集部分跟蹤數(shù)據(jù)進(jìn)行分析。這些方案導(dǎo)致分析過程中遺失可能有用的數(shù)據(jù)。
因此,需要有一種改進(jìn)的方法、裝置和計(jì)算機(jī)指令來分析系統(tǒng)崩潰后的數(shù)據(jù)。
發(fā)明內(nèi)容
本發(fā)明提供了一種方法、裝置和計(jì)算機(jī)指令來對數(shù)據(jù)處理系統(tǒng)發(fā)生崩潰后的數(shù)據(jù)進(jìn)行分析。針對數(shù)據(jù)處理系統(tǒng)出現(xiàn)的崩潰,保留數(shù)據(jù)處理系統(tǒng)中的一部分存儲器。在剩余存儲器中,以適于分析存儲器保留部分中跟蹤數(shù)據(jù)的環(huán)境,重啟數(shù)據(jù)處理系統(tǒng)。
根據(jù)本發(fā)明的一個(gè)方面,提供一種數(shù)據(jù)處理系統(tǒng)中用于對從所述數(shù)據(jù)處理系統(tǒng)的崩潰得到的數(shù)據(jù)進(jìn)行分析的方法,該方法包括響應(yīng)于所述數(shù)據(jù)處理系統(tǒng)的所述崩潰,保留所述數(shù)據(jù)處理系統(tǒng)中的部分存儲器;以及以適于分析所述部分存儲器中的數(shù)據(jù)的環(huán)境,重啟所述數(shù)據(jù)處理系統(tǒng)。
根據(jù)本發(fā)明的另一個(gè)方面,提供一種用于對從數(shù)據(jù)處理系統(tǒng)的崩潰得到的數(shù)據(jù)進(jìn)行分析的數(shù)據(jù)處理系統(tǒng),該數(shù)據(jù)處理系統(tǒng)包括總線系統(tǒng);連接到所述總線系統(tǒng)的通信單元;連接到所述總線系統(tǒng)的存儲器,其中所述存儲器包括一組指令;以及連接到所述總線系統(tǒng)的處理單元,其中響應(yīng)于所述數(shù)據(jù)處理系統(tǒng)的所述崩潰,所述處理單元執(zhí)行所述的一組指令,以保留所述數(shù)據(jù)處理系統(tǒng)中的部分存儲器,并以適于分析所述部分存儲器中數(shù)據(jù)的環(huán)境重啟該數(shù)據(jù)處理系統(tǒng)。
根據(jù)本發(fā)明的再一個(gè)方面,提供一種用于對從數(shù)據(jù)處理系統(tǒng)的崩潰得到的數(shù)據(jù)進(jìn)行分析的數(shù)據(jù)處理系統(tǒng),該數(shù)據(jù)處理系統(tǒng)包括保留裝置,用于響應(yīng)于所述數(shù)據(jù)處理系統(tǒng)的所述崩潰,保留所述數(shù)據(jù)處理系統(tǒng)中的部分存儲器;以及重啟裝置,用于以適于分析所述部分存儲器中的跟蹤數(shù)據(jù)的環(huán)境,重啟所述數(shù)據(jù)處理系統(tǒng)。
根據(jù)本發(fā)明的再一個(gè)方面,提供一種用于對從數(shù)據(jù)處理系統(tǒng)的崩潰得到的數(shù)據(jù)進(jìn)行分析的的計(jì)算機(jī)可讀介質(zhì)中的計(jì)算機(jī)程序產(chǎn)品,該計(jì)算機(jī)程序產(chǎn)品包括第一指令集,用于響應(yīng)于所述數(shù)據(jù)處理系統(tǒng)的所述崩潰,保留所述數(shù)據(jù)處理系統(tǒng)中的部分存儲器;以及第二指令集,用于以適于分析所述部分存儲器中的數(shù)據(jù)的環(huán)境,重啟所述數(shù)據(jù)處理系統(tǒng)。
所附權(quán)利要求書提出了本發(fā)明特有的新屬性。但是,本發(fā)明本身以及優(yōu)選的使用模式,還有它們的目的和優(yōu)點(diǎn),都將參考后面結(jié)合附圖閱讀的說明性實(shí)施方式的詳細(xì)描述,被很好地理解。
圖1是可以按照本發(fā)明的一種優(yōu)選實(shí)施方式實(shí)現(xiàn)本發(fā)明的數(shù)據(jù)處理系統(tǒng)的圖形表示;圖2是可以實(shí)現(xiàn)本發(fā)明的數(shù)據(jù)處理系統(tǒng)的框圖;圖3是可以實(shí)現(xiàn)本發(fā)明的另一數(shù)據(jù)處理系統(tǒng)的框圖;圖4示出按照本發(fā)明的一種優(yōu)選實(shí)施方式,分析跟蹤數(shù)據(jù)所用的部件的圖;圖5示出按照本發(fā)明的一種優(yōu)選實(shí)施方式保留跟蹤數(shù)據(jù)的圖;圖6是按照本發(fā)明的一種優(yōu)選實(shí)施方式,提供崩潰后分析環(huán)境的處理的流程圖;圖7是按照本發(fā)明的一種優(yōu)選實(shí)施方式,提供分析跟蹤數(shù)據(jù)的環(huán)境的處理的流程圖;圖8是按照本發(fā)明的一種優(yōu)選實(shí)施方式,設(shè)置存儲器以保留跟蹤數(shù)據(jù)的處理的流程圖;以及圖9是按照本發(fā)明的一種優(yōu)選實(shí)施方式,存儲跟蹤數(shù)據(jù)的處理的流程圖。
具體實(shí)施例方式
現(xiàn)在參看附圖,特別參看圖1,示出了按照本發(fā)明的一種優(yōu)選實(shí)施方式實(shí)現(xiàn)本發(fā)明的數(shù)據(jù)處理系統(tǒng)的圖形表示。示出的計(jì)算機(jī)100包括系統(tǒng)單元102、視頻顯示終端104、鍵盤106、存儲設(shè)備108以及鼠標(biāo)110,存儲設(shè)備108可以包括軟盤或者其它類型的永久或可移動(dòng)存儲介質(zhì)。個(gè)人計(jì)算機(jī)100可以包括附加輸入設(shè)備,例如操縱桿、觸摸板、觸摸屏、跟蹤球、麥克風(fēng)以及類似設(shè)備。計(jì)算機(jī)100可以利用任何適當(dāng)?shù)挠?jì)算機(jī)來實(shí)現(xiàn),例如IBM eServer計(jì)算機(jī)或者IntelliStation計(jì)算機(jī),它們是位于紐約Armonk的國際商業(yè)機(jī)器公司的產(chǎn)品。盡管該圖中示出了一臺計(jì)算機(jī),然而本發(fā)明的其它實(shí)施方式可以在其它類型的數(shù)據(jù)處理系統(tǒng)中實(shí)現(xiàn),例如網(wǎng)絡(luò)計(jì)算機(jī)。計(jì)算機(jī)100優(yōu)選地還包括圖形用戶接口(GUI),該接口可以通過工作于計(jì)算機(jī)100中的計(jì)算機(jī)可讀介質(zhì)中駐留的系統(tǒng)軟件來實(shí)現(xiàn)。
現(xiàn)在參看圖2,示出了可以實(shí)現(xiàn)本發(fā)明的數(shù)據(jù)處理系統(tǒng)的框圖。數(shù)據(jù)處理系統(tǒng)200是計(jì)算機(jī),例如圖1中計(jì)算機(jī)100的一個(gè)例子,其中可以裝入實(shí)現(xiàn)了本發(fā)明的處理的代碼或指令。數(shù)據(jù)處理系統(tǒng)200采用外設(shè)互連(PCI)本地總線體系結(jié)構(gòu)。盡管示出的例子采用了PCI總線,也可以采用其它總線體系結(jié)構(gòu),例如加速圖形端口(AGP)和工業(yè)標(biāo)準(zhǔn)體系結(jié)構(gòu)(ISA)。處理器202和主存儲器204通過PCI橋208連接到PCI本地總線206。PCI橋208還可以包括用于處理器202的集成的存儲控制器和緩存。通過直接部件互連或者通過一個(gè)內(nèi)插連接器,可以實(shí)現(xiàn)到PCI本地總線206的附加連接。在示出的例子中,局域網(wǎng)(LAN)適配器210、小計(jì)算機(jī)系統(tǒng)接口(SCSI)主機(jī)總線適配器212以及擴(kuò)展總線接口214通過直接部件連接被連接到PCI本地總線206。與此相比,音頻適配器216、圖形適配器218以及音頻/視頻適配器219通過插入擴(kuò)展槽的內(nèi)插板,連接到PCI本地總線206。擴(kuò)展總線接口214提供了用于鍵盤和鼠標(biāo)適配器220、調(diào)制解調(diào)器222和附加存儲器224的連接。SCSI主機(jī)總線適配器212為硬盤驅(qū)動(dòng)器226、磁帶驅(qū)動(dòng)器228和CD-ROM驅(qū)動(dòng)器230提供了連接。典型的PCI本地總線實(shí)現(xiàn)能支持3個(gè)或4個(gè)PCI擴(kuò)展槽或內(nèi)插連接器。
操作系統(tǒng)在處理器202上運(yùn)行,用于協(xié)調(diào)和控制圖2的數(shù)據(jù)處理系統(tǒng)200的各個(gè)部件。該操作系統(tǒng)可以是商用的操作系統(tǒng),例如是可以從微軟公司得到的視窗XP。面向?qū)ο蟮木幊滔到y(tǒng),例如Java可以運(yùn)行于該操作系統(tǒng)之上,并根據(jù)數(shù)據(jù)處理系統(tǒng)200上運(yùn)行的Java程序或應(yīng)用,提供到操作系統(tǒng)的調(diào)用?!癑ava”是Sun微系統(tǒng)公司的商標(biāo)。操作系統(tǒng)指令、面向?qū)ο蟮木幊滔到y(tǒng)以及應(yīng)用或程序位于存儲設(shè)備——例如硬盤驅(qū)動(dòng)器226上,可以裝入主存儲器204,由處理器202執(zhí)行。
本領(lǐng)域一般技術(shù)人員能理解,圖2的硬件可以取決于實(shí)施情況而變化。除了圖2示出的硬件之外,也可以使用其它內(nèi)部硬件或外部設(shè)備,例如快閃只讀存儲器(ROM)、等同的非易失性存儲器或者光盤驅(qū)動(dòng)器和類似設(shè)備,也可以用這些設(shè)備取代圖2的硬件。此外,本發(fā)明的處理可以應(yīng)用于多處理器數(shù)據(jù)處理系統(tǒng)。
例如,數(shù)據(jù)處理系統(tǒng)200如果可選地配制成網(wǎng)絡(luò)計(jì)算機(jī),可以不包括SCSI主機(jī)總線適配器212、硬盤驅(qū)動(dòng)器226、磁帶驅(qū)動(dòng)器228和CD-ROM 230。在這種情況下,計(jì)算機(jī)——準(zhǔn)確地說是客戶端計(jì)算機(jī)包括某種類型的網(wǎng)絡(luò)通信接口,例如LAN適配器210、調(diào)制解調(diào)器222或類似接口。另一個(gè)例子是,數(shù)據(jù)處理系統(tǒng)200可以是一個(gè)獨(dú)立系統(tǒng),它被配置為不管該系統(tǒng)是否包含某種類型的網(wǎng)絡(luò)通信接口它都能夠重啟,而不依賴于某種類型的網(wǎng)絡(luò)通信接口。另一個(gè)例子是,數(shù)據(jù)處理系統(tǒng)200可以是個(gè)人數(shù)字助理(PDA),它配備有ROM和/或快閃ROM,為存儲操作系統(tǒng)文件和/或用戶生成的數(shù)據(jù)提供非易失性存儲器。
圖2示出的例子以及前面描述的例子并不是為了提出體系結(jié)構(gòu)方面的限制。例如,數(shù)據(jù)處理系統(tǒng)200除了可以采用PDA形式之外,也可以是筆記本計(jì)算機(jī)或者手持計(jì)算機(jī)。數(shù)據(jù)處理系統(tǒng)200也可以是公共資訊站或者因特網(wǎng)終端。
本發(fā)明的處理由處理器202利用計(jì)算機(jī)實(shí)現(xiàn)的指令來執(zhí)行,指令可以位于存儲器中,例如主存儲器204、存儲器224或者位于一個(gè)或多個(gè)外部設(shè)備226-230中。
下面,圖3的框圖示出了可以實(shí)現(xiàn)本發(fā)明的另一數(shù)據(jù)處理系統(tǒng)。數(shù)據(jù)處理系統(tǒng)300可以是一個(gè)對稱多處理器(SMP)系統(tǒng),包括連接到系統(tǒng)總線306的多個(gè)處理器301、302、303和304。例如,數(shù)據(jù)處理系統(tǒng)300可以是作為網(wǎng)絡(luò)中服務(wù)器實(shí)現(xiàn)的IBM eServer,它是位于紐約Armonk的國際商業(yè)機(jī)器公司的產(chǎn)品?;蛘撸部梢圆捎脝翁幚砥飨到y(tǒng)。連接到系統(tǒng)總線306的還有存儲控制器/緩存308,它提供了到多個(gè)本地存儲器360-363的接口。I/O總線橋310連接到系統(tǒng)總線306,并提供到I/O總線312的接口。存儲控制器/緩存308和I/O總線橋310可以按照所示那樣集成。
在該例中,數(shù)據(jù)處理系統(tǒng)300是邏輯分區(qū)(LPAR)數(shù)據(jù)處理系統(tǒng)。因此,數(shù)據(jù)處理系統(tǒng)300可以有多個(gè)同時(shí)運(yùn)行的異構(gòu)操作系統(tǒng)(或者單操作系統(tǒng)的多個(gè)實(shí)例)。這些多個(gè)操作系統(tǒng)的每一個(gè)都可以運(yùn)行有任意數(shù)量的軟件程序。數(shù)據(jù)處理系統(tǒng)300是邏輯分區(qū)的,使得不同的PCI I/O適配器320-321、328-329和336、圖形適配器348和硬盤適配器349可以被指派給不同的邏輯分區(qū)。這種情況下,圖形適配器348為顯示設(shè)備(未示出)提供連接,而硬盤適配器349提供連接來控制硬盤350。
這樣,例如,假定數(shù)據(jù)處理系統(tǒng)300被劃分成3個(gè)邏輯分區(qū)P1、P2和P3。每個(gè)PCI I/O適配器320-321、328-329和336、圖形適配器348、硬盤適配器349、每個(gè)主處理器301-304和來自本地存儲器360-363的存儲器被指派給這三個(gè)分區(qū)中的每一個(gè)。這些例子中,存儲器360-363可以是雙列直插存儲器模塊(DIMM)的形式。DIMM一般不是以單個(gè)DIMM的形式被指派給分區(qū)。而是分區(qū)可以得到平臺所能看到的所有存儲器的一部分。例如,處理器301、本地存儲器360-363中的一部分存儲器和I/O適配器320、328和329可以被指派給邏輯分區(qū)P1;處理器302-303、本地存儲器360-363中的一部分存儲器和PCI I/O適配器321和326可以被指派給邏輯分區(qū)P2;處理器304、本地存儲器360-363中的一部分存儲器、圖形適配器348和硬盤適配器349可以被指派給邏輯分區(qū)P3。
運(yùn)行在數(shù)據(jù)處理系統(tǒng)300內(nèi)的每個(gè)操作系統(tǒng)被指派給不同的邏輯分區(qū)。這樣,運(yùn)行在數(shù)據(jù)處理系統(tǒng)300內(nèi)的每個(gè)操作系統(tǒng)只能夠訪問在其邏輯分區(qū)內(nèi)的那些I/O單元。因此,例如高級交互執(zhí)行(AIX)操作系統(tǒng)的一個(gè)實(shí)例可以在分區(qū)P1內(nèi)執(zhí)行,AIX操作系統(tǒng)的第二實(shí)例(圖像)可以在分區(qū)P2內(nèi)執(zhí)行,而Linux或OS/400操作系統(tǒng)可以在邏輯分區(qū)P3內(nèi)運(yùn)行。
連接到I/O總線312的外設(shè)互連(PCI)主橋314提供了到PCI本地總線315的接口。多個(gè)PCI輸入/輸出適配器320-321可以通過PCI到PCI橋316、PCI總線318、PCI總線319、I/O槽370和I/O槽371連接到PCI總線315。PCI到PCI橋316提供了到PCI總線318和PCI總線119的接口。PCI I/O適配器320和321分別放置于I/O槽370和371中。典型的PCI總線實(shí)現(xiàn)能支持4個(gè)到8個(gè)I/O適配器(也就是內(nèi)插連接器的擴(kuò)展槽)。每個(gè)PCI I/O適配器320-321提供了數(shù)據(jù)處理系統(tǒng)300和輸入/輸出設(shè)備之間的接口,輸入/輸出設(shè)備例如是作為數(shù)據(jù)處理系統(tǒng)300的客戶端的其它網(wǎng)絡(luò)計(jì)算機(jī)。
附加的PCI主機(jī)橋322為附加PCI總線323提供了接口。PCI總線323連接到多個(gè)PCI I/O適配器328-329。PCI I/O適配器328-329可以通過PCI到PCI橋324、PCI總線326、PCI總線327、I/O槽372以及I/O槽373連接到PCI總線323。PCI到PCI橋324提供了到PCI總線326和PCI總線327的接口。PCI I/O適配器328和329分別放置在I/O槽372和373中。通過這種方式,附加I/O設(shè)備——例如調(diào)制解調(diào)器或網(wǎng)絡(luò)適配器可以通過每個(gè)PCI I/O適配器328-329來支持。通過這種方式,數(shù)據(jù)處理系統(tǒng)300允許連接到多個(gè)網(wǎng)絡(luò)計(jì)算機(jī)。
與插入I/O槽374的圖形適配器348對應(yīng)的存儲器可以通過PCI總線344、PCI到PCI橋342、PCI總線341和PCI主機(jī)橋340連接到I/O總線312。硬盤適配器349可以放置于連接到PCI總線345的I/O槽375。PCI總線345連接到PCI到PCI橋342,該橋通過PCI總線341連接到PCI主機(jī)橋340。
PCI主機(jī)橋330為PCI總線331提供了連接到I/O總線312的接口。PCI I/O適配器336連接到I/O槽376,該槽通過PCI總線333連接到PCI到PCI橋332。PCI到PCI橋332連接到PCI總線331。該P(yáng)CI總線還將PCI主機(jī)橋330連接到業(yè)務(wù)處理器信箱接口和ISA總線訪問通過邏輯394以及PCI到PCI橋332。業(yè)務(wù)處理器信箱接口和ISA總線訪問通過邏輯394轉(zhuǎn)發(fā)通往PCI/ISA橋393的PCI訪問。NVRAM存儲器392連接到ISA總線396。業(yè)務(wù)處理器335通過其本地PCI總線395連接到業(yè)務(wù)處理器信箱接口和ISA總線訪問通過邏輯394。業(yè)務(wù)處理器335還通過多個(gè)JTAG/I2C總線334連接到處理器301-304。JTAG/I2C總線334是JTAG/掃描總線(參見IEEE 1149.1)和飛利浦I2C總線的組合。但是,JTAG/I2C總線334可以替換成只有飛利浦I2C總線,或者只有JTAG/掃描總線。所有主處理器301、302、303和304的SP-ATTN信號一起連接到業(yè)務(wù)處理器的中斷輸入信號。業(yè)務(wù)處理器335有它自己的本地存儲器391,并能夠訪問硬件OP面板390。
當(dāng)數(shù)據(jù)處理系統(tǒng)300最初啟動(dòng)時(shí),業(yè)務(wù)處理器335利用JTAG/I2C總線334來詢問系統(tǒng)(主機(jī))處理器301-304、存儲控制器/緩存308和I/O總線橋310。在完成該步驟之后,業(yè)務(wù)處理器335對數(shù)據(jù)處理系統(tǒng)300有了存量和拓?fù)涞睦斫狻I(yè)務(wù)處理器335還對通過詢問主機(jī)處理器301-304、存儲控制器/緩存308和I/O總線橋310發(fā)現(xiàn)的所有部件執(zhí)行內(nèi)置自測試(BIST)、基本保障測試(BAT)和存儲測試。業(yè)務(wù)處理器335收集并報(bào)告在BIST、BAT和存儲測試中檢測到的故障的所有差錯(cuò)信息。
如果在移去BIST、BAT和存儲測試中發(fā)現(xiàn)的故障部件之后,仍然可以進(jìn)行系統(tǒng)資源有意義/有效的配置,那么允許數(shù)據(jù)處理系統(tǒng)300繼續(xù)向本地(主機(jī))存儲器360-363裝入可執(zhí)行代碼。業(yè)務(wù)處理器335隨后釋放主機(jī)處理器301-304,用于執(zhí)行本地存儲器360-363中裝入的代碼。在主機(jī)處理器301-304執(zhí)行來自數(shù)據(jù)處理系統(tǒng)300的各個(gè)操作系統(tǒng)中的代碼時(shí),業(yè)務(wù)處理器335進(jìn)入監(jiān)控和差錯(cuò)報(bào)告模式。業(yè)務(wù)處理器335所監(jiān)控的項(xiàng)的類型包括,例如冷卻風(fēng)扇速度和操作、熱傳感器和電源調(diào)整器,以及處理器301-304、本地存儲器360-363和I/O總線橋310所報(bào)告的可恢復(fù)和不可恢復(fù)差錯(cuò)。
業(yè)務(wù)處理器335負(fù)責(zé)存儲和報(bào)告與數(shù)據(jù)處理系統(tǒng)300中所有監(jiān)控項(xiàng)相關(guān)的差錯(cuò)信息。業(yè)務(wù)處理器335還基于差錯(cuò)類型和定義的閾值來采取相應(yīng)行動(dòng)。例如,業(yè)務(wù)處理器335可能注意到處理器緩存中可恢復(fù)差錯(cuò)過多,并確定這是重大故障的前兆。基于這種判斷,業(yè)務(wù)處理器335可能對該資源進(jìn)行標(biāo)記,用于在當(dāng)前正在運(yùn)行的會(huì)話和將來初始程序裝入(IPL)的過程中退出配置。
數(shù)據(jù)處理系統(tǒng)300可以利用各種商用計(jì)算機(jī)系統(tǒng)來實(shí)現(xiàn)。例如,數(shù)據(jù)處理系統(tǒng)300可以采用國際商業(yè)機(jī)器公司的IBM eServer iSeries模型840系統(tǒng)來實(shí)現(xiàn)。這種系統(tǒng)可以利用OS/400操作系統(tǒng)來支持邏輯分區(qū),OS/400操作系統(tǒng)也可從國際商業(yè)機(jī)器公司得到。
本領(lǐng)域一般技術(shù)人員能夠理解,圖3中的硬件可以有所變化。例如,除了所示硬件,也可以采用其它外設(shè),例如光盤驅(qū)動(dòng)器和類似設(shè)備,或者用其它外設(shè)來取代所示硬件。所示例子并不意味著提出針對本發(fā)明的體系結(jié)構(gòu)的限制。
本發(fā)明為可重啟的后崩潰分析環(huán)境提供了一種方法、裝置和計(jì)算機(jī)指令。本發(fā)明的機(jī)制提供了數(shù)據(jù)處理系統(tǒng)中進(jìn)行分析所需的處理和帶寬資源。發(fā)生崩潰的同一數(shù)據(jù)處理系統(tǒng)用于完成這種分析。
本發(fā)明的機(jī)制通過利用數(shù)據(jù)處理系統(tǒng)中的存儲器保留功能,保留待進(jìn)行分析的存儲器的那些部分,從而能夠?qū)⒏檾?shù)據(jù)保留在存儲器中。然后數(shù)據(jù)處理系統(tǒng)利用數(shù)據(jù)處理系統(tǒng)中剩余的存儲器,以適于分析跟蹤數(shù)據(jù)的環(huán)境重啟。通過這種方式,能夠得到較大量的處理能力和帶寬資源。使用這種機(jī)制,對超過100千兆字節(jié)的跟蹤數(shù)據(jù)的交互查詢只需要幾分鐘,而不是幾小時(shí)。這種機(jī)制還無需在收集和/或預(yù)選需要分析的部分跟蹤數(shù)據(jù)的過程中對跟蹤數(shù)據(jù)進(jìn)行嚴(yán)格的篩選。
下面參看圖4,該圖示出了按照本發(fā)明的一種優(yōu)選實(shí)施方式,分析跟蹤數(shù)據(jù)所用的部件。操作系統(tǒng)400用于程序402的測試階段。跟蹤數(shù)據(jù)404在程序402執(zhí)行過程中被收集并存儲。如果數(shù)據(jù)處理系統(tǒng)發(fā)生了崩潰,當(dāng)數(shù)據(jù)處理系統(tǒng)重啟時(shí),跟蹤數(shù)據(jù)404被保留在存儲器中。
在這些說明性的例子中,跟蹤數(shù)據(jù)所在的存儲器被設(shè)置進(jìn)入自定時(shí)刷新狀態(tài)。更為確切地講,動(dòng)態(tài)隨機(jī)訪問存儲器(DRAM)被置于這樣一種狀態(tài),其中DRAM負(fù)責(zé)保留其內(nèi)容,而不需要來自存儲控制器的明確指令。數(shù)據(jù)處理系統(tǒng)以操作系統(tǒng)406代替操作系統(tǒng)400重啟。操作系統(tǒng)406用于提供一種更適于分析程序408分析跟蹤數(shù)據(jù)的環(huán)境。
Linux是可用于進(jìn)行分析的操作系統(tǒng)的一個(gè)例子?;蛘呖梢圆捎萌魏螒?yīng)用,只要該應(yīng)用適合所要進(jìn)行的調(diào)試的需要。此外,并不需要使用完全的操作系統(tǒng)(OS)??梢圆捎萌魏握{(diào)試環(huán)境或者特定代碼。調(diào)試工具可以設(shè)計(jì)成利用多個(gè)處理器進(jìn)行搜索并篩選該存儲器,其中多個(gè)處理器用于并行搜索跟蹤數(shù)據(jù)的不同范圍,以發(fā)現(xiàn)選定的模式。
現(xiàn)在參看圖5,其按照本發(fā)明的一種優(yōu)選實(shí)施方式示出跟蹤數(shù)據(jù)的保留。在該例中,跟蹤數(shù)據(jù)500位于存儲器502中。如果發(fā)生崩潰,跟蹤數(shù)據(jù)500所在的存儲器502的部分被設(shè)置進(jìn)入自定時(shí)刷新狀態(tài),以保留該數(shù)據(jù)。在這些例子中,啟動(dòng)處理504設(shè)置存儲器502進(jìn)入該狀態(tài)。存儲器502也可以由業(yè)務(wù)控制器設(shè)置進(jìn)入該狀態(tài)。這樣,存儲器502保留跟蹤數(shù)據(jù)500。數(shù)據(jù)的保留可以通過存儲控制器506的接口,例如聯(lián)合測試行動(dòng)組(JTAG)接口來設(shè)置。
現(xiàn)在參看圖6,示出按照本發(fā)明的一種優(yōu)選實(shí)施方式提供后崩潰分析環(huán)境的處理的流程圖。圖6所示處理可以在數(shù)據(jù)處理系統(tǒng),例如圖2的數(shù)據(jù)處理系統(tǒng)200中實(shí)現(xiàn)。具體來說,該處理可以被設(shè)置進(jìn)入啟動(dòng)處理,例如圖5的啟動(dòng)處理504。
該處理開始于識別包含了跟蹤數(shù)據(jù)的存儲器(步驟600)。這種識別可以在跟蹤數(shù)據(jù)被存儲在存儲器中,并將跟蹤數(shù)據(jù)存入存儲器中的識別位置之前進(jìn)行。通過這種方式,執(zhí)行程序或處理產(chǎn)生的跟蹤數(shù)據(jù)可以存儲在存儲器中。之后,初始化并清除沒有跟蹤數(shù)據(jù)的存儲器(步驟602)。裝入分析跟蹤數(shù)據(jù)的操作系統(tǒng)(步驟604)。然后啟動(dòng)跟蹤數(shù)據(jù)的分析(步驟606),處理隨后終止。
接下來參看圖7,示出按照本發(fā)明的一種優(yōu)選實(shí)施方式提供分析跟蹤數(shù)據(jù)的環(huán)境的處理的流程圖。圖7所示處理可以在數(shù)據(jù)處理系統(tǒng),例如圖3的數(shù)據(jù)處理系統(tǒng)300中實(shí)現(xiàn)。該數(shù)據(jù)處理系統(tǒng)可以運(yùn)行啟動(dòng)處理,例如圖5的啟動(dòng)處理504。
該處理開始于檢測需要分析跟蹤數(shù)據(jù)的情況(步驟700)。作為檢測到該情況的響應(yīng),從產(chǎn)生跟蹤數(shù)據(jù)的原始分區(qū)中移走存有跟蹤數(shù)據(jù)的存儲器(步驟702)。通過從原始分區(qū)列表中移走包含跟蹤數(shù)據(jù)的地址來移走該存儲器。該存儲器被指派給新的分區(qū)(步驟704)。通過在新分區(qū)中增加包含跟蹤數(shù)據(jù)的地址范圍來將存儲器指派給新的分區(qū)。之后,在新分區(qū)中啟動(dòng)跟蹤數(shù)據(jù)的分析(步驟706),處理隨后終止。
接下來參看圖8,示出了按照本發(fā)明的一種優(yōu)選實(shí)施方式,設(shè)置保留跟蹤數(shù)據(jù)的存儲器的處理的流程圖。圖8中給出的處理可以在各種部件——例如業(yè)務(wù)控制器中實(shí)現(xiàn)或在啟動(dòng)代碼中實(shí)現(xiàn)。啟動(dòng)代碼中實(shí)現(xiàn)的步驟可以在圖5的啟動(dòng)處理504中實(shí)現(xiàn)。
該處理開始于初始化存儲控制器(步驟800)。隨后初始化DRAM(步驟802)。初始化DRAM以實(shí)現(xiàn)啟動(dòng),包括設(shè)置SDRAM模式寄存器和設(shè)置緩存行大小。此外,在啟動(dòng)DRAM的步驟中,進(jìn)行存儲組預(yù)加電,并且以特定的有規(guī)律的間隔啟動(dòng)存儲器更新。隨后清除并初始化存儲器(步驟804)。之后進(jìn)行診斷存儲器測試(步驟806)。該步驟是這些例子中的可選步驟。步驟800到808可以由業(yè)務(wù)控制器或啟動(dòng)代碼來執(zhí)行。業(yè)務(wù)控制器是例如數(shù)據(jù)處理系統(tǒng)之外的業(yè)務(wù)處理器。
接著,初始化I/O子系統(tǒng)(步驟808)。隨后裝入操作系統(tǒng)(步驟810)。然后開始操作系統(tǒng)的執(zhí)行(步驟812)。隨后得到資源列表并初始化資源列表(步驟814)。該資源列表包括例如I/O資源和有效存儲范圍。此外,本發(fā)明的機(jī)制包括新的資源列表,例如指定在程序執(zhí)行過程中保留跟蹤數(shù)據(jù)的存儲器組。之后,調(diào)用一個(gè)子程序來指定資源列表中確定的存儲器中的緩沖器,用來保留跟蹤數(shù)據(jù)。激活鉤子(hook),將可能的相關(guān)數(shù)據(jù)存儲到該緩沖器中。這些鉤子可以通過子程序調(diào)用(步驟816)激活。接著,處理檢測到某個(gè)情況(步驟818)。確定該情況是不是感興趣的差錯(cuò),這種差錯(cuò)需要重啟數(shù)據(jù)處理系統(tǒng)(步驟820)。該差錯(cuò)可以是軟件或硬件檢測出來的差錯(cuò)。如果沒有檢測到差錯(cuò),處理返回到步驟818。否則,被識別出包含跟蹤數(shù)據(jù)的存儲器被設(shè)置進(jìn)入自定時(shí)刷新模式(步驟822),隨后處理終止。
步驟808到812由啟動(dòng)代碼執(zhí)行。在這些例子中,步驟814到822由操作系統(tǒng)執(zhí)行。該跟蹤處理基于發(fā)現(xiàn)的資源指定緩存并激活鉤子,例如子過程調(diào)用,來存儲可能的相關(guān)數(shù)據(jù)。該處理用于將數(shù)據(jù)存儲在出現(xiàn)系統(tǒng)崩潰時(shí)保留的存儲器部分中。
現(xiàn)在參看圖9,示出按照本發(fā)明的一種優(yōu)選實(shí)施方式,在系統(tǒng)崩潰之后重啟數(shù)據(jù)處理系統(tǒng)的處理的流程圖。在感興趣的情況發(fā)生例如硬件或軟件檢測到差錯(cuò)之后,重啟系統(tǒng)時(shí),包含跟蹤數(shù)據(jù)的存儲器被設(shè)置進(jìn)入刷新模式,如圖8中步驟822。這是一種自定時(shí)刷新模式,其導(dǎo)致SDRAM啟動(dòng)維持其狀態(tài)所需的刷新周期,而不是等待定期刷新命令。
之后,該系統(tǒng)被重置,其存儲器保持加電狀態(tài)(步驟900)。存儲控制器然后重啟,指定的存儲器組已經(jīng)處于刷新模式(步驟902)。其余的存儲器組正常初始化(步驟904)。進(jìn)行診斷存儲器測試(步驟906)。在這些例子中,該步驟是可選的。所有存儲器被設(shè)置進(jìn)入正常的刷新狀態(tài)(步驟908)。存儲控制器指令自定時(shí)刷新模式下的存儲器組退出該模式,返回到正常的刷新狀態(tài)。I/O子系統(tǒng)被初始化(步驟910),裝入調(diào)試環(huán)境(步驟912)。在這些例子中,該調(diào)試環(huán)境是另一種操作系統(tǒng)。
任何調(diào)試代碼都可以裝入,以生成用于分析跟蹤數(shù)據(jù)的環(huán)境。例如,可以采用一個(gè)獨(dú)立的搜索程序,搜索特定情況的跟蹤數(shù)據(jù),并打印出它的發(fā)現(xiàn)。
該環(huán)境隨后被初始化,而不重寫跟蹤數(shù)據(jù)(步驟914)。這一步驟通過使用如下資源列表來完成,該資源列表包含有存儲跟蹤數(shù)據(jù)的地址。包含跟蹤數(shù)據(jù)的存儲器被視為保留存儲器。存儲器的其它部分被重寫和清除。隨后開始調(diào)試環(huán)境的執(zhí)行(步驟916)。然后對調(diào)試分析進(jìn)行初始化(步驟918),之后處理終止。
步驟900到906可以由業(yè)務(wù)控制器或者啟動(dòng)代碼來完成。步驟908由存儲控制器通過啟動(dòng)代碼的指令來完成。步驟910到916由啟動(dòng)代碼來完成,步驟914和918可以通過啟動(dòng)代碼或操作系統(tǒng)來初始化。
根據(jù)實(shí)現(xiàn)的不同,存儲控制器可以連接到設(shè)計(jì)為存儲系統(tǒng)行為的專用硬件,而不象圖8步驟814那樣,將跟蹤數(shù)據(jù)的存儲器置于列表中。通過這樣的實(shí)現(xiàn),業(yè)務(wù)控制器對跟蹤數(shù)據(jù)收集硬件進(jìn)行啟動(dòng)和停止操作,指令存儲控制器設(shè)置SDRAM進(jìn)入自定時(shí)刷新。通過這種方式,系統(tǒng)可以重啟,將包含跟蹤數(shù)據(jù)的存儲控制器映射到系統(tǒng)地址,而不是作為普通存儲器列入調(diào)試操作系統(tǒng)中。
因此,本發(fā)明為可重啟后崩潰分析環(huán)境提供了一種改進(jìn)的方法、裝置和計(jì)算機(jī)指令。本發(fā)明的機(jī)制在發(fā)生崩潰的數(shù)據(jù)處理系統(tǒng)的存儲器中保留了跟蹤數(shù)據(jù)。數(shù)據(jù)處理系統(tǒng)隨后以一種不同的環(huán)境——例如更適合分析跟蹤數(shù)據(jù)的操作系統(tǒng)重啟。之后,利用系統(tǒng)資源對跟蹤數(shù)據(jù)進(jìn)行分析。通過這種方式,跟蹤數(shù)據(jù)的處理可以得到較大量的帶寬和處理能力,減少了分析該數(shù)據(jù)所需的時(shí)間量。
注意到以下這一點(diǎn)很重要,即本發(fā)明雖然針對全功能的數(shù)據(jù)處理系統(tǒng)的環(huán)境進(jìn)行了描述,但本領(lǐng)域一般技術(shù)人員能夠理解,本發(fā)明的處理能夠以指令的計(jì)算機(jī)可讀介質(zhì)的形式,以及多種其它形式分發(fā),并且不管實(shí)際用于實(shí)現(xiàn)分發(fā)的信號承載介質(zhì)的特定類型是什么,本發(fā)明都一樣適用。計(jì)算機(jī)可讀介質(zhì)的例子包括可記錄類型介質(zhì)以及傳輸類型介質(zhì),可記錄類型介質(zhì)例如軟盤、硬盤驅(qū)動(dòng)器、RAM、CD-ROM、DVD-ROM,傳輸類型介質(zhì)例如數(shù)字和模擬通信鏈路、采用例如射頻和光波傳輸?shù)膫鬏斝问降挠芯€或無線通信鏈路。計(jì)算機(jī)可讀介質(zhì)可以采用編碼格式,經(jīng)解碼后才在特定數(shù)據(jù)處理系統(tǒng)中實(shí)際使用。
本發(fā)明的描述只是用于說明和描述目的,并不是窮舉性的,也不是將本發(fā)明限于所公開的形式。對本領(lǐng)域一般技術(shù)人員而言,顯然可以有許多修改和變化。實(shí)施方式的選擇和描述只是為了最好地解釋本發(fā)明的原理和實(shí)際應(yīng)用,為了讓本領(lǐng)域中其他的一般技術(shù)人員能夠了解本發(fā)明的各種實(shí)施方式具有適于所設(shè)想的特定用途的各種修改。
權(quán)利要求
1.一種數(shù)據(jù)處理系統(tǒng)中用于對從所述數(shù)據(jù)處理系統(tǒng)的崩潰得到的數(shù)據(jù)進(jìn)行分析的方法,該方法包括響應(yīng)于所述數(shù)據(jù)處理系統(tǒng)的所述崩潰,保留所述數(shù)據(jù)處理系統(tǒng)中的部分存儲器;以及以適于分析所述部分存儲器中的數(shù)據(jù)的環(huán)境,重啟所述數(shù)據(jù)處理系統(tǒng)。
2.根據(jù)權(quán)利要求1的方法,還包括分析所述部分存儲器中的跟蹤數(shù)據(jù)。
3.根據(jù)權(quán)利要求2的方法,其中利用所述數(shù)據(jù)處理系統(tǒng)中的剩余存儲器來執(zhí)行所述分析步驟。
4.根據(jù)權(quán)利要求1的方法,其中所述保留步驟包括設(shè)置所述部分存儲器進(jìn)入自定時(shí)刷新模式;以及保持向所述部分存儲器加電。
5.根據(jù)權(quán)利要求1的方法,其中所述數(shù)據(jù)處理系統(tǒng)是邏輯分區(qū)數(shù)據(jù)處理系統(tǒng),它具有多個(gè)分區(qū),其中所述保留步驟包括從所述多個(gè)分區(qū)中的第一分區(qū)移走部分存儲器,形成移走的存儲器;以及將所述移走的存儲器指派給所述多個(gè)分區(qū)的第二分區(qū),其中所述第二分區(qū)包含適于分析跟蹤數(shù)據(jù)的環(huán)境。
6.根據(jù)權(quán)利要求1的方法,其中所述重啟步驟包括在所述數(shù)據(jù)處理系統(tǒng)中裝入調(diào)試環(huán)境;以及在所述調(diào)試環(huán)境中初始化資源,而不重寫所述部分存儲器。
7.根據(jù)權(quán)利要求6的方法,其中所述初始化步驟利用資源列表避免重寫所述部分存儲器,在前述資源列表中所述部分存儲器被視為保留的存儲器。
8.根據(jù)權(quán)利要求1的方法,其中所述環(huán)境是操作系統(tǒng)。
9.一種用于對從數(shù)據(jù)處理系統(tǒng)的崩潰得到的數(shù)據(jù)進(jìn)行分析的數(shù)據(jù)處理系統(tǒng),該數(shù)據(jù)處理系統(tǒng)包括總線系統(tǒng);連接到所述總線系統(tǒng)的通信單元;連接到所述總線系統(tǒng)的存儲器,其中所述存儲器包括一組指令;以及連接到所述總線系統(tǒng)的處理單元,其中響應(yīng)于所述數(shù)據(jù)處理系統(tǒng)的所述崩潰,所述處理單元執(zhí)行所述的一組指令,以保留所述數(shù)據(jù)處理系統(tǒng)中的部分存儲器,并以適于分析所述部分存儲器中數(shù)據(jù)的環(huán)境重啟該數(shù)據(jù)處理系統(tǒng)。
10.一種用于對從數(shù)據(jù)處理系統(tǒng)的崩潰得到的數(shù)據(jù)進(jìn)行分析的數(shù)據(jù)處理系統(tǒng),該數(shù)據(jù)處理系統(tǒng)包括保留裝置,用于響應(yīng)于所述數(shù)據(jù)處理系統(tǒng)的所述崩潰,保留所述數(shù)據(jù)處理系統(tǒng)中的部分存儲器;以及重啟裝置,用于以適于分析所述部分存儲器中的跟蹤數(shù)據(jù)的環(huán)境,重啟所述數(shù)據(jù)處理系統(tǒng)。
11.根據(jù)權(quán)利要求10的數(shù)據(jù)處理系統(tǒng),還包括分析裝置,用于分析所述部分存儲器中的跟蹤數(shù)據(jù)。
12.根據(jù)權(quán)利要求11的數(shù)據(jù)處理系統(tǒng),其中所述分析裝置利用所述數(shù)據(jù)處理系統(tǒng)中的剩余存儲器來操作。
13.根據(jù)權(quán)利要求10的數(shù)據(jù)處理系統(tǒng),其中該保留裝置包括設(shè)置裝置,用于設(shè)置所述部分存儲器進(jìn)入自定時(shí)刷新模式;以及保持裝置,用于保持向所述部分存儲器加電。
14.根據(jù)權(quán)利要求10的數(shù)據(jù)處理系統(tǒng),其中所述數(shù)據(jù)處理系統(tǒng)是邏輯分區(qū)數(shù)據(jù)處理系統(tǒng),它具有多個(gè)分區(qū),其中所述保留裝置包括移走裝置,用于從所述多個(gè)分區(qū)中的第一分區(qū)移走部分存儲器,形成移走的存儲器;以及指派裝置,用于將所述移走的存儲器指派給所述多個(gè)分區(qū)的第二分區(qū),其中所述第二分區(qū)包含適于分析跟蹤數(shù)據(jù)的環(huán)境。
15.根據(jù)權(quán)利要求10的數(shù)據(jù)處理系統(tǒng),其中所述重啟裝置包括裝入裝置,用于在所述數(shù)據(jù)處理系統(tǒng)中裝入調(diào)試環(huán)境;以及初始化裝置,用于在所述調(diào)試環(huán)境中初始化資源,而不重寫所述部分存儲器。
16.根據(jù)權(quán)利要求15的數(shù)據(jù)處理系統(tǒng),其中所述初始化裝置利用資源列表避免重寫所述部分存儲器,在前述資源列表中所述部分存儲器被視為保留的存儲器。
17.根據(jù)權(quán)利要求10的數(shù)據(jù)處理系統(tǒng),其中所述環(huán)境是操作系統(tǒng)。
18.一種用于對從數(shù)據(jù)處理系統(tǒng)的崩潰得到的數(shù)據(jù)進(jìn)行分析的的計(jì)算機(jī)可讀介質(zhì)中的計(jì)算機(jī)程序產(chǎn)品,該計(jì)算機(jī)程序產(chǎn)品包括第一指令集,用于響應(yīng)于所述數(shù)據(jù)處理系統(tǒng)的所述崩潰,保留所述數(shù)據(jù)處理系統(tǒng)中的部分存儲器;以及第二指令集,用于以適于分析所述部分存儲器中的數(shù)據(jù)的環(huán)境,重啟所述數(shù)據(jù)處理系統(tǒng)。
19.根據(jù)權(quán)利要求18的計(jì)算機(jī)程序產(chǎn)品,還包括第三指令集,用于分析所述部分存儲器中的跟蹤數(shù)據(jù)。
20.根據(jù)權(quán)利要求19的計(jì)算機(jī)程序產(chǎn)品,其中所述第三指令集使用所述數(shù)據(jù)處理系統(tǒng)中的剩余存儲器。
21.根據(jù)權(quán)利要求18的計(jì)算機(jī)程序產(chǎn)品,其中所述第一指令集包括第一子指令集,用于設(shè)置所述部分存儲器進(jìn)入自定時(shí)刷新模式;以及第二子指令集,用于保持向所述部分存儲器加電。
22.根據(jù)權(quán)利要求18的計(jì)算機(jī)程序產(chǎn)品,其中所述數(shù)據(jù)處理系統(tǒng)是邏輯分區(qū)數(shù)據(jù)處理系統(tǒng),它具有多個(gè)分區(qū),其中所述第一指令集包括第一子指令集,用于從所述多個(gè)分區(qū)中的第一分區(qū)移走部分存儲器,形成移走的存儲器;以及第二子指令集,用于將所述移走的存儲器指派給所述多個(gè)分區(qū)的第二分區(qū),其中所述第二分區(qū)包含適于分析跟蹤數(shù)據(jù)的環(huán)境。
23.根據(jù)權(quán)利要求18的計(jì)算機(jī)程序產(chǎn)品,其中所述第二指令集包括第一子指令集,用于在所述數(shù)據(jù)處理系統(tǒng)中裝入調(diào)試環(huán)境;以及第二子指令集,用于在所述調(diào)試環(huán)境中初始化資源,而不重寫所述部分存儲器。
24.根據(jù)權(quán)利要求23的計(jì)算機(jī)程序產(chǎn)品,其中所述第三子指令集利用資源列表避免重寫所述部分存儲器,在前述資源列表中所述部分存儲器被視為保留的存儲器。
25.根據(jù)權(quán)利要求18的計(jì)算機(jī)程序產(chǎn)品,其中所述環(huán)境是操作系統(tǒng)。
全文摘要
一種方法、裝置和計(jì)算機(jī)指令,用于對從數(shù)據(jù)處理系統(tǒng)的崩潰得到的數(shù)據(jù)進(jìn)行分析。響應(yīng)于數(shù)據(jù)處理系統(tǒng)的崩潰,保留數(shù)據(jù)處理系統(tǒng)中的部分存儲器。以適于分析部分存儲器中數(shù)據(jù)的環(huán)境,重啟數(shù)據(jù)處理系統(tǒng)。
文檔編號G06F11/00GK1731368SQ200510077100
公開日2006年2月8日 申請日期2005年6月15日 優(yōu)先權(quán)日2004年8月5日
發(fā)明者安東·布蘭查德, 米爾頓·德文·米勒二世, 托德·艾倫·溫頓 申請人:國際商業(yè)機(jī)器公司