[go: up one dir, main page]

TWI355585B - Method, data processing system, and computer progr - Google Patents

Method, data processing system, and computer progr Download PDF

Info

Publication number
TWI355585B
TWI355585B TW094126217A TW94126217A TWI355585B TW I355585 B TWI355585 B TW I355585B TW 094126217 A TW094126217 A TW 094126217A TW 94126217 A TW94126217 A TW 94126217A TW I355585 B TWI355585 B TW I355585B
Authority
TW
Taiwan
Prior art keywords
memory
processing system
data
data processing
partition
Prior art date
Application number
TW094126217A
Other languages
English (en)
Other versions
TW200627153A (en
Inventor
Anton Blanchard
Ii Miller
Todd Alan Venton
Original Assignee
Ibm
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Ibm filed Critical Ibm
Publication of TW200627153A publication Critical patent/TW200627153A/zh
Application granted granted Critical
Publication of TWI355585B publication Critical patent/TWI355585B/zh

Links

Classifications

    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/36Prevention of errors by analysis, debugging or testing of software
    • G06F11/362Debugging of software
    • G06F11/3636Debugging of software by tracing the execution of the program
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/14Error detection or correction of the data by redundancy in operation
    • G06F11/1402Saving, restoring, recovering or retrying
    • G06F11/1415Saving, restoring, recovering or retrying at system level
    • G06F11/1441Resetting or repowering

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Quality & Reliability (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Hardware Design (AREA)
  • Debugging And Monitoring (AREA)

Description

1355585 , 九、發明說明: 【發明所屬之技術領域】 本發明關於一種改良的資料處理系統,尤其有關於 -種用於^理資料的方法與設備。更制是,本發明有關 於種在資料處理系統當機後用於分析資料的方法、設 備、及電腦指令。 ° 【先前技術】 在測試資料處理系統的應用程式與其他組件時,在 測試及除錯階段期間,常會發生系統當機。當出現作業系 ϊίί復原的故障或錯誤時’即發生系統當機。軟體或硬 =會造成系統當機。系,统當機意即資·理系統停止運 ’可力^:目為硬體轉或嚴重的軟體錯誤或程式錯誤 韻樹域爾理系統或軟 在系統當機後,通常會收集資料以在另—丰 析’或在重新啟動後,在目前的系統的上分析刀 通常在另-資料處理系統上進行系統t機後的資料 ^。通常經由0S傾印(dump)將此t機㈣料收集至磁 外部服務處理器或經由其他^型的 :亍产分析有若干好處。例 分;在生產環境中收集當機的㈣ 4IBM/05079TW ; AUS9-2004-0593(JL) 5 1355585 然而,還是會有些限制。儲存及還原追縱資料的一 個限制是追蹤資料的大小。追蹤資料是利用硬體監控程式 (hardware monitors)或軟體監控程式(s〇ftware m〇nit〇rs)所
收集的資料。這些監控程式記錄一連串事件或資料,以形 成追蹤資料。例如,監控程式記錄程式流程的追蹤,或監 控程式記錄由程式所處理之資料的序列或在資料處理系 統組件間傳送之資料的序列。通常由於可用的資源,如磁 帶或磁碟的容量、或服務元件中可能的儲存裝置、或其卸 載=力,必須限制收集之追蹤資料的大小。此外,卸g追 縱貝料的咖和追蹤的大小與城介面賴寬成比例。 服務兀件和其所維護的資料處理系統相比,通常是 if 域寬的支援處理11。此外,服務處理器必 f相對較間單且自動初始化。此類處理n的大小設定為且 ί力L初始化f料處理系統及在執行時間監控資i ίΐίϋ料處理純中的所有組件也—樣,因考慮成 本僅就,、主要初始化與監控工作設定其大小。
源:處理與儲存資 作業系統 時。外㈣㈣統紐的追縱資料 大之大小的Ιί 干十億位,_gabytes)或更 貝料、、告果,將此數量的追縱資料傳輸至 4BM/05079TW ; AUS9-2〇〇4,〇593(儿) · 6 ^硬碟或其他儲存裝置的媒體,以在另—f 變=常而===’致使測試與除錯程序的速度 更適合分析追蹤資料 作業環境比收細資料的ί業環Ξ 機都行得通,只是速if,。此方法對於各種當 主系統記憶體的資料^法^服務處理器將 方式是比較快的替代方牵存入”本地記憶體。此 服旄;丛禾缺L督代方案’但部需要大量可運作的系統, u也必須有儲存或卸载資料的資源。’ 固百萬位元組(卿_之資料的 〒會師選貝枓以減少收集的資, 部分來分析。這些解決方案 ^成分析中可用^資 方法因ί備料統當機後分析資料的改良 【發明内容】 的方ί 祕分析㈣處理祕當機之資料 =忿=。在資料處理系統中,保留』 體中,以適於分析ϋ處理系統的當機。在其餘的記憶 週於刀析战體之保㈣分中追蹤龍的環境, 4IBM/05079TW : AUS9-2〇〇4-〇593(JL) 使資料處理系統重新啟動。 【實施方式】 m包含:系統單元102、視訊顯示終端機 欠么艿上广儲存裝置戦包含軟碟機及其他類型的 ί 式儲存媒體)、及滑鼠110。個人電腦刚可包 】央*輸入裝置’ *:搖桿、觸控板、觸控螢幕、軌跡 ΐΐΛί風、及其類似物。電腦100可以使用任何合適的 甘,,實施’如:IBM eServer電腦或㈣腿ati〇n電腦, =為設於域州亞芒克市(Armcmk, New Μ)之萬國商業 機,公司(International Business Machines c〇卬〇rati〇n)的 。雖然描繪的圖式顯示電腦,但本發明的其他具體實 鉍例可以其他類型的資料處理系統(如網路電腦)來實 施。電腦1〇〇較佳是也包含圖形使用者介面(graphicaluser interface,GUI) ’其可藉由常駐於操作於電腦1〇〇内之電 腦可讀取媒體的系統軟體來實施。 現在參考圖2’其中顯示實施本發明之資料處理系統 的方塊圖。資料處理系統200為電腦的範例,如圖1中的 電腦100,實施本發明之程序的程式碼或指令係位在其 中。負料處理糸統200採用週邊組件互連(peripheral component interconnect,PCI)本地匯流排架構。雖然描繪的 範例採用PCI匯流排,但也可以使用其他匯流排架構,如 加速圖形埠(Accelerated Graphics Port, AGP)與工業標準 架構(Industry Standard Architecture,ISA)。處理器 202 與 4旧M/05079TW ; AUS9-2004-0593(JL) 8 主記憶體204係透過PCI橋接器208而連接至pci本地 匯流排206。PCI橋接器208還包含用於處理器202的整 合s己憶體控制器與快取記憶體。透過直接組件互連或透過 附加連接器可進行PCI本地匯流排206的附加連接。在描 繪的範例中,區域網路(LAN)轉接器210、小型電腦系統 介面(scsi)主機匯流排轉接器212、及擴充匯流排介面214 係藉由直接組件連接而連接至PCI本地匯流排2〇6。相對 地’音訊轉,器216、圖形轉接器218、及音訊/視訊轉接 器219係藉由插入擴充插槽的附加介面卡而連接至pci 本地匯流排206。擴充匯流排介面214提供用於鍵盤與滑 鼠轉接器220、數據機222、及附加記憶體224的連接。 scsi主機匯流排轉接器212提供用於硬碟機226、磁帶 機228、及光碟機230的連接。典型的PCI本地匯流排實 施可支援三個或四個PCI擴充插槽或附加連接器。 作業系統在處理器202上執行,可用來協調及控制 圖2中資料處理系統2〇〇内的各種組件。作業系統是可在 市場上購得的作業系統,如Wind〇ws χρ,可自微軟公司 (MicmsoftCorporation)購得。物件導向程式設計系統,如 Java ’可結合作業系統一起執行,並可從java程式或在資 ,處理系統200上執行的應用程式叫用作業系統。「知抑」 是昇陽電腦公司(Sun Microsystems,Inc.)的商標。作業^ 統的指令、物件導向程式設計系統、及應用程式或程^;系 位於儲存裝置上’如硬碟機226,並可載入主記憶體2〇4 由處理器202執行。 熟習此項技術者應明白,圖2中的硬體隨著實施而 4IBM/05079TW ; AUS9-2004-0593(JL) 9 。其他内部硬體或猶裝置,如 性記憶體、或光碟機及其:二 於或取代圖2中描繪的硬體。還有,可將本發 月的鞋序應用於多處理器資料處理系統。 =如=料處理系、統·,在視需要設定為網 含scsi主機匯流排轉接器212、硬碟細、 雷m t光碟機230。此時,應正確稱為「用戶端 ^巧」的電腦包含某個類型的網路通訊介面,*lan ίϋ fι〇:數據機222、或其類似物。而作為其他範例, 理系統2GG可岐經設定不用靠某個類型的網路 面即可啟動的獨立系統,無論資料處理系統珊 ”某個麵的麟通齡面與否。而更進—步的範例, 資料處理系統200可以是個人數位助理(pDA),其經設定 ίί ^⑽及/或快閃R〇M ’以提供非揮發性記i體i儲 存作業系統檔案及/或使用者產生的資料。 圖2中私繪的範例及上述範例並無意表示結構限 制。例如,除了採取PDA的形式外,資料處理系統2⑻ 也可以是筆記型電腦或手持電腦。資料處理系統2〇〇也可 以是資訊站(kiosk)或資訊家電(web appliance)。本發明的 程序可由處理器202使用電腦實施的指令來執行,這些指 々係位於5己憶體(如’主§己憶體204、記憶體224)戍一或 多個週邊裝置226-230中。 / 〆 圖3為描繪貫施本發明之另一資料處理系統的方塊 圖。資料處理系、统300可以是對稱多處理器(symmetnc 4IBM/05079TW ; AUS9-2004-0593(JL) 10 13555.85 multiprocessor,SMP)系統,其中.包含複數個連接至系統匯 流排306的處理器3(Π、302、303、及304。例如,、資料 處理系統300可以是ΒΒΜ eServer ’其為紐約州亞芒克市 之IBM的產品,並可實施為網路中的伺服器。或者,也 可採用單一處理器系統。也連接至系統匯流排3〇6的是記 憶體控制器/快取308,其提供與複數個本地記憶體 360-363的介面。I/O匯流排橋接器31〇係連接至系^匯 'oil排306 ’並k供至I/O匯流排312的介面。記情體批制 器/快取308與I/O匯流排橋接 31〇如圖所示己:3 的。 負料處理糸統300在此範例中為邏輯分區(lpar)資 料處理系統。因此,資料處理系統3〇〇可具有多個同時執 行的異質(heterogeneous)作業系統(或單一作業系 個例項)〇這些多個作業系統中每一個都具有j壬何數量的 軟體程式執行於其中。資料處理系統3⑻在邏輯上分區使 不同的PCI I/O轉接器320_321、328_329、及336、圖形 轉接器348、及硬螺轉接器349被指派於不同的邏輯分 • 區。在此例中’圖形轉接器348提供顯示裝置(未顯示)的 連接,及硬碟轉接器349提供控制硬碟35〇的連接。 因此,例如,假設將資料處理系統3⑻分成三個邏 輯为區 P卜 P2、及 P3。PCI I/O 轉接器 320-321、328-329、 及336中的母一個、圖形轉接器348、硬碟轉接器、 主機處理器301-304中的每一個、及本地記憶體36〇_363 的§己憶體係指派給三個分區中每一個。在這些範例中,記 憶體360-363可採取雙行記憶體模組(㈣化彻麵㈣ 4IBM/05079TW ; AlJS9-2004-0593(JL) 11 13555.85 modules, DIMMs)的形式。一般並不逐一將DIMMs指派 給分區。而是分區會取得平台所見之總記憶體的一部分。 例如’處理器301、本地記憶體360-363之記憶體的某個 部分、以及I/O轉接器320、328、及329被指派給邏輯分 區P1 ;處理器302-303、本地記憶體360-363之記憶體的 某個部分、以及PCII/0轉接器321與336被指派給分區 P2 ;及處理器304、本地記憶體360-363之記憶體的某個 部分、圖形轉接器348、及硬碟轉接器349被指派給邏輯 分區P3。 在資料處理系統300内執行的各作業系統被指派給 不同的邏輯分區。因此,在資料處理系統30〇内執行的各 作業系統只能存取那些在其邏輯分區内的I/O單元。因 此’例如,高級交談執行程序(Advanced Interactive Executive,AIX)作業系統的一個例項可在分區P1内執 行,AIX作業系統的第二例項(映像)可在分區P2内執行, 及Limix或〇3/400作業系統可在邏輯分區!》3内操作。 連接至I/O匯流排312的週邊組件互連(PQ)主機橋 接器314提供至PCI本地匯流排315的介面。透過pCI 至PCI橋接器316、PCI匯流排318、PCI匯流排319、1/〇 巧槽370、及I/O插槽371,可將若干pci輸入/輸出轉接 器320-321連接至PCI匯流排315〇PCI至PCI橋接器316 知:供至PCI匯流排318與PCI匯流排319的介面。PCI I/O 轉接器320與321係分別置入i/o插槽370與371中。典 型的PCI匯流排實施可支援於四個及八個轉接器 (即’用於附加連接器的擴充插槽)之間。各Pd y〇轉接 4IBM/05079TW ; AUS9-2004-0593(JL) 1355585 _ «· 器320-321在資料處理系統300與輸入/輸出裝置(如,其 他網路電腦,其為資料處理系統300的用戶端)之間提供 介面。 附加PCI主機橋接器322提供附加PCI匯流排323 的介面。PCI匯流排323係連接至複數個PCI I/O轉接器 328-329。透過PCI至PCI橋接器324、PCI匯流排326、 PCI匯流排327、I/O插槽372、及I/O插槽373,可將PCI I/O轉接器328-329連接至PCI匯流排323。PCI至PCI 橋接器324提供至PCI匯流排326與PCI匯流排327的 介面。PCI I/O轉接器328與329係分別置入I/O插槽372 與373中。依此方式,透過PCI I/O轉接器328-129中每 一個,即可支援附加的I/O裝置,如:數據機或網路轉接 器。依此方式’資料處理系統300即可連接至多個網路電 腦。 透過PCI匯流排344、PCI至PCI橋接器342、PCI 匯流排341、及PCI主機橋接器340,可將插入I/O插槽 374之已對應記憶體的圖形轉接器348連接至I/O匯流排 312。可將硬碟轉接器349置入連接至pci匯流排345的 I/O插槽375。依次地’可將此匯流排連接至pci至pci 橋接器342,後者係由PCI匯流排341連接至PCI主機橋 接器340。 PCI主機橋接器330提供PCI匯流排331 —介面以 連接至I/O匯流排312。PCI I/O轉接器336係連接至I/O 插槽376 ’ I/O插槽376則藉由PCI匯流排333而連接至 4旧M/05079TW ; AUS9-2004-0593(儿) 13 13555,85 · PCI至PCI橋接器332。pCI至Ρα橋接器332係連接至 PCI匯流排331。此PCI匯流排亦將PCI主機橋接器33〇 連接至服務處理ϋ信箱介面與ISA匯流排存取傳遞邏輯 394與PCI至PCI橋接器332。服務處理器信箱介面與ISA 匯流排存取傳遞邏輯394可轉送該指定至pcLasA橋接器 393的PCI #取。NVRAM儲存裝置392係連接至ISA匯 流排396。服務處理器335係透過其本地Ρα匯流排395 ,合至服務處理n信箱介面與ISA匯流排存取傳遞邏 輯394。服碱理器335亦經由複數個JTAG/I2C匯流排 W 334 *連接至處理器301-304。JTAG/I2C匯流排334是 JTAG/scan匯流排(見IEEE 1149⑽phmips此匯流排的 ,合。然而’供選擇地,JTAG/ic匯流排334可以僅Phillips 1C匯々IL排或僅JTAG/scan匯流排來取代。主機處理器 301、302、303、及304的所有SP_ATTN信號係一起連^ 至服務處理器的中斷輸入信號。服務處理器335有其自己 的本地記憶體391 ’且可存取硬體〇p_面板39〇。 在初始啟動 > 料處理糸統3〇〇後,服務處理335 • 使用】彻攸匯流排说詢問系則主^理3^ 301_304、記憶體控制器/快取308、及I/O匯流排橋接器 310。元成此步驟後,服矛务處理器335即可瞭解資料處理 系統300的詳細目錄與拓樸。服務處理器335亦在因詢問 主機處理器301-304、記憶體控制器/快取3〇8、及1/〇匯 流排橋接器310所發現的所有元件上,執行内建自我測試 (BuiMn-Self-Tests,BISTs)、基本保證測試(Basic Tests,BATs)、及記憶體測試。服務處理器335將在·Τδ、 BATs、及圮憶體測試期間,收集及報告所偵測之失敗的 4IBM/05079TW ; AUS9-2004-0593(JL) 14 任何錯誤資訊。 如果在取出在BIST、BAT、及記憶體測試期間發現 故障,f件後,系統資源的有意義/有效組態仍然可行, 則允許資料處理系統3〇〇繼續進行,以將可執行的程式碼 載入本地(主機)記憶體360-363。服務處理器335接著釋 放主機處理器301-304,以執行載入本地記憶體36〇_363 的私式碼。當主機處理器301-304在資料處理系統3〇〇内 執行個別之作業系統的程式碼時,服務處理器335進入監 控及報告錯誤的模式。由服務處理器335監控的項目類型 包含如:冷卻風扇速度與運作、熱感應器、電源供應調節 器、及由處理器101-104、本地記憶體360-363、及I/O匯 流排橋接器310報告之可復原與不可復原的錯誤。 服務處理器335負責儲存及報告有關資料處理系統 3〇〇中所有受監控項目的錯誤資訊。服務處理器335亦根 據錯誤類型與定義的臨限值來採取行動。例如,服務處理 器335可記下處理器快取記憶體上的過多可復原錯誤,然 後決定這是硬體失敗的預兆。根據此決定,服務處理^ 335標記該資源,以在目前執行工作階段及未來初始程式 載入(Initial Program Loads,IPLs)期間解除組態。ipLs 有時 又稱為「啟動」(boot或bootstrap)。 資料處理系統300可使用各種可在市場上購得的電 腦系統來實施。例如’可使用可從IBM購得的IBM eServet· iSeries Model 840系統來實施資料處理系統300。此類系 統可支援使用OS/400作業系統(亦可從;©Μ購得)的邏^ 4IBM/05079TW ; AUS9-2004-0593(JL) 分區。 同。:===== 輪體。她㈣的範= 法、言·姆環境的方 中執4析的=;寬 ==供資料處· 統可用來執彳^分析以、。發^機的該資料處理系 ^發明的機構藉由使用資料處理系統中的記 ==,謝的_“;留 俨八2 ΐ °P i。然後以適於使用資料處理系統中1餘呓 的環境’使資料處理系統重新啟動依 構,處理功率與頻寬資源。使用此機 巧〇 GB以上之追縱資料的互動查詢只 非數小時。此機構在收集及/或預選追縱資料要八供 的部分期間,不用嚴格篩選追縱資料。、 父刀析 得用於mno从、,丄料之,、且件的圖式。作業系統4〇0 段。追师料侧係於程式樣 將在資料。如果資料處理系統發生當機, ^處系統重新啟動時,保留記億體中的追縱資料 4IBM/05079TW ; AUS9-20〇4-〇593(JL) 16 B55585 ι * 在這些解說的範例中’將追蹤資料所在的記憶體置 於自我計時更新狀態。更明確地說,將動態隨機存取記憶 體(DRAM)置於DRAM負責保留其内容而不用記憶體控 制器之明確命令的狀態。以作業系統406取代作業系統 400 ’使資料處理系統重新啟動。使用作業系統.以提 供更適於分析程式408分析追蹤資料的環境。
Linux為可用於分析之作業系統的範例。或者,可使 用任何應用程式’只要該應用程式適合所要處理之除錯的 需要。此外’對於要使用的完整作業系統(〇s)並沒有^何 需求。可使用任何除錯環境或專門程式碼。可設計除錯公 用程式以使用多個處理器搜尋及篩選此記憶體,以針^選 定的模式平行搜尋不同範圍的追蹤資料。 接著參考® 5,其巾根據本發明的較健體實施 描繪顯示追蹤龍之保留_式。在此範财,追縱資米 =0係位在記憶體502 0。如果發生當機,將
料,,在的部分置於自我計時更新狀態體則 Ι ’利用啟動程序5〇4將記麵
Hi it t可透過服務控制器將記憶體5〇: = t,記憶體502可保留追蹤資料500 c 506 (Joint Test Action Group, JTAG)^® , 4旧M/05079TW ; AUS9-2004-0593(儿) 17 L3555.85 ^施於#料處理綠巾’如圖2的資料處理祕2〇〇。明 確地說,可將此程序置於啟動程序中,如圖5的啟動程序 程序始於識別含有追縱資料的記憶體(步驟6〇〇)。可 在將追縱資料儲存於記髓巾之前進行此識別,然後將追 =資料儲存於記憶體中的識別位置。依此方式,可將由效 能程式或程序產生的追蹤資料儲存於記憶體中。其後,初 始化及清除不含追蹤資料的記憶體(步驟6〇2)。載入分析 追縱資料的作業系統(步驟604)。然後起始追縱資料 析(步驟606),其後終止程序。 接著參考圖7,其根據本發明的較佳具體實施例,描 繪提供分析追輔料之魏之程序⑽程圖。圖7所示程 序可實施广資料處理系統中,如圖3的資料處理系統 3〇〇。此資料處理系統可執行如圖5之啟動程序5〇4的 動程序。 程序始於偵測需要分析追蹤資料的事件(步驟冗 為回應偵測此事件’從建立追蹤資料的原始分區中移除含 有追蹤資料的記憶體(步驟702)。從原始分區的清單中移 除含有追縱資制位址’即可移除此記憶體。將此記憶體 指派給新的分區(步驟704)。將含有追蹤資料的位址範圍 新增至新的分區,即可將記憶體指派給新的分區。其後, 在新分區之中,起始追蹤資料的分析(步驟7〇6),其後終 止程序。 八'' 4IBM/05079TW ; AUS9-2004-0593(JL) 18 13555,85· 接著參考圖8,其根據本發明的較佳具體實施例,描 繪設定記憶體以保留追蹤資料之程序的流程圖。圖8所示 程序可實施於各種組件中,如服務控制器或啟動碼。在啟 動碼中實施的步驟可實施於圖5的啟動程序504中。 程序始於初始化記憶體控制器(步驟8〇〇)。然後初始 化DRAM(步驟802)。初始化DRAM以啟動包含設定 SDRAM模式暫存器及設定快取列大小。此外,在啟動 DRAM的此步驟中,按照特定的固定間隔進行儲存區預 充電及起始記憶體更新《然後清除及初始化記憶體(步驟 804)。然後執行診斷記憶體測試(步驟8〇6)。在這些範例 中’此步驟為選擇性步驟。步驟8〇〇至8〇8可藉由服務控 制器或啟動碼來執行。服務控制器係如可在資料處理系^ 外部的服務處理器。 接著’初始化I/O子系統(步驟8〇8)。然後,載入作 業系統(步驟810)。然後’開始執行作業系統(步驟812)。 然後’取得及初始化資源清單(步驟814)。此資源清單包 魏财效記顏細。此外,本發明的機構 早’如在執行程式期間保存追蹤資料之記 的心定°其後,哞叫子常式_.tine)以在 記憶體中指定保存魏資料的緩衝 二μ。二i(t〇〇ks)以在此缓衝區中儲存可能的相關 8貝 16)。接菩式呼叫來啟動這些攔截程序(步驟 ^16)接者,程序偵測事件(步驟818) ^決定此 否 ϊϊίΓ,ίίί統重新啟動的有關錯誤(步驟820卜此 、疋Λ—或硬體債測的錯誤。如果未債測錯誤’則 4IBM/05079TW ; AUS9-2004-0593(JL) 19 步驟818。否則,將識別為含有追縱資料的記憶 _ ;自我計時更新模式(步驟822),其後終止程序。 ,驟808至812由啟動碼執行。在這些範例中,步 Ιίθ 822由作業系統執行。此追蹤程序可用來根據所 、、資源指定緩衝區及啟動如子常式呼叫的攔截程 =儲存可能相關的資料。此程序可用來儲存記憶體在 Λ生系統當機時所保留之部分中的資料。 &么現在參考圖9 ’其根據本發明的較佳具體實施例,描 =系機後使龍處⑽、統韻啟動之程序的流程 ^虽系統在發生相關事件(如硬體或軟體偵測的錯誤)後 ^啟動時,會將含有追輔料的記㈣更新模式, ί的步驟822 ^這是造成SDRAM視需要起始更新週 我計時更賴式,轉持其狀態而非等待錢的更 a、其後’以保留的記憶體功率重設系統(步驟漏)。然. 已經在更新模式之指定的儲存區重新初始化記憶體 ,1器(轉902)。按正常方式初始化其餘的記憶體儲存 驟9〇4) °執行診斷記憶體測試(步驟9〇6)。此步驟在 例巾純擇性。紐,將所有記髓置於正常更新 狀Μ步驟908)。記憶體控制器指示自我計時更新模式中 的記憶體儲存區退出此模式並返回正常更新狀態。初始化 I/J)子系統(步驟910)及載入除錯環境(步驟912)。此除錯 環境在這些範例中為替代的作業系統。 4IBM/05079TW ; AUS9-2004-0593(JL) 20 丄切585· t ♦ 可載入任何除錯程式碼,以形成用於分析追蹤資料 的環境。例如,可使用獨立的搜尋程式搜尋特定事件的追 縱資料及列印其發現。
然後,初始化環境而不覆寫追蹤資料(步驟914)。使 用包含儲存追蹤資料之位址的資源清單,即可執行此步 2 °含有追蹤資料的記憶體將視為保留的記憶體。覆寫及 清除記憶體的其他部分。然後,開始執行除錯環境(步驟 91Q。然後,初始化除錯分析(步驟918),其後終止程序。 y.步驟900至906可藉由服務控制器或啟動碼來執 仃。步驟908由記憶體控制器透過啟動碼的指令來執行。 夕驟910至916由啟動碼執行,步驟914與918透過啟動 碼或作業系統來初始化。 _ 根據實施而定,並不像圖8的步驟814,在清單中顯 =用於追蹤資料的記憶體,而是將記憶體控制器連接至^ 定儲存系統活動的專用硬體。使用此類實施,服務控制^ 可起始及停止追蹤資料收集硬體及指示記憶體控^器^ SDRAM置於自我計時更新。依此方式,可使系統重^啟 動,及將含追蹤資料的記憶體控制器對應至系統位址 在除錯作業系統中並不被列為正常記憶體。 ~ 因此,本發明提供一種用於可啟動之當機後分析严 境的改良方法、設備、及電腦指令。本發明的機構保留2 生當機之資料處理系統之記憶體中的追縱資料。然後,^ 不同的環境’如更適於分析追蹤資料的作業系統,使資g 4旧M/05079TW ; AUS9-2004-0593(JL) 21 1355585 處理系統重新啟動。織,使料統資源分析追縱 依此方式’比較大量的頻寬與處理功率可供用於處理 資料,以減少分析此資料所需的時間。 請注意,雖然在完全作用之資料處理系統的上 中說明本發明,但熟習此項技術者應明白,可以電 取媒體指令的形式與各種形式分配本發明的程序,且鹿^ 白,無論實際用於執行分配的信號載負媒體的特定類^, 本發明皆一樣適用。電腦可讀取媒體的範例包含:可纪 型媒體’如:軟碟、硬碟機、RAM、CD_RC)IJs、' DVD-ROMs ;及傳輸型媒體,如:使用如射頻與光波 輸之傳輸形式的數位與類比通訊鏈路、有線或盔線通 路。電腦可讀取媒體可採用解碼以實際用於特^資料 系統之編碼格式的形式。 、 本發明的說明係為解說與說明的目的而提出,其意 不在详盡說明或以所揭露的形式限制於本發明。對於熟習 此項技術者而言,顯然可以進行許多修改及變化。具體實 施例的選擇與說明係為了對本發明的原理、實際應用提出 最好的解說’並讓熟習本技術者瞭解本發明的各種具體實 施例具有同樣適於所想特定使用的各種修改。 4IBM/05079TW ; AUS9-2004-0593(JL) 22 【圖式簡單說明】 視為本發明之特性的新穎特色如隨附的中請專利範 ,所,。然而’要完全_本㈣本奴其雛使用模 =八他目的及優點’請參考以下解說性具體實施例的詳 細說明並結合附圖來研讀,其中: 一圖1為根據本發明較佳具體實施例來實施本發明之 貢料處理系統的圖式; 圖2為實施本發明之資料處理系統的方塊圖; 圖3為實施本發明之另一資料處理系統的方塊圖; 圖4根據本發明的較佳具體實施例,為顯示用於分 析追蹤資料之組件的圖式; 圖5根據本發明的較佳具體實施例,為顯示保留追 蹤資料的圖式; 圖6根據本發明的較佳具體實施例,為提供當機後 分析環境之程序的流程圖; 圖7根據本發明的較佳具體實施例,為提供分析追 蹤資料之環境之程序的流程圖; 圖8根據本發明的較佳具體實施例,為設定記憶體 以保留追蹤資料之程序的流程圖; 圖9根據本發明的較佳具體實施例,為儲存追縱資 料之程序的流程圖。 4IBM/05079TW ; AUS9-2004-0593(JL) 23 1355585 ,·
【主要元件符號說明】 100 電腦 102 系統單元 104 視訊顯示終端機 106 鍵盤 108 儲存裝置 110 滑鼠 200'300 貢料處理糸統 202、301 - 304 處理器 204 主記憶體 206 PCI本地匯流排 208 PCI橋接器 210 區域網路(LAN)轉接器 212 小型電腦系統介面(SCSI)主 機匯流排轉接器 214 擴充匯流排介面 216 音訊轉接器 218 、 348 圖形轉接器 219 音訊/視訊轉接器 220 鍵盤與滑鼠轉接器 222 數據機 224 附加記憶體 226、350 硬碟機 228 磁帶機 230 光碟機 4旧M/05079TW ; AUS9-2004-0593(JL) 1355585 .♦ 301 -304 主機處理器 糸統匯流排 記憶體控制器/快取 I/O匯流排橋接器 I/O匯流排 314、322、330、340 PCI 主機橋接器 315、318、319、323、326、
327、331、333、341、344、PCI 匯流排 345、395 316、324、332、342 PCI 至 PCI 橋接器 320 - 32卜 328-329、336 PCII/0 轉接器 334 JTAG/I2C 匯流排 335 服務處理器 349 硬碟轉接器 360-363 本地記憶體 370 - 376 I/O 插槽
306 308 310 312 390 OP面板 391 > 502 記憶體 392 393 394 396 400、406 402 NVRAM儲存敦置 PCI/ISA橋接器 服務處理器信箱介面與 匯流排存取傳遞邏輯 ISA匯流排 作業系統 程式 4IBM/05079TW ; AUS9-2004-0593(JL) 1355585 * » 404、500 408 504 506 追縱貢料 分析程式 啟動程序 記憶體控制器 4IBM/05079TW ; AUS9-2004-0593(JL) 26

Claims (1)

1355585
十、申請專利範圍:
在該當機之前且當職該資料處理系統正在執行 的一程 1.一 關之 式時: 收集追蹤資料;以及 儲存該追蹤資料於一記憶體的一 記憶體控制器連接; 回應當測試該程式時所發生之該當機 部分’該記憶體與— 該記憶體的該部分; ’保留該追縱資料於 以適於分析該追蹤資料的一環境,使該資料處理系統重新 啟動,其中該追蹤資料在該重新啟動期間停留在該記憶體的哕 部分; μ 以一啟動程序將該記憶體的該部分置於自我計時更新模 式(self-timer refresh mode); 當在自我計時更新模式時以該記憶體的該部分保持 (maintaining)該追蹤資料,而不需要求來自該記憶體控制器 的一更新命令(command);以及 保持電源供給至該記憶體之該部分。 2.如請求項1之方法,其進一步包含: 在該資料處理系統已經重新啟動之後,使用該記憶體的一 剩餘部份分析該追蹤資料。 3·如請求項1之方法,更包含: 該記憶體控制器藉由一系統匯流排與一處理器通訊,其 27 1355585 案號:94丨26217 - i00年09月曰修正_替換頁 中該系統匯流排係與該記憶體控制器以及該處理器連接。 4.如請求項〗之方法,其中該資料處理系統係為具有複數個分 區的一邏輯分區資料處理系統,以及其_該保留步驟包含: 從該複數個分區的一第一分區令移除該記憶體的該部 分,以形成移除的記憶體;以及 將該移除的記憶體指派給該複數個分區中的—第二分 - 區,其申s亥第二分區含有適於追蹐資料分析的一環境。 5.如請求項1之方法,其中該重新啟動步驟包含·· 將一除錯環境載入該資料處理系統以及 初始化該除錯環境中的資源而不覆寫該記憶體的該部分。 6.如請求項5之方法,其中該初 部分視為保留之記憶體的—資憶體之该 部分。 貝尽'月早避免覆寫该記憶體的該 7.如請求们之方法,其中該環境係為—作業系統。 處理系統’該統之-當機箱關之資料的資 式時在該•之前且當輯該資料處_統正在執行的一 收,構件,收集追縱資料;以及 儲存構件,儲存該追 記憶體與—記憶體控制器連接':、體的-部分, 28 1355585 ιηη * ηο α 案號:94126217 丨⑻年09月G8日修正·替換頁 該記is;程式時所發生之該當機’保留該追縱資料於 重新啟動構件,以適於分析該追縱資料的_ 式;-啟触序將觀紐賴部分置於-自我計時更新模 當在自,計時更新模式時該記憶體的該部分 的:r;i)(=!d= 不需要求來自該記憶體咖 保持構件,用於保持電職給記賴之該部分。 9.如請求項8之資料處理系統,其進—步包含: ====重新啟動之後使用該記憶體 .如"月求項8之資料處理系統,更包含. 該系流排與-處理器通訊,其中 排係與該魏體控彻以及該處理器連接。 複資料處理系統係為具有 包含: 貞概理线,以及其巾祕留構件 體的該部f件以’個分區的-第-分區中移除該記憶 刀以形成移除的記憶體;以及 曰派構件’以將該移除的記憶體指派給該複數個分區中的 29 I » 案號:94丨262J7 H)0年09月08日修正-替換頁 &第二分區,其中該第二分區含有適於追蹤資料分析的一環 境。 12’如請求項8之#料處理系統’其中該重新啟動構件包含: 载入構件,用於將一除錯環境裁入該資料處理系統t; 及
初始化餅,祕柯寫該記憶體的該料而初 錯%境中的資源。 % 求項12之:祕處理_,射該秘倾件藉由齡 視為保留之記憶體的-資源清單,避免覆寫i 14. 如請求項8之資料處理系統,其中該環境係為-作業系統。 15. 種電細程式產品,儲存於一 與該資料處理系統之-當機相關5: 3用於分析 當測試該龍處_紅在執㈣—程式時: 用於收集追縱資料的指令組;以及 組,記憶體之一部分的指令 屺憶體控制器連接; 組 以回 p測縱資料於該記憶體之該部分的指令 新啟動的指令組,公中貝二的」w兄而使5亥貧料處理系統重 記憶體的該部分;权_在射新啟動_停留在該 30 案號:94126217 100年〇9月〇8曰修正·替換頁 模式程序將該記憶體的該部分置於-自我計時更新 令組;以及 4刀保持遠追縱資料的指 用於保持電源供給至該記憶體之該部分的指令組。 16.如請求項15之電腦程式產品,其進一步包含: 之該=料^=餘部分而分析該記憶體之該部分内 17. 如請求項15之電腦程式產品更包含: 該記憶體控制器藉由一系統匯流排與 該系統匯流猶與該記憶體㈣器以及該處理器其中 18. 如請求項15之電腦程式產品,其中該 有複數個分區的-邏輯分區資料處理系統,以及中該用、^早 留的指令組更包含: 、11用於保 從該複數個分區的—第―分區巾移除觀 八 以形成移除之記憶體的指令組;以及 〜 邛刀 將該移除的記憶體指派給該複數個分區中八 的指令組,其巾該第二分區含㈣於分析追蹤龍的_^竟°。° 項15之電腦程式產品,其令該用於重新啟動的 組更巴含· 以及 用於將-除錯環境載八該資料處理系統中的指令組; 31 n ^ 案號:94126217 用於不 J00年09月〇8日修正_替換頁 資源的指令^寫該記憶體的該部分而初始化該除錯環境中的 20.如請求項 藉由將記倩體^電腦程式產品’其中該用於初始化的指令組 覆寫該記i體的視為保留之記憶體的—資源清單,避免 作業系統。 21.如請求項15之電腦程式產品,其中該環境係為一 32
TW094126217A 2004-08-05 2005-08-02 Method, data processing system, and computer progr TWI355585B (en)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
US10/912,503 US7346809B2 (en) 2004-08-05 2004-08-05 Bootable post crash analysis environment

Publications (2)

Publication Number Publication Date
TW200627153A TW200627153A (en) 2006-08-01
TWI355585B true TWI355585B (en) 2012-01-01

Family

ID=35758905

Family Applications (1)

Application Number Title Priority Date Filing Date
TW094126217A TWI355585B (en) 2004-08-05 2005-08-02 Method, data processing system, and computer progr

Country Status (3)

Country Link
US (2) US7346809B2 (zh)
CN (1) CN100388231C (zh)
TW (1) TWI355585B (zh)

Families Citing this family (37)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7346809B2 (en) * 2004-08-05 2008-03-18 International Business Machines Corporation Bootable post crash analysis environment
US7533254B2 (en) * 2004-10-29 2009-05-12 Finisar Corporation Volatile memory persistence during warm reboot in an optical transceiver
US7555677B1 (en) * 2005-04-22 2009-06-30 Sun Microsystems, Inc. System and method for diagnostic test innovation
US20060256726A1 (en) * 2005-05-10 2006-11-16 Jennings Lynn M Systems and methods for viewing data in a trace buffer
TWI297433B (en) * 2006-01-12 2008-06-01 Quanta Comp Inc Pci-e debug card
US7818616B2 (en) * 2007-07-25 2010-10-19 Cisco Technology, Inc. Warm reboot enabled kernel dumper
GB2455537A (en) * 2007-12-12 2009-06-17 Symbian Software Ltd Recording information relevant to exceptions
US7818622B2 (en) * 2008-04-29 2010-10-19 International Business Machines Corporation Method for recovering data processing system failures
KR101658485B1 (ko) * 2009-06-18 2016-09-22 삼성전자주식회사 휴대용 단말기에서 디버깅을 위한 부팅 방법 및 장치
US8738937B2 (en) * 2010-07-13 2014-05-27 Intel Corporation Method and apparatus to limit memory power
CN102306119A (zh) * 2011-06-30 2012-01-04 北京新媒传信科技有限公司 捕获全局异常的系统及方法
US8954546B2 (en) 2013-01-25 2015-02-10 Concurix Corporation Tracing with a workload distributor
US9256969B2 (en) 2013-02-01 2016-02-09 Microsoft Technology Licensing, Llc Transformation function insertion for dynamically displayed tracer data
US9323863B2 (en) 2013-02-01 2016-04-26 Microsoft Technology Licensing, Llc Highlighting of time series data on force directed graph
US8997063B2 (en) 2013-02-12 2015-03-31 Concurix Corporation Periodicity optimization in an automated tracing system
US20130283281A1 (en) 2013-02-12 2013-10-24 Concurix Corporation Deploying Trace Objectives using Cost Analyses
US8924941B2 (en) 2013-02-12 2014-12-30 Concurix Corporation Optimization analysis using similar frequencies
US9021447B2 (en) * 2013-02-12 2015-04-28 Concurix Corporation Application tracing by distributed objectives
US8843901B2 (en) 2013-02-12 2014-09-23 Concurix Corporation Cost analysis for selecting trace objectives
US9665474B2 (en) 2013-03-15 2017-05-30 Microsoft Technology Licensing, Llc Relationships derived from trace data
US9575874B2 (en) 2013-04-20 2017-02-21 Microsoft Technology Licensing, Llc Error list and bug report analysis for configuring an application tracer
US8990777B2 (en) 2013-05-21 2015-03-24 Concurix Corporation Interactive graph for navigating and monitoring execution of application code
US9734040B2 (en) 2013-05-21 2017-08-15 Microsoft Technology Licensing, Llc Animated highlights in a graph representing an application
US9280841B2 (en) 2013-07-24 2016-03-08 Microsoft Technology Licensing, Llc Event chain visualization of performance data
US9292415B2 (en) 2013-09-04 2016-03-22 Microsoft Technology Licensing, Llc Module specific tracing in a shared module environment
WO2015071777A1 (en) 2013-11-13 2015-05-21 Concurix Corporation Software component recommendation based on multiple trace runs
US9772927B2 (en) 2013-11-13 2017-09-26 Microsoft Technology Licensing, Llc User interface for selecting tracing origins for aggregating classes of trace data
US9262274B2 (en) * 2013-12-24 2016-02-16 International Business Machines Corporation Persistent data across reboots
US10146657B2 (en) * 2014-03-26 2018-12-04 Intel Corporation Initialization trace of a computing device
US9852172B2 (en) 2014-09-17 2017-12-26 Oracle International Corporation Facilitating handling of crashes in concurrent execution environments of server systems while processing user queries for data retrieval
CN106294108B (zh) * 2015-05-27 2020-04-28 腾讯科技(深圳)有限公司 应用程序测试方法及装置
GB2541454B (en) * 2015-08-21 2021-10-13 Siemens Ind Software Inc Tracing interconnect circuitry
CN107729170B (zh) * 2017-09-29 2021-02-02 苏州浪潮智能科技有限公司 一种hba卡生成转存文件的方法及装置
US12099739B2 (en) * 2020-07-28 2024-09-24 International Business Machines Corporation Trace data protection
TWI798680B (zh) * 2021-04-14 2023-04-11 群聯電子股份有限公司 主機記憶體緩衝區管理方法、記憶體儲存裝置與記憶體控制電路單元
CN112965670B (zh) * 2021-04-22 2023-08-01 群联电子股份有限公司 主机存储器缓冲区管理方法、存储装置与控制电路单元
US20240192847A1 (en) * 2022-12-09 2024-06-13 Dell Products L.P. Data storage placement system

Family Cites Families (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4521847A (en) * 1982-09-21 1985-06-04 Xerox Corporation Control system job recovery after a malfunction
IN169637B (zh) * 1987-07-01 1991-11-23 Digital Equipment Corp
US6035420A (en) * 1997-10-01 2000-03-07 Micron Electronics, Inc. Method of performing an extensive diagnostic test in conjunction with a bios test routine
US6314532B1 (en) * 1998-12-04 2001-11-06 Lucent Technologies Inc. Method and system for recovering from a software failure
US6543010B1 (en) * 1999-02-24 2003-04-01 Hewlett-Packard Development Company, L.P. Method and apparatus for accelerating a memory dump
US6493837B1 (en) * 1999-07-16 2002-12-10 Microsoft Corporation Using log buffers to trace an event in a computer system
US6728907B1 (en) * 2000-04-14 2004-04-27 Microsoft Corporation System and method for self-diagnosing system crashes
US6738928B1 (en) * 2000-06-19 2004-05-18 Hewlett-Packard Development Company, L.P. Method and expert system for analysis of crash dumps
US6910160B2 (en) * 2002-01-10 2005-06-21 International Business Machines Corporation System, method, and computer program product for preserving trace data after partition crash in logically partitioned systems
US7346809B2 (en) * 2004-08-05 2008-03-18 International Business Machines Corporation Bootable post crash analysis environment

Also Published As

Publication number Publication date
TW200627153A (en) 2006-08-01
CN100388231C (zh) 2008-05-14
US20060031717A1 (en) 2006-02-09
US7805636B2 (en) 2010-09-28
US7346809B2 (en) 2008-03-18
CN1731368A (zh) 2006-02-08
US20080104451A1 (en) 2008-05-01

Similar Documents

Publication Publication Date Title
TWI355585B (en) Method, data processing system, and computer progr
JP6530774B2 (ja) ハードウェア障害回復システム
US8135985B2 (en) High availability support for virtual machines
AU2017290267B2 (en) Performance variability reduction using an opportunistic hypervisor
US6934879B2 (en) Method and apparatus for backing up and restoring data from nonvolatile memory
JP5212360B2 (ja) 制御プログラム、制御システムおよび制御方法
TWI632462B (zh) 開關裝置及偵測積體電路匯流排之方法
EP1634168A1 (en) Booting from non-volatile memory
JP2005339561A (ja) 関連アプリケーションに対するトラック・データ・クロスリファレンスを保存する方法及び装置
JP4678396B2 (ja) 仮想マシンモニタをモニタするコンピュータとその方法、および仮想マシンモニタモニタプログラム
CN106569904A (zh) 一种信息存储方法和装置、及服务器
EP3739446B1 (en) Method and system for communication channels to management controller
US20070038891A1 (en) Hardware checkpointing system
CN112634977A (zh) 具有除错存储器接口的芯片及其除错方法
TW201142608A (en) Multiple processors based system and method for controlling PCI-E slots
JP2004302731A (ja) 情報処理装置および障害診断方法
US7302690B2 (en) Method and apparatus for transparently sharing an exception vector between firmware and an operating system
TW200307200A (en) Multiple fault location in a series of devices
Russinovich Inside windows server 2008 kernel changes
TWI875600B (zh) 超執行緒處於不同狀態下之運行信息收集系統及方法
TW202546636A (zh) 超執行緒處於不同狀態下之運行信息收集系統及方法
JP2001051854A (ja) 情報管理システム
JPH1153214A (ja) パーソナルコンピュータのブート不良検出システム
JP2016076152A (ja) エラー検出システム、エラー検出方法およびエラー検出プログラム
TW201216156A (en) Computer system booting method

Legal Events

Date Code Title Description
MM4A Annulment or lapse of patent due to non-payment of fees