JP2002202901A - フルダンプファイルからのミニダンプファイルの作成 - Google Patents

フルダンプファイルからのミニダンプファイルの作成

Info

Publication number
JP2002202901A
JP2002202901A JP2001308360A JP2001308360A JP2002202901A JP 2002202901 A JP2002202901 A JP 2002202901A JP 2001308360 A JP2001308360 A JP 2001308360A JP 2001308360 A JP2001308360 A JP 2001308360A JP 2002202901 A JP2002202901 A JP 2002202901A
Authority
JP
Japan
Prior art keywords
data structure
file
dump file
crash dump
crash
Prior art date
Legal status (The legal status 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 status listed.)
Pending
Application number
JP2001308360A
Other languages
English (en)
Inventor
Andre F Vachon
エフ.バッコン アンドレ
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Microsoft Corp
Original Assignee
Microsoft Corp
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 Microsoft Corp filed Critical Microsoft Corp
Publication of JP2002202901A publication Critical patent/JP2002202901A/ja
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/28Error detection; Error correction; Monitoring by checking the correct order of processing
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/0703Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
    • G06F11/0766Error or fault reporting or storing
    • G06F11/0778Dumping, i.e. gathering error/state information after a fault for later diagnosis
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/0703Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
    • G06F11/0706Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation the processing taking place on a specific hardware platform or in a specific software environment
    • G06F11/0715Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation the processing taking place on a specific hardware platform or in a specific software environment in a system implementing multitasking
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR 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
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/22Detection or location of defective computer hardware by testing during standby operation or during idle time, e.g. start-up testing
    • G06F11/2268Logging of test results

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Quality & Reliability (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Health & Medical Sciences (AREA)
  • Biomedical Technology (AREA)
  • Computer Hardware Design (AREA)
  • Debugging And Monitoring (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

(57)【要約】 【課題】 大規模記号テーブルファイルを参照すること
なくシステムクラッシュダンプ又はコアダンプファイル
からサマリダンプファイルを生成するシステムと方法の
提供。 【解決手段】 従来のクラッシュダンプファイルに見ら
れなかった参照を含む、ある種の適切な情報(例えばデ
ータ構造)への参照を格納した参照部分を持つクラッシ
ュダンプファイル。参照部分で参照されるデータ構造は
クラッシュダンプファイルの常駐障害の分析に最適なこ
とが解っている。クラッシュダンプファイルはOSの完
全クラッシュダンプファイル又はカーネルメモリダンプ
でもよいし、アプリケーションプログラムのクラッシュ
ダンプファイルでもよい。参照部分の情報を利用してク
ラッシュダンプ又はコアダンプファイルから適切な情報
を抽出するためのスタンドアロン型抽出ツールも提供さ
れ、このツールがクラッシュダンプファイルのサマリ又
はミニダンプファイルを生成する。

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】本発明はコンピュータシステ
ムに関し、より具体的に言えば、システムキャッシュダ
ンプファイルのサマリ(summary)を生成するた
めのシステムおよび方法に関する。さらに本発明は、ア
プリケーションプログラムのキャッシュダンプファイル
のサマリを生成するためのシステムおよび方法に関す
る。
【0002】
【従来の技術】オペレーティングシステムの中には「ク
ラッシュダンプ」または「コアダンプ」をサポートして
いるものが多い。これらは典型的に、オペレーティング
システムが内部不良(failure)を認識したとき
に、オペレーティングシステムが生成するものである。
従来のオペレーティングシステムでは、最小モードのオ
ペレーションに切り換え、オペレーティングシステムの
状態情報(stateinformation)をディ
スク上のファイルに保存しようと試みる。その後、ソフ
トウェア開発者またはシステム管理者がこの保存された
状態情報を使用し、たとえば後日オフラインで、オペレ
ーティングシステムの不良を分析することができる。こ
のような分析を、「デバッギング」と呼ぶことが多い。
一般に、完全クラッシュダンプとは、システムのクラッ
シュを引き起こす障害が発生したときに、物理的にマシ
ン内に存在するすべてのメモリを、クラッシュダンプフ
ァイルと呼ばれるファイルにダンプすることである。ク
ラッシュダンプファイルは、障害(fault)時にマ
シン上にある様々な構成要素の状態に関するデータ構造
へのアクセスを、開発者に提供する。その後開発者は、
これらのデータ構造を分析してクラッシュの原因を特定
することができる。
【0003】従来から、クラッシュダンプファイルのサ
イズは、64メガバイトから数ギガバイトまでが可能で
ある。マシンインストラクションのビットサイズが増加
し(たとえば、32ビット、64ビット、128ビッ
ト)、これらマシンのメモリサイズが増加する(たとえ
ば、16ギガバイト、32ギガバイト、64ギガバイ
ト、128ギガバイト)と、これらのフルクラッシュダ
ンプファイルのサイズは、天文学的割合で増加すること
になる。このようにフルダンプファイル(fulldu
mp file)のサイズが大きいと、内部不良を引き
起こした障害を割り出すためにシステム内の膨大な量の
情報をすべて読み取るのが非常に面倒な作業になる。し
たがって、障害時に物理メモリのサマリが生成できるよ
うなシステムが開発されてきた。この物理メモリのサマ
リが、多くの環境から障害を割り出す(isolat
e)のに必要な最低情報量を含む、小規模ダンプファイ
ルまたはミニダンプファイルと呼ばれる。たとえば、ユ
ーザがMicrosoft(登録商標)Windows
(登録商標)2000オペレーティングシステムを使用
すると、障害状況で、完全メモリダンプ、カーネルメモ
リダンプ、または小規模ダンプの、いずれのファイルを
作成するかを選択することができる。小規模ダンプファ
イルには、基本的なオペレーティングシステム不良を即
時に分析するのに使用できる、システムの物理メモリの
非常に小さな情報サブセットが含まれる。Micros
oft(登録商標)Windows(登録商標)200
0の場合、このダンプファイルのサイズは64キロバイ
トであり、これは完全クラッシュダンプファイルのおよ
そ1000分の1から100万分の1である。
【0004】ダンプファイルは、ユーザがオペレーティ
ングシステムの問題をオペレーティングシステムの販売
者または作成者に報告するための最も重要な方法であ
る。ただし、完全ダンプファイルはサイズが大きいため
に、通信リンクを介して完全ダンプファイルを転送する
のは非効率的である。その一方で、小規模ダンプファイ
ルまたはミニダンプファイルであれば、通信リンクを介
して簡単に転送することができる。ただしミニダンプフ
ァイルは、状況によって、開発者がある種の不良を割り
出すのに不十分な場合がある。理想的な状況は、開発者
に完全クラッシュダンプファイルと不良に関するミニダ
ンプファイルの両方が提供されることであろう。ただ
し、オペレーティングシステムの制約により、不良時に
完全ダンプファイルとミニダンプファイルの両方を同時
に生成することはできない。フルクラッシュダンプファ
イルからミニダンプファイルへ適切な情報を抽出するた
めのツールでは、ツールが、大規模記号テーブルファイ
ルに常駐するすべての記号情報(symbol inf
ormation)をロードして、ダンプファイルに常
駐するデータ構造を突き止められるようにし、その結果
ミニダンプファイルに必要なすべての主要データ構造が
完全ダンプファイルから抽出できるようにする必要があ
る。記号とは、マシンの物理メモリに常駐する、人間が
読み取ることのできるデータ構造表現のことである。こ
れらの記号テーブルファイルも、分析に有用な情報セッ
トを生成するのに必要な適切な情報を突き止めるために
検索するには、非常に大型であり大規模である。
【0005】
【発明が解決しようとする課題】したがって、当技術分
野ではまだ考慮されていない、クラッシュダンプファイ
ルからミニダンプファイルを生成するためのシステムお
よび方法が必要となる。
【0006】
【課題を解決するための手段】大規模記号テーブルファ
イルを参照する必要なしに、システムクラッシュダンプ
またはコアダンプファイルからサマリダンプファイルを
生成するためのシステムおよび方法が提供される。オペ
レーティングシステムの多くは、クラッシュダンプまた
はコアダンプとして知られているものをサポートしてお
り、これは、オペレーティングシステムが内部不良を認
識すると、オペレーティングシステムによって生成され
るファイルである。一般に、クラッシュダンプとは、障
害時にマシン内に存在するすべての物理メモリのダンプ
である。その後開発者は、障害発生時のシステム状態を
分析するために、このクラッシュダンプにアクセスする
ことができる。クラッシュダンプファイルは64メガバ
イトから数ギガバイトまで可能であり、これら大規模フ
ァイルの分析はかなり面倒であることが実証されてい
る。ただし、クラッシュダンプファイルにある情報の一
部を分析することによって、多くの障害を割り出すこと
ができる。クラッシュダンプファイル内のデータ構造が
数字の単純なブロックであるため、一般に開発者は、デ
ータ構造が常駐している可能性のある場所を特定するた
めに、大規模記号テーブルファイルを参照する必要があ
る。
【0007】したがって、本発明は、従来のクラッシュ
ダンプファイルでは見られなかった参照を含む、ある種
の適切な情報(たとえばデータ構造)への参照を格納し
た参照部分を、クラッシュダンプファイルに提供するこ
とに関する。参照部分で参照されるデータ構造は、クラ
ッシュダンプファイルに常駐する障害を分析するのに最
適であることがわかっている。クラッシュダンプファイ
ルは、オペレーティングシステムの完全クラッシュダン
プファイルまたはカーネルメモリダンプであってよい。
或いはクラッシュダンプファイルは、アプリケーション
プログラムのクラッシュダンプファイルであってよい。
参照部分の情報を利用してクラッシュダンプまたはコア
ダンプファイルから適切な情報を抽出するための、スタ
ンドアロン型の抽出ツールも提供される。次いでこのス
タンドアロン型ツールが、クラッシュダンプファイルの
サマリまたはミニダンプファイル(たとえばサイズが6
4K)を生成する。スタンドアロン型ツールは、Cおよ
び/またはC++などのプログラミング言語で作成され
たコンパイル済みの実行可能コードである。サマリまた
はミニダンプファイルは、システム開発者などによる分
析のために、ネットワークを介して送信するか、または
ポータブルメモリ装置に保存することが簡単にできる。
スタンドアロン型ツールがコンパイル済み実行可能コー
ドである場合、リモートで実行し、Java(登録商
標)AppletまたはActiveX Contro
lの形式で提供することが可能であるため、ツールをリ
モートサイトから呼び出して、ローカルマシンにダウン
ロードし、ローカルマシン上で実行することができる。
その後ミニダンプファイルを生成し、分析のためにリモ
ートサイトに伝送することができる。
【0008】前述および関連する目的を達成するため
に、本明細書では、以下の説明および添付の図面に関連
して、本発明のある種の例示的態様について記載する。
ただしこれらの態様は、本発明の原理が使用できる様々
な方法のうちのいくつかを示したものであって、本発明
はこうした態様およびそれらの均等物をすべて含むこと
を意図している。本発明の以下の詳細な説明を図面に関
連して考察することにより、本発明の他の利点および新
規な特徴が明らかになろう。
【0009】
【発明の実施の形態】次に本発明について図面を参照し
ながら説明するが、同じ要素を表すには同じ参照番号が
使用されている。本発明について、完全ダンプファイル
または部分ダンプファイルからミニダンプファイルまた
はサマリファイルを生成するためのシステムおよび方法
を参照しながら説明する。ミニダンプファイルまたはサ
マリファイルを生成するための手段は、メモリクラッシ
ュダンプファイルから特定のデータ構造を抽出する、ス
タンドアロン型実行可能抽出ツールの可能性がある。ス
タンドアロン型実行可能抽出ツールは、メモリクラッシ
ュダンプファイルから特定のデータ構造を抽出する。抽
出ツールは、システムクラッシュを経験するローカルマ
シン上に常駐することができる。その後抽出ツールを利
用して、システムのリブート後、完全クラッシュダンプ
ファイルまたはカーネルクラッシュダンプファイルか
ら、クラッシュダンプのサマリを生成する。サマリクラ
ッシュダンプファイルはローカルに分析し、コンピュー
タまたはオペレーティングシステムの販売者による分析
のために、通信リンクを介して伝送することができる。
或いは、スタンドアロン型抽出ツールがリモート位置に
常駐し、ここでスタンドアロン型ツールをローカルマシ
ンから起動して、ローカルマシンでダウンロードおよび
実行し、通信リンクを介してサマリをリモート位置に転
送することができる。
【0010】スタンドアロン型抽出ツールは、クラッシ
ュを引き起こす障害の発生源を特定するのに理想的に好
適なクラッシュダンプファイルから、特定の情報を抽出
するように動作可能である。本発明は、クラッシュダン
プファイル内に特有の形式化された参照部分を提供する
ことを含む。参照部分に関する埋め込み知識(embe
dded knowledge)を有する抽出ツールも
提供される。その後抽出ツールは、埋め込み知識を利用
してクラッシュダンプファイル内の特定情報を探すこと
によって、サマリファイルまたはミニダンプファイルを
生成することができる。サマリファイルまたはミニダン
プファイルを即時に生成し、その後の分析のために通信
リンクを介して簡単に伝送することができる。抽出ツー
ルは、クラッシュダンプファイルが完全ダンプファイル
またはカーネルダンプファイルである、カーネルモード
クラッシュに適用可能である。或いは抽出ツールは、ア
プリケーションプログラムで発生する障害の結果として
発生した、ユーザモードクラッシュに適用可能である。
【0011】本明細書および特許請求の範囲で使用され
る「構成要素(component)」という用語は、
ハードウェア、ハードウェアとソフトウェアの組合せ、
ソフトウェア、または実行中ソフトウェアのいずれか
の、コンピュータ関連エンティティを表すものである。
たとえば構成要素は、プロセッサ上で実行中の1つまた
は複数のプロセス、1つまたは複数のオブジェクト、1
つまたは複数の実行可能プログラム、1つまたは複数の
実行スレッド、1つまたは複数のプログラム、プロセッ
サ、およびコンピュータであってよい。図によれば、サ
ーバ上で実行中のアプリケーションおよびサーバは、ど
ちらも構成要素とすることができる。
【0012】図1は、ユーザモード部分14およびカー
ネルモード部分16を有する物理メモリ構成要素12を
含む、マシン10の一例を示す図である。ユーザモード
部分14には、物理メモリ12の上部すなわちユーザモ
ード部分14に常駐する、複数プロセス18(たとえば
アプリケーションプログラムプロセス)、またはプロセ
スの一部が含まれる。カーネルモード部分16には、物
理メモリ12の下部、すなわちカーネルモード部分16
に常駐する、いくつかのプロセス(たとえばオペレーシ
ョンシステムプロセス)、またはプロセスの一部が含ま
れる。カーネルモード部分16で実行中のプロセスに
は、メモリマネージャプロセス20、カーネルプロセス
24、クラッシュダンププロセス26、1つまたは複数
のロードモジュール28、および他のオペレーティング
システムプロセス22が含まれる。上記それぞれのプロ
セスは、対応プロセスに関連付けられた任意数のスレッ
ドを含むことができる。スレッドとは、マシンのプロセ
ッサ内で実行するためにカーネルがスケジューリングす
る、プロセス内のエンティティである。
【0013】マシンが(たとえば、典型的に物理メモリ
のカーネルモード部分で発生するエラーによって)クラ
ッシュすると、カーネルは中断され、障害が発生した時
点の物理メモリ12の状態を反映するクラッシュダンプ
ファイル30を作成する、クラッシュダンププロセス2
6を呼び出す。本発明では、クラッシュダンププロセス
26は、クラッシュダンプファイル30に、物理メモリ
データ構造部分34に常駐する特定データ構造への特定
の参照位置情報を含む参照部分32を提供するように適
合される。この特定データ構造は、開発者が障害の原因
を特定するのに好適な情報を提供する。典型的には、ク
ラッシュダンプファイル30は完全クラッシュダンプフ
ァイルである。或いはクラッシュダンプファイル30
は、カーネルメモリダンプファイルであってもよい。完
全メモリダンプファイルには、クラッシュ時にシステム
上にあるすべての物理メモリが含まれる。このタイプの
ダンプでは、ファイルが少なくとも物理メモリのサイズ
であることが必要である。カーネルメモリダンプには、
クラッシュ時の物理メモリにあるカーネルモードの読出
し/書込みページのみが含まれる。カーネルメモリダン
プには、ユーザプロセスに属するページは含まれない。
さらに、カーネルメモリダンプのサイズは、オペレーテ
ィングシステムによって割り振られるカーネルモードメ
モリの量、およびマシン上にあるドライバの数とサイズ
によって異なるため、これを予測する方法はない。
【0014】図1はクラッシュダンプファイル30を生
成するためのクラッシュダンププロセス26の利用法を
示す図であるが、クラッシュダンプファイル30は様々
なプロセス、機能、および/または手段を使用して生成
できることが理解されよう。たとえば、クラッシュダン
プファイル30を生成するためのコードを含むクラッシ
ュダンプルーチンのセットを、メインオペレーティング
システムプロセスによって起動し、クラッシュダンプフ
ァイル30を生成することができる。特定オペレーティ
ングシステムの使用に基づいて、他の実施を使用するこ
とができる。
【0015】図2は、本発明の一態様による抽出ツール
40を示す構成図である。抽出ツール40には、クラッ
シュダンプファイル30の参照部分32のフォーマット
の埋め込み知識が含まれる。抽出ツール40は、埋め込
み知識を使用することによる、参照部分の読出し、解
釈、および書込みの方法を知っている。たとえば抽出ツ
ール40は、物理メモリのデータ構造部分34に常駐す
る特定データ構造への参照を利用して、障害の割り出し
を容易にするための適切なデータを抽出することができ
る。抽出ツール40は、典型的にはコンパイル済み実行
可能コード(たとえばコンパイル済みCコード)であ
り、参照部分32の埋め込み知識が抽出ツール40内で
コンパイルされている。抽出ツール40は、コアダンプ
ファイル30を開き、物理メモリのデータ構造部分34
から特定データ構造を抽出するように動作可能である。
次いで抽出ツール40が、新しいミニダンプファイルま
たはサマリファイル50を開くかまたは作成する。図2
に示されるように、ミニダンプファイルまたはサマリフ
ァイル50は、参照部分52、第2の参照部分54、お
よび特定データ構造部分56を有するように作成され
る。たとえば、第1の参照部分52および第2の参照部
分54が、サマリファイル50のヘッダである場合があ
る。抽出ツール40は、クラッシュダンプファイル30
の参照部分32と同様の参照部分52をサマリファイル
に提供する。抽出ツール40は、サマリファイル50
に、ミニダンプファイルまたはサマリダンプファイル5
0の特定データ構造部分56に常駐する特定データ構造
への特定参照位置情報を含む、第2の参照部分54も提
供する。特定データ構造部分56に常駐する特定データ
構造は、マシン10の障害割り出しに理想的に好適な、
物理メモリのデータ構造部分34から抽出されるデータ
構造である。
【0016】図3は、完全クラッシュダンプファイル6
0の一例に常駐する構成要素を示す構成図である。完全
クラッシュダンプファイル60には、参照部分62およ
び物理メモリのデータ構造部分64が含まれる。参照部
分62は、デジタル署名、時間日付スタンプ(Time
Data Stamp)、物理メモリのデータ構造部
分64内にある特定データ構造への複数の参照、ページ
ディレクトリへの参照、およびメモリ記述子(desc
riptor)テーブルなどのフィールドを含むヘッダ
である可能性がある。ページディレクトリおよびメモリ
記述子テーブルは、仮想メモリアドレスと実際の物理メ
モリアドレスとの間で復号およびマッピングを行うため
(たとえば仮想/物理アドレス変換)の情報を提供す
る。仮想/物理アドレス変換および物理/仮想アドレス
変換が、当業者によく知られたものであることを理解さ
れよう。
【0017】複数の参照には、ロードモジュールリスト
(たとえばデバイスドライバ)への参照(たとえば仮想
アドレス)、プロセッサブロック(たとえばカーネルデ
ータブロック)への参照(たとえば仮想アドレス)、診
断データブロック(たとえばカーネルデバッガブロッ
ク)への参照(たとえば仮想アドレス)、およびページ
ディレクトリテーブルへの参照(たとえば物理アドレ
ス)が含まれる。プロセッサブロックおよび診断データ
ブロックへの参照を提供すると、従来はエンジニア診断
障害を転換させる(reverse)ために実行され
た、大規模記号テーブルファイルを利用した参照の必要
がなくなる。大規模記号テーブルファイルとは、物理メ
モリに常駐するデータへの人間が読取り可能な参照を有
するテーブルのことである。本発明には、クラッシュダ
ンプファイルの参照部分にこのデータへの参照を提供す
ることが含まれるため、大規模記号テーブルファイル内
でこれらの参照を検索する必要がない。プロセッサブロ
ックへの参照は、物理メモリのデータ構造部分64に常
駐するプロセッサブロックデータ構造66を参照する。
ロードモジュールリストへの参照は、物理メモリのデー
タ構造部分64に常駐するロードモジュールリストデー
タ構造70を参照する。診断データブロックへの参照
は、物理メモリのデータ構造部分64に常駐する診断デ
ータブロックデータ構造68を参照する。ページディレ
クトリへの参照とは、物理メモリのデータ構造部分64
に常駐するページディレクトリテーブル67のことであ
る。各データ構造には、障害時のマシンの物理メモリ状
態に関するいくつかのフィールドが含まれる。
【0018】たとえば、プロセッサブロックデータ構造
66は、現在のスレッドおよび障害時にプロセッサによ
って実行されている現在のプロセスの状態を含むことが
できる。さらに、プロセッサブロックデータ構造66
は、障害時のカーネルスタックおよび/またはオペレー
ティングシステムスタックを含むことができる。コアダ
ンプファイルの実際の物理メモリ部分に常駐している上
記データ構造は、マシンのカーネルおよび/またはオペ
レーティングシステムによって引き起こされるマシンク
ラッシュで、障害の割り出しを容易にするものであるこ
とがわかっていることを理解されよう。追加のまたは異
なるタイプの情報が、異なるタイプの障害を有する異な
るマシンおよびオペレーティングシステムの構成では、
さらに有用である場合やあまり有用でない場合があるこ
とを理解されよう。
【0019】抽出ツール40は、クラッシュダンプファ
イル60の参照部分62にある情報を利用して、物理メ
モリのデータ構造部分64以外にある情報を抽出する。
本発明の一態様では、抽出ツール40が参照部分62に
あるメモリ記述子テーブルを利用して、物理メモリのデ
ータ構造部分64でページディレクトリを突き止める。
その後抽出ツール40は、参照部分62で突き止めた、
ロードモジュールリスト、プロセッサブロック、および
診断データブロックの様々な仮想アドレスを、ページデ
ィレクトリデータを使用して物理アドレスに変換する。
その後、物理メモリのデータ構造部分64およびサマリ
ファイルを生成するために利用された突き止めた情報の
中から、物理アドレスが検索される。
【0020】図4は、図2に示された抽出ツール40に
よって生成されたミニダンプファイルまたはサマリクラ
ッシュダンプファイル80の一例に常駐する構成要素を
示す構成図である。ミニダンプファイル80には、一般
に抽出ツールがミニダンプファイルを生成するのに利用
したクラッシュダンプファイルの参照部分の参照と一致
する、第1の参照部分82が含まれる。ミニダンプファ
イル80には、第2の参照部分84および特定データ構
造部分86が含まれる。本発明の一態様では、第1参照
部分82と第2の参照部分84のサイズが約8キロバイ
ト、特定データ構造部分86のサイズが約56キロバイ
トで、合計が64キロバイトとなる。特定データ構造部
分86には、現在のスレッドデータ構造88、現在のプ
ロセスデータ構造90、現在のスタックデータ構造9
2、ロードモジュールリストデータ構造94、およびメ
モリマネジメント情報ブロック96が含まれる。
【0021】現在のスレッドデータ構造88とは、障害
時の実行スレッド(たとえばEthread)状態のこ
とである。現在のプロセスデータ構造90とは、障害時
の実行スレッドのプロセス(たとえばEProces
s)状態のことである。典型的には、プロセスデータ構
造90には、プロセスが使用できる仮想メモリアドレス
のセットであるプライベート仮想アドレス空間と、プロ
セスの仮想アドレス空間にマップされる初期コードおよ
びデータを定義する実行可能プログラムと、プロセス内
のすべてのスレッドにアクセス可能なセマフォ、通信ポ
ート、およびファイルなどの様々なシステム資源へのオ
ープンハンドルリストと、セキュリティコンテキスト情
報と、固有識別子と、少なくとも1つの実行スレッドと
に関する情報が含まれる。現在のスタックデータ構造9
2には、障害時のカーネル(たとえばカーネルの最終実
行時のカーネルのプロセッサレジスタ)のスタック状態
が含まれる。ロードモジュールリストデータ構造94と
は、障害時にオペレーティングシステムによってロード
されるドライバ状態のことである。メモリマネジメント
情報とは、物理メモリアドレスへの仮想メモリアドレス
のマッピングに関する情報、並びに障害時のメモリマネ
ジメントシステム状態のことである。
【0022】第2の参照部分84には、データ構造に関
する位置情報を提供するために複数の参照が提供され
る。複数の参照(たとえばポインタ)には、現在のスレ
ッドデータ構造88への参照、現在のプロセスデータ構
造90の位置への参照、現在のスタックデータ構造92
の位置への参照、ロードモジュールリストデータ構造9
4の位置への参照、並びに、サマリダンプファイル80
の特定データ構造部分86に配置されたメモリマネジメ
ント情報96への参照が含まれる。したがって、開発者
またはアプリケーションは、クラッシュ時のデータ構造
の様々な状態を突き止めるための参照部分を利用して、
障害に関する情報を即時に突き止めることができる。
【0023】図1〜4に関して上記で説明した構造に鑑
みて、本発明の特定態様を提供するための方法は、図5
の流れ図に関してよりよく理解することができよう。図
5の方法は、説明を簡略化するために一連のステップと
して例示および記載されているが、本発明はこのステッ
プの順序に限定されるものでなく、ステップの中には本
発明に従って、本明細書に例示および記載された他のス
テップとは異なる順序で発生し、並びに/或いは、それ
らと同時に発生するものもある。さらに、本発明の一態
様に従った方法を実施するために、例示されたすべての
ステップが必要なわけではない。
【0024】図5は、システムクラッシュによって生成
されたクラッシュダンプファイルからサマリファイルを
生成するための特定の一方法を示す図である。ステップ
100では、オペレーティングシステムに常駐するクラ
ッシュダンプ構成要素が、障害時にシステムに存在する
物理メモリの状態のクラッシュダンプファイルを生成す
る。クラッシュダンプファイルには、クラッシュダンプ
ファイルの特定データ構造への参照を提供する参照部分
が含まれる。ステップ110では、抽出ツールがクラッ
シュダンプファイルを開き、特定データ構造の位置を特
定するために、クラッシュダンプファイルの参照部分を
抽出する。次いで抽出ツールはステップ120で、参照
部分で参照された位置に基づいて特定データ構造を抽出
する。ステップ130では、抽出ツールが特定の所定サ
イズの新しいサマリファイルを開き、参照部分および特
定データ構造のコピーをこの新しいサマリファイルに挿
入する。次いで抽出ツールがステップ140で、新しい
サマリファイルの特定データ構造への参照を含む第2の
参照部分を、新しいサマリファイルに提供する。
【0025】抽出ツール構成要素はスタンドアロン型ツ
ールであるため、クラッシュダンプファイルからリモー
ト位置に常駐する可能性があることを理解されよう。し
たがってスタンドアロン型ツールは、リモートマシンに
常駐し、ローカルマシンで起動することができる。図6
は、システムクラッシュが発生した後に、ローカルマシ
ンに常駐するクラッシュダンプファイル182を有す
る、ローカルマシン180を示す構成図である。リモー
トマシン190は、通信リンク184によってローカル
マシン180に接続される。抽出ツール192はリモー
トサイト190に常駐する。たとえば、ローカルマシン
180がリブートされた後、Java(登録商標) A
ppletまたはActive X Controlを
介して、抽出ツール192をWebサイト上で起動する
ことができる。Java(登録商標) Appletま
たはActive X Controlの起動により、
抽出ツール192をローカルマシン180にダウンロー
ドし、ローカルマシン180上で実行させ、サマリダン
プファイルをリモートマシン190に伝送させる。上記
アプリケーションは、コンピュータの技術サポートサイ
トまたはオペレーティングシステム販売者にとって理想
的には好適であるため、開発者はリモートマシンでサマ
リダンプファイルを受け取り、システムクラッシュの原
因となった障害を割り出すためにサマリダンプファイル
を再検討することができる。サマリダンプファイルによ
って障害が特定できない場合、次いで開発者はさらに詳
しく評価するためにクラッシュダンプファイル全体を要
求することができる。
【0026】本発明は、クラッシュ時の物理メモリ全体
の状態を表すシステムクラッシュダンプファイル、また
はクラッシュ時のカーネル関係情報の内容を表すカーネ
ルクラッシュダンプファイルに限定されていないことが
理解されよう。言い換えれば、本発明は、カーネルモー
ドで動作中の情報に限定されるものではないが、アプリ
ケーションプログラムの実行中にアプリケーションプロ
グラム内で生成された障害の結果として発生するアプリ
ケーションクラッシュダンプファイルなどの、ユーザモ
ードに関する情報にも適用可能である。たとえば、アプ
リケーションに関するユーザモードダンプファイルのサ
イズは、50〜100メガバイトまで可能である。この
ユーザモードダンプファイルも、通信リンクを介してコ
ンピュータまたはオペレーティングシステムの販売者に
返信するには大規模すぎる。
【0027】図7は、物理メモリ構成要素の一部分21
0(たとえば実際の物理メモリのユーザモード部分)を
含むマシン200の一例を示す図である。ユーザモード
部分210には、ユーザモード部分210内で実行中の
少なくとも1つのプロセスが含まれる。この例では、実
行中のプロセスに、プロセスがロードしたモジュールの
リスト214、プロセススタック216、およびプロセ
スが所有する複数のスレッド218が含まれる。このプ
ロセスがクラッシュする(たとえばアプリケーションプ
ログラムが打ち切られる)と、クラッシュダンププロセ
ス220は、障害が発生したときの仮想メモリ内にある
プロセスの状態を反映するアプリケーションクラッシュ
ダンプファイル230を作成する。本発明では、クラッ
シュダンププロセス220は、仮想メモリのデータ構造
部分234に常駐するプロセスの特定データ構造への特
定の参照位置情報を含む、クラッシュダンプファイル2
30内の参照部分232を提供するように適合される。
この特定のデータ構造が、アプリケーション開発者が障
害の原因を特定するのに非常に好適な情報を提供する。
【0028】図8は、本発明の一態様によるユーザモー
ド抽出ツール240を示す構成図である。ユーザモード
抽出ツール240には、アプリケーションクラッシュダ
ンプファイル230の参照部分232形式の埋め込み知
識が含まれる。ユーザモード抽出ツール240は、参照
部分の読出し、解釈、および書込みの方法を知ってい
る。たとえば、抽出ツール240は、障害の割り出しを
容易にする適切なデータを抽出するために、仮想メモリ
のデータ構造部分234に常駐する特定データ構造への
参照を使用することができる。抽出ツール240は、典
型的には、参照部分232の埋め込み知識が抽出ツール
240内でコンパイルされた、コンパイル済み実行可能
コード(たとえばコンパイル済みCコード)である。ユ
ーザモード抽出ツール240は、アプリケーションクラ
ッシュダンプファイル230を開き、物理メモリのデー
タ構造部分234で特定データ構造の位置を突き止めて
これを抽出する。次いでユーザモード抽出ツール240
は、特定データ構造のみを含む新しいミニダンプファイ
ルまたはサマリファイルを開くかまたは作成する。
【0029】図8に示されたように、ミニダンプファイ
ルまたはサマリファイル250は、参照部分252、第
2の参照部分254、および特定データ構造部分256
を含むように作成される。たとえば、第1の参照部分2
52および第2の参照部分254は、サマリファイル2
50のヘッダであってよい。ユーザモード抽出ツール2
40は、アプリケーションクラッシュダンプファイル2
30の参照部分232と同様の参照部分252を、サマ
リファイル250に提供する。さらにユーザモード抽出
ツール240は、サマリファイル250に第2の参照部
分254も提供する。この第2の参照部分254には、
ユーザモードのミニダンプファイルまたはサマリダンプ
ファイル250のデータ構造部分256に常駐する特定
データ構造への特定参照ロケーション情報が含まれる。
【0030】図9は、図8に示された抽出ツール240
によって生成されるユーザモードのミニダンプファイル
またはサマリクラッシュダンプファイル280の一例に
常駐する構成要素を示す構成図である。ミニダンプファ
イル280には、一般にユーザモード抽出ツール240
がユーザモードのミニダンプファイル280を生成する
のに利用したクラッシュダンプファイルの参照部分の参
照と一致する、第1の参照部分282が含まれる。ユー
ザモードのミニダンプファイル280には、第2の参照
部分284および特定データ構造部分286が含まれ
る。特定データ構造部分286には、ロードモジュール
リストデータ構造288、例外記録データ構造290、
第1のスレッド構造292、n番目のスレッドデータ構
造296までの第2のスレッドデータ構造294が含ま
れる。ロードモジュールリストデータ構造288とは、
障害時にアプリケーションプログラムによってロードさ
れるドライバの状態を表すものである。例外記録データ
構造290は、障害が発生した場所を記述するデータブ
ロックである。第1のスレッドデータ構造292、第2
のスレッドデータ構造294からn番目のスレッドデー
タ構造296までが、障害時の様々なスレッドの状態を
表すものである。第2の参照部分284には、ユーザモ
ードのミニファイルまたはサマリファイル280の特定
データ構造部分286に常駐する、様々なデータ構造の
参照位置への参照(たとえばポインタ)が含まれる。追
加のまたは異なるタイプの情報が、異なるタイプの障害
を有する異なるマシンおよびアプリケーションプログラ
ムの構成では、さらに有用である場合やあまり有用でな
い場合があることを理解されよう。
【0031】図6〜9に関して上記で説明した構造に鑑
みて、本発明の特定態様を提供するための方法は、図1
0の流れ図に関してよりよく理解することができよう。
図10の方法は、説明を簡略化するために一連のステッ
プとして例示および記載されているが、本発明はこのス
テップの順序に限定されるものでなく、ステップの中に
は本発明に従って、本明細書に例示および記載された他
のステップとは異なる順序で発生し、並びに/或いは、
それらと同時に発生するものもある。さらに、本発明の
一態様に従った方法を実施するために、例示されたすべ
てのステップが必要なわけではない。
【0032】図10は、アプリケーションプログラム障
害によって生成されたクラッシュダンプファイルからユ
ーザモードサマリファイルを生成するための特定の一方
法を示す図である。ステップ300では、マシン上のク
ラッシュダンププロセスが、障害時にユーザモードで実
行中であるアプリケーションプログラムの仮想メモリの
状態を表す、ユーザモードクラッシュダンプファイルを
生成する。ユーザモードクラッシュダンプファイルに
は、アプリケーションプログラム障害の障害割り出しに
理想的に好適な、クラッシュダンプファイル内の特定デ
ータ構造への参照を提供する参照部分が含まれる。ステ
ップ310では、ユーザモード抽出ツールがユーザモー
ドクラッシュダンプファイルを開き、特定データ構造の
位置を特定するために、クラッシュダンプファイルの参
照部分を抽出する。次いでユーザモード抽出ツールは、
ステップ320で、ユーザモードクラッシュダンプファ
イルの参照部分で参照された位置に基づいて、特定のデ
ータ構造を抽出する。ステップ330では、ユーザモー
ド抽出ツールが特定の所定サイズの新しいサマリファイ
ルを開き、参照部分および特定データ構造のコピーを新
しいサマリファイルに挿入する。次いでユーザモード抽
出ツールがステップ340で、新しいサマリファイルの
特定データ構造への参照を含む第2の参照部分を、新し
いサマリファイルに提供する。
【0033】カーネルモードおよびユーザモードの抽出
ツールは、上記例では別々の構成要素として表されてい
るが、抽出ツールは単一のツールに組み合わせることが
できる。単一ツールは、クラッシュダンプファイルのタ
イプまたは位置を認識し、クラッシュダンプファイルが
カーネルモードかユーザモードのどちらのクラッシュダ
ンプファイルであるかに基づいて抽出を実行するように
動作可能である。
【0034】図11を参照すると、本発明を実施するた
めの例示的システムには、処理ユニット421、システ
ムメモリ422、およびシステムメモリから処理ユニッ
ト421までを含む様々なシステム構成要素を結合する
システムバス423を含む、従来のパーソナルコンピュ
ータまたはサーバコンピュータ420が含まれる。処理
ユニットは、Intel(登録商標)並びにCyrix
(登録商標)、AMD(登録商標)、およびNexge
n(登録商標)を含む他社のIntel x86、Pe
ntium(登録商標)および互換マイクロプロセッ
サ、DigitalのAlpha(登録商標)、MIP
S Technology、NEC、IDT、Siem
ens、および他社のMIPS(登録商標)、並びにI
BMおよびMotorolaのPowerPC(登録商
標)を含む、様々な市販のいずれのプロセッサであって
もよい。デュアルマイクロプロセッサ(Dual mi
croprocessor)および他の多重プロセッサ
アーキテクチャを、処理ユニット421として使用する
こともできる。
【0035】システムバスは、いくつか例を挙げるとP
CI、VESA、Microchannel、ISA、
およびEISAなど、従来の多彩なバスアーキテクチャ
のいずれかを使用する、メモリバスまたはメモリコント
ローラ、周辺バス、およびローカルバスを含む、いくつ
かのタイプのバス構造のいずれであってもよい。システ
ムメモリには、読出し専用メモリ(ROM)424およ
びランダムアクセスメモリ(RAM)425が含まれ
る。スタートアップ時などにコンピュータ420内の要
素間での情報転送を助ける基本ルーチンを含む基本入出
力システム(BIOS)は、ROM 424に格納され
る。
【0036】コンピュータ420は、ハードディスクド
ライブ427、たとえばリムーバルディスク429との
間で読出しまたは書込みを行うための磁気ディスクドラ
イブ428、およびたとえばCD−ROMディスク43
1の読取り或いは他の光学媒体との間での読出しまたは
書込みのための光ディスクドライブ430をさらに含
む。ハードディスクドライブ427、磁気ディスクドラ
イブ428、および光ディスクドライブ430は、それ
ぞれハードディスクドライブインターフェース432、
磁気ディスクドライブインターフェース433、および
光ドライブインターフェース434によって、システム
バス423に接続される。ドライブおよびそれらに関連
付けられたコンピュータ読取り可能媒体は、サーバコン
ピュータ420用のデータ、データ構造、コンピュータ
実行可能命令などの不揮発性ストレージを提供する。前
述のコンピュータ読取り可能媒体の記述は、ハードディ
スク、リムーバル磁気ディスク、およびCDを表すもの
であるが、磁気カセット、フラッシュメモリカード、デ
ジタルビデオディスク、Bernoulliカートリッ
ジなどの、コンピュータによって読取り可能な他のタイ
プの媒体も、例示的オペレーティング環境で使用できる
ことを、当業者であれば理解されよう。オペレーティン
グシステム435、1つまたは複数のアプリケーション
プログラム436、他のプログラムモジュール437、
およびプログラムデータ438を含むいくつかのプログ
ラムモジュールを、ドライブおよびRAM 425に格
納することができる。
【0037】ユーザは、キーボード440およびマウス
442などのポインティングデバイスを介して、コンピ
ュータ420にコマンドおよび情報を入力することがで
きる。他の入力装置(図示せず)には、マイクロフォ
ン、ジョイスティック、ゲームパッド、衛星放送用アン
テナ、スキャナなどが含まれる。これらのおよび他の入
力装置は、システムバスに結合されたシリアルポートイ
ンターフェース446を介して処理ユニット421に接
続される場合が多いが、パラレルポート、ゲームポー
ト、またはユニバーサルシリアルバス(USB)などの
他のインターフェースによって接続することができる。
モニタ447または他のタイプのディスプレイ装置も、
ビデオアダプタ448などのインターフェースを介して
システムバス423に接続される。コンピュータには典
型的に、モニタに加え、スピーカおよびプリンタなどの
他の周辺出力装置(図示せず)が含まれる。
【0038】コンピュータ420は、リモートサーバま
たはクライアントコンピュータ449などの1つまたは
複数のリモートコンピュータへの論理接続を使用して、
ネットワーク化された環境内で動作することができる。
リモートコンピュータ449は、ワークステーション、
サーバコンピュータ、ルータ、ピアデバイス、または他
の共通ネットワークノードであってよく、図11ではメ
モリストレージ装置450のみが図示されているが、典
型的にはコンピュータ420に関して記載した要素の多
くまたはすべてを含む。図11に示された論理接続に
は、ローカルエリアネットワーク(LAN)451およ
びワイドエリアネットワーク(WAN)452が含まれ
る。このようなネットワーク環境は、事務所、企業規模
のコンピュータネットワーク、イントラネット、および
インターネットで一般的なものである。
【0039】LANネットワーク環境で使用される場
合、コンピュータ420はネットワークインターフェー
スまたはアダプタ453を介してローカルネットワーク
451に接続される。WANネットワーク環境で使用さ
れる場合、サーバコンピュータ420が典型的にはモデ
ム454を含むか、LAN上の通信サーバに接続される
か、またはインターネットなどのワイドエリアネットワ
ーク452を介して通信を確立するための他の手段を有
する。モデム454は内蔵または外付けのどちらでも可
能であって、シリアルポートインターフェース446を
介してシステムバス423に接続される。ネットワーク
化された環境では、コンピュータ420に関して示され
たプログラムモジュールまたはその一部を、リモートメ
モリストレージ装置に格納することができる。図示され
たネットワーク接続は例示的なものであって、コンピュ
ータ間に通信リンクを確立する他の手段が使用できるこ
とを理解されよう。
【0040】当業者によるコンピュータプログラミング
の実施に従い、本発明について、特に記載のない限り、
コンピュータ420によって実行されるオペレーション
の動作および記号表現を参照しながら以下に説明する。
このような動作およびオペレーションは、コンピュータ
による実行として表されることが多い。動作および記号
で表されるオペレーションには、コンピュータシステム
のオペレーション並びに他の信号処理を再構成するかそ
うでなければ変更するために、処理ユニット421によ
る、結果的に電気信号表現の変換または減少を生じさせ
るデータビットで表された電気信号の処理、並びにメモ
リシステム(システムメモリ422、ハードディスクド
ライブ427、フロッピィ(登録商標)ディスク42
9、およびCD−ROM 431を含む)内のメモリ位
置でのデータビットの維持が含まれることを理解されよ
う。データビットが維持されるメモリ位置は、データビ
ットに対応する特定の電気、磁気、または光の特性を有
する物理的位置である。
【0041】以上、本発明について、プログラミング方
法および/またはコンピュータアーキテクチャ、並びに
特定の例に関して説明してきたが、本発明の実施に好適
な様々なプログラミング方法および/またはコンピュー
タアーキテクチャが使用可能であり、添付の特許請求の
範囲内であるように意図されていることを理解されよ
う。
【0042】前述の内容には、本発明の例示的実施が含
まれている。もちろん、本発明について説明する目的
で、構成要素または方法について考えられるあらゆる組
合せを記載することは不可能であるが、当業者であれば
本発明のさらに多くの組合せおよび置換えが可能である
ことを理解されよう。したがって、本発明は、添付の特
許請求の範囲の精神および範囲を逸脱することなく、こ
うした変更、修正、および変形例のすべてを含むことを
意図するものである。
【図面の簡単な説明】
【図1】本発明の一態様に従って、複数のプロセスを備
えた物理メモリとクラッシュダンプファイルとを有する
マシンを示す構成図である。
【図2】本発明の一態様に従って、カーネルモードのク
ラッシュダンプファイルからサマリファイルを生成する
抽出ツールを示す構成図である。
【図3】本発明の一態様に従って、カーネルモードのク
ラッシュダンプファイルの一例を示す構成図である。
【図4】本発明の一態様に従って、カーネルモードのク
ラッシュダンプサマリファイルの一例を示す構成図であ
る。
【図5】本発明の一態様に従って、カーネルモードのク
ラッシュダンプファイルのサマリファイルを生成するた
めの方法を示す流れ図である。
【図6】本発明の一態様に従って、ローカルマシンに常
駐するクラッシュダンプファイルのサマリファイルを生
成するための、常駐する抽出ツールを有するリモートマ
シンを示す構成図である。
【図7】本発明の一態様に従って、複数プロセスを備え
たユーザモード物理メモリとユーザモードのクラッシュ
ダンプファイルとを有するマシンを示す構成図である。
【図8】本発明の一態様に従って、ユーザモードのクラ
ッシュダンプファイルからサマリファイルを生成する、
ユーザモードの抽出ツールを示す構成図である。
【図9】本発明の一態様に従って、ユーザモードのクラ
ッシュダンプサマリファイルの一例を示す構成図であ
る。
【図10】本発明の一態様に従って、ユーザモードのク
ラッシュダンプファイルのサマリファイルを生成するた
めの方法を示す流れ図である。
【図11】本発明の一環境に従ったコンピュータシステ
ムを示す構成図である。
【符号の説明】
10,200 マシン 12 物理メモリ 14 ユーザモード 16 カーネルモード 18 プロセス 20 メモリマネージャプロセス 22 オペレーティングシステムプロセス 24 カーネルプロセス 26 クラッシュダンププロセス 28 ロードモジュール 30 クラッシュダンプファイル 32,52,54,62,82,84,232,25
2,254,282,284 参照部分 34 物理メモリのデータ構造部分 40,192 抽出ツール 50,250 サマリファイル(サマリダンプファイ
ル) 56,86,256,286 特定データ構造部分 60 完全クラッシュダンプファイル 64,234 データ構造部分 66 プロセッサブロックデータ構造 67 ページディレクトリテーブル 68 診断データブロックデータ構造 70 ロードモジュールリストデータ構造 80 ミニダンプファイル(サマリファイル,サマリク
ラッシュダンプファイル) 88,292,294,296 スレッドデータ構造 90 プロセスデータ構造 92 スタックデータ構造 94 ロードモジュールリストデータ構造 96 メモリマネジメント情報ブロック 180 ローカルマシン 182 クラッシュダンプファイル 184 通信リンク 190 リモートマシン(リモートサイト) 210 ユーザモード部分 214 リスト 216 プロセススタック 218 スレッド 220 クラッシュダンププロセス 230 アプリケーションクラッシュダンプファイル 240 ユーザモード抽出ツール 280 ミニダンプファイル(サマリファイル,サマリ
クラッシュダンプファイル) 288 ロードモジュールリストデータ構造 290 例外記録データ構造 420 (サーバ)コンピュータ 421 処理ユニット 422 システムメモリ 423 システムバス 427 ハードディスクドライブ 428 磁気ディスクドライブ 429 ディスク 430 光ディスクドライブ 431 CD−ROMディスク 432 ハードディスクドライブインターフェース 433 磁気ディスクドライブインターフェース 434 光ドライブインターフェース 435 オペレーティングシステム 436 アプリケーションプログラム 437 プログラムモジュール 438 プログラムデータ 440 キーボード 442 マウス 446 シリアルポートインターフェース 447 モニタ 448 ビデオアダプタ 449 クライアントコンピュータ(リモートコンピュ
ータ) 450 メモリストレージ装置 451 ローカルネットワーク 452 ワイドエリアネットワーク 453 アダプタ 454 モデム
───────────────────────────────────────────────────── フロントページの続き Fターム(参考) 5B042 GA33 GC08 HH10 HH34 HH41 MA08 MA10 MA14 MA15 MC07

Claims (40)

    【特許請求の範囲】
  1. 【請求項1】 クラッシュダンプファイルのサマリ生成
    システムであって、 記号テーブルファイルを使用する必要なしにクラッシュ
    ダンプファイルから特定データ構造を取り出すように動
    作可能なスタンドアロン型抽出ツールを備え、前記スタ
    ンドアロン型抽出ツールはクラッシュダンプファイルの
    参照部分に常駐する参照を使用し、前記参照はクラッシ
    ュダンプファイル内の特定データ構造に関する位置情報
    を提供するものであって、前記スタンドアロン型抽出ツ
    ールはサマリファイルを生成するように動作可能であ
    り、前記サマリファイルはサマリファイルのデータ構造
    部分に常駐する特定データ構造の位置への参照を有する
    参照部分を含むことを特徴とするシステム。
  2. 【請求項2】 前記スタンドアロン型抽出ツールはコン
    パイル済み実行可能コードを備えることを特徴とする請
    求項1に記載のシステム。
  3. 【請求項3】 前記コンパイル済み実行可能コードは、
    クラッシュダンプファイルの参照部分形式の埋め込み知
    識(embedded knowledge)を有する
    ことを特徴とする請求項1に記載のシステム。
  4. 【請求項4】 サマリファイルを生成する前記スタンド
    アロン型抽出ツールは、クラッシュダンプファイル内の
    参照部分と同様の第1の参照部分と、サマリファイル内
    の特定データ構造を参照するための第2の参照部分とを
    有することを特徴とする請求項1に記載のシステム。
  5. 【請求項5】 前記第1および第2の参照部分は、第1
    および第2のヘッダであることを特徴とする請求項4に
    記載のシステム。
  6. 【請求項6】 前記第2の参照部分は、特定データ構造
    の異なるデータ構造がサマリファイル内に常駐するファ
    イル内の位置を表す複数の参照を含むことを特徴とする
    請求項4に記載のシステム。
  7. 【請求項7】 前記データ構造部分は、現在のスレッド
    データ構造と、現在のプロセスデータ構造と、現在のス
    タックデータ構造と、ロードモジュールリストデータ構
    造のうち、少なくとも1つを含むことを特徴とする請求
    項6に記載のシステム。
  8. 【請求項8】 前記スタンドアロン型抽出ツールは、カ
    ーネルモード不良に関するデータを抽出することを特徴
    とする請求項1に記載のシステム。
  9. 【請求項9】 前記スタンドアロン型抽出ツールは、ユ
    ーザモード不良に関するデータを抽出することを特徴と
    する請求項1に記載のシステム。
  10. 【請求項10】 前記スタンドアロン型抽出ツールがロ
    ーカルマシンに常駐することにより、前記スタンドアロ
    ン型抽出ツールは障害の発生したローカルマシンで実行
    可能であり、サマリファイルがローカルマシンで生成さ
    れ、サマリファイルがリモートマシンに転送可能である
    ことを特徴とする請求項1に記載のシステム。
  11. 【請求項11】 前記スタンドアロン型抽出ツールがリ
    モートマシンに常駐することにより、前記スタンドアロ
    ン型抽出ツールが障害の発生したローカルマシンから通
    信リンクを介して起動可能であり、前記スタンドアロン
    型ツールはローカルマシンでダウンロードおよび実行さ
    れ、リモートマシンに返信されるサマリファイルを生成
    するこを特徴とする請求項1に記載のシステム。
  12. 【請求項12】 クラッシュダンプファイルの生成シス
    テムであって、クラッシュダンプファイルの参照部分内
    に常駐する参照を有するクラッシュダンプファイルを生
    成するように動作可能なクラッシュダンプ構成要素を備
    え、前記参照は、記号テーブルファイルを使用する必要
    なしにシステム障害の発生源を容易に識別できるために
    好適なクラッシュダンプファイル内の特定データ構造の
    位置情報を含むことを特徴とするシステム。
  13. 【請求項13】 前記参照は、プロセッサブロックデー
    タ構造への参照を含むことを特徴とする請求項12に記
    載のシステム。
  14. 【請求項14】 前記参照は、診断ブロックデータ構造
    への参照をさらに含むことを特徴とする請求項13に記
    載のシステム。
  15. 【請求項15】 前記プロセッサブロックデータ構造は
    カーネルデータブロック構造を含み、前記診断ブロック
    データ構造はカーネルデバッガデータブロック構造を含
    むことを特徴とする請求項14に記載のシステム。
  16. 【請求項16】 前記参照は、好適なロードモジュール
    リストデータ構造への参照をさらに含むことを特徴とす
    る請求項12に記載のシステム。
  17. 【請求項17】 クラッシュダンプファイルの生成方法
    であって、マシンに障害が発生すると、障害時にマシン
    上にある実際の物理メモリの少なくとも一部分の状態を
    反映する物理メモリデータ構造部分を有するクラッシュ
    ダンプファイルを生成すること、 前記クラッシュダンプファイルに、物理メモリのデータ
    構造部分に常駐するデータ構造を参照するための参照部
    分を提供すること、および、 前記参照部分に、記号テーブルファイルを使用する必要
    なしにシステム障害の発生源を容易に識別するのに好適
    な参照を提供することを含む方法。
  18. 【請求項18】 前記参照は、プロセッサブロックデー
    タ構造への参照を含むことを特徴とする請求項17に記
    載の方法。
  19. 【請求項19】 前記参照は、診断ブロックデータ構造
    への参照を含むことを特徴とする請求項18に記載の方
    法。
  20. 【請求項20】 前記プロセッサブロックデータ構造は
    カーネルデータブロック構造を含み、前記診断ブロック
    データ構造はカーネルデバッガデータブロック構造を含
    むことを特徴とする請求項19に記載の方法。
  21. 【請求項21】 前記参照部分に、システム障害の発生
    源を容易に識別するのに好適なロードモジュールリスト
    データ構造への参照を提供することをさらに含むことを
    特徴とする請求項17に記載の方法。
  22. 【請求項22】 前記クラッシュダンプファイルは完全
    クラッシュダンプファイルであることを特徴とする請求
    項17に記載の方法。
  23. 【請求項23】 前記クラッシュダンプファイルはカー
    ネルクラッシュダンプファイルであることを特徴とする
    請求項17に記載の方法。
  24. 【請求項24】 マシンに障害が発生すると、障害時に
    マシン上にある実際の物理メモリの少なくとも一部分の
    状態を反映する物理メモリデータ構造部分を有するクラ
    ッシュダンプファイルを生成すること、 前記クラッシュダンプファイルに、物理メモリのデータ
    構造部分に常駐するデータ構造を参照するための参照部
    分を提供すること、および、 前記参照部分に、記号テーブルファイルを使用する必要
    なしにシステム障害の発生源を容易に識別するのに好適
    な参照を提供することについてコンピュータ実行可能命
    令を有することを特徴とするコンピュータ読取り可能媒
    体。
  25. 【請求項25】 障害状態を経験したマシンからクラッ
    シュダンプファイルのサマリを生成する方法であって、 クラッシュダンプファイルを開くこと、 クラッシュダンプファイル内に常駐する特定データ構造
    に関する位置情報を提供する参照を有するクラッシュダ
    ンプファイルの参照部分を取り出すこと、 特定データ構造を抽出すること、 サマリファイルを生成すること、 特定データ構造をサマリファイルに挿入すること、およ
    び、 サマリファイルにサマリファイル内の特定データ構造の
    位置への参照を含む参照部分を提供することを含むこと
    を特徴とする方法。
  26. 【請求項26】 前記クラッシュダンプファイルはカー
    ネルモードクラッシュダンプファイルであることを特徴
    とする請求項25に記載の方法。
  27. 【請求項27】 前記クラッシュダンプファイルはユー
    ザモードクラッシュダンプファイルであることを特徴と
    する請求項25に記載の方法。
  28. 【請求項28】 前記参照は、特定データ構造の異なる
    データ構造がサマリファイル内に常駐するファイル内の
    位置を表す複数の参照を含むことを特徴とする請求項2
    5に記載の方法。
  29. 【請求項29】 前記特定データ構造は、現在のスレッ
    ドデータ構造と、現在のプロセスデータ構造と、現在の
    スタックデータ構造とロードモジュールリストデータ構
    造のうち、少なくとも1つを含むことを特徴とする請求
    項25に記載の方法。
  30. 【請求項30】 前記特定データ構造は、ロードモジュ
    ールリストデータ構造のうち少なくとも1つと、障害を
    経験したスレッドに関する少なくとも1つのスレッドデ
    ータ構造とを含むことを特徴とする請求項25に記載の
    方法。
  31. 【請求項31】 通信リンクを介してリモートマシンに
    サマリファイルを伝送することをさらに含むことを特徴
    とする請求項25に記載の方法。
  32. 【請求項32】 クラッシュダンプファイルを開くこ
    と、 クラッシュダンプファイル内に常駐する特定データ構造
    に関する位置情報を提供する参照を有する、クラッシュ
    ダンプファイルの参照部分を取り出すこと、 特定データ構造を抽出すること、 サマリファイルを生成すること、 特定データ構造をサマリファイルに挿入すること、およ
    び、 サマリファイルにサマリファイル内の特定データ構造の
    位置への参照を含む参照部分を提供することについて、
    クラッシュダンプファイルを開くためのコンピュータ実
    行可能命令を有することを特徴とするコンピュータ読取
    り可能媒体。
  33. 【請求項33】 クラッシュダンプファイルを格納する
    コンピュータ読取り可能媒体であって、 障害時にマシン上にある実際の物理メモリの少なくとも
    一部の状態を反映する物理メモリデータ構造部分と、 物理メモリのデータ構造部分に常駐するデータ構造を参
    照するための参照部分とを含み、 前記参照部分は、記号テーブルファイルを使用する必要
    なしにシステム障害の発生源を容易に識別するのに好適
    であることを特徴とするコンピュータ読取り可能媒体。
  34. 【請求項34】 前記参照はプロセッサブロックデータ
    構造を含むことを特徴とする請求項33に記載のコンピ
    ュータ読取り可能媒体。
  35. 【請求項35】 前記参照は診断ブロックデータ構造を
    含むことを特徴とする請求項34に記載のコンピュータ
    読取り可能媒体。
  36. 【請求項36】 前記プロセッサブロックデータ構造は
    カーネルデータブロック構造を含み、前記診断ブロック
    データ構造はカーネルデバッガデータブロック構造を含
    むことを特徴とする請求項35に記載のコンピュータ読
    取り可能媒体。
  37. 【請求項37】 ユーザモードクラッシュダンプファイ
    ルのサマリを格納しているコンピュータ読取り可能媒体
    であって、 障害時にアプリケーションプログラムの状態を反映する
    特定データ構造部分と、 特定データ構造部分に常駐するデータ構造を参照するた
    めの参照部分とを含み、 前記参照部分は、ロードモジュールリストデータ構造の
    うち少なくとも1つと、障害を経験したアプリケーショ
    ンプログラムに関する少なくとも1つのスレッドデータ
    構造とを有することを特徴とするコンピュータ読取り可
    能媒体。
  38. 【請求項38】 クラッシュダンプファイルのサマリダ
    ンプファイル生成システムであって、 マシン上で障害が発生するとクラッシュダンプファイル
    を生成するための手段と、該クラッシュダンプファイル
    からサマリファイルを生成するための手段とを備え、 前記クラッシュダンプファイルは、障害時のメモリの少
    なくとも一部の状態を反映するメモリデータ構造部分
    と、メモリデータ構造部分に常駐するデータ構造を参照
    するための参照部分とを有しており、 前記サマリファイルを生成するための手段によりクラッ
    シュダンプファイルの参照部分を取り出し、該参照部分
    は記号テーブルファイルを使用する必要なしにシステム
    障害の発生源を容易に識別するのに好適な参照を有して
    おり、該参照によりクラッシュダンプファイル内に常駐
    する特定データ構造に関する位置情報を提供し、前記サ
    マリファイルを生成するための手段は特定データ構造を
    抽出して特定データ構造を有するサマリファイルと、サ
    マリファイル内の特定データ構造の位置への参照を含む
    参照部分とを生成することを特徴とするシステム。
  39. 【請求項39】 前記クラッシュダンプファイルはカー
    ネルモードクラッシュダンプファイルであることを特徴
    とする請求項38に記載のシステム。
  40. 【請求項40】 前記クラッシュダンプファイルはユー
    ザモードクラッシュダンプファイルであることを特徴と
    する請求項38に記載のシステム。
JP2001308360A 2000-12-15 2001-10-04 フルダンプファイルからのミニダンプファイルの作成 Pending JP2002202901A (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US09/738529 2000-12-15
US09/738,529 US6681348B1 (en) 2000-12-15 2000-12-15 Creation of mini dump files from full dump files

Publications (1)

Publication Number Publication Date
JP2002202901A true JP2002202901A (ja) 2002-07-19

Family

ID=24968401

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2001308360A Pending JP2002202901A (ja) 2000-12-15 2001-10-04 フルダンプファイルからのミニダンプファイルの作成

Country Status (6)

Country Link
US (1) US6681348B1 (ja)
EP (1) EP1215578A3 (ja)
JP (1) JP2002202901A (ja)
KR (1) KR100786932B1 (ja)
HK (1) HK1047639A1 (ja)
TW (1) TW530215B (ja)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2007529827A (ja) * 2004-03-17 2007-10-25 リヴァーストーン ネットワークス インコーポレーテッド オペレーティングシステム環境でのプロセス状態情報の管理
JP2009230596A (ja) * 2008-03-25 2009-10-08 Hitachi Ltd サーバ装置のユーザデータ保護方法、サーバ装置及びコンピュータプログラム
JP2011076344A (ja) * 2009-09-30 2011-04-14 Fujitsu Ltd 情報処理装置,情報処理装置の制御方法および制御プログラム
WO2016056074A1 (ja) * 2014-10-08 2016-04-14 株式会社日立製作所 計算機システム及びメモリダンプ方法

Families Citing this family (80)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7028056B1 (en) * 2000-04-14 2006-04-11 Microsoft Corporation Method and arrangements for generating debugging information following software failures
US7146535B2 (en) * 2000-08-04 2006-12-05 Sun Microsystems, Inc. Product knowledge management
US7146536B2 (en) * 2000-08-04 2006-12-05 Sun Microsystems, Inc. Fact collection for product knowledge management
US7051243B2 (en) * 2002-04-30 2006-05-23 Sun Microsystems, Inc. Rules-based configuration problem detection
US7475293B1 (en) 2000-08-04 2009-01-06 Sun Microsystems, Inc. Product check matrix
US7100082B2 (en) * 2000-08-04 2006-08-29 Sun Microsystems, Inc. Check creation and maintenance for product knowledge management
US7100083B2 (en) * 2000-08-04 2006-08-29 Sun Microsystems, Inc. Checks for product knowledge management
US6859893B2 (en) * 2001-08-01 2005-02-22 Sun Microsystems, Inc. Service guru system and method for automated proactive and reactive computer system analysis
US7062677B1 (en) * 2001-08-09 2006-06-13 Cisco Tech Inc Method for capturing core dump of a service module
US6898736B2 (en) * 2001-10-31 2005-05-24 International Business Machines Corporation Dynamic sizing logic for dump list generation
US7080286B2 (en) * 2001-11-01 2006-07-18 International Business Machines Corporation Handling oversized rings through recursive calls
US20030226135A1 (en) * 2002-05-29 2003-12-04 Oracle International Corporation Optimized program analysis
US20040025081A1 (en) * 2002-07-31 2004-02-05 Jorge Gonzalez System and method for collecting code coverage information before file system is available
US7231634B2 (en) * 2002-09-17 2007-06-12 Sun Microsystems, Inc. Method for determining scope and cause of memory corruption
US7152225B2 (en) * 2003-02-25 2006-12-19 Sun Microsystems, Inc. Identifying a kernel structure using an element and a variable offset of the structure from debugging
GB0311808D0 (en) * 2003-05-22 2003-06-25 Tektronix Inc User interface for an event monitor
US7168006B2 (en) * 2003-06-30 2007-01-23 International Business Machines Corporation Method and system for saving the state of integrated circuits upon failure
US7149929B2 (en) * 2003-08-25 2006-12-12 Hewlett-Packard Development Company, L.P. Method of and apparatus for cross-platform core dumping during dynamic binary translation
US7302613B2 (en) * 2003-11-12 2007-11-27 Microsoft Corporation System and method for capturing kernel-resident information
US7793229B1 (en) * 2003-12-19 2010-09-07 Unisys Corporation Recording relevant information in a GUI window of a panel dump browser tool
US7401261B1 (en) * 2003-12-19 2008-07-15 Unisys Corporation Automatic analysis of memory operations using panel dump file
US20050190699A1 (en) * 2004-02-26 2005-09-01 Smith Carey W. Collecting hardware asset information
US20050204199A1 (en) * 2004-02-28 2005-09-15 Ibm Corporation Automatic crash recovery in computer operating systems
US7225297B2 (en) * 2004-05-28 2007-05-29 International Business Machines Corporation Compressed cache lines incorporating embedded prefetch history data
US7237085B2 (en) * 2004-05-28 2007-06-26 Oracle International Corporation Architecture for a scalable heap analysis tool
US7509521B2 (en) * 2004-08-23 2009-03-24 Microsoft Corporation Memory dump generation with quick reboot
US7434261B2 (en) * 2004-09-27 2008-10-07 Microsoft Corporation System and method of identifying the source of an attack on a computer network
US7681181B2 (en) * 2004-09-30 2010-03-16 Microsoft Corporation Method, system, and apparatus for providing custom product support for a software program based upon states of program execution instability
JP4528144B2 (ja) * 2005-01-26 2010-08-18 富士通株式会社 メモリダンププログラムのブート方法、機構及びプログラム
WO2006090407A1 (en) * 2005-02-23 2006-08-31 Hewlett-Packard Development Company, L.P. A method or apparatus for storing data in a computer system
US7568233B1 (en) * 2005-04-01 2009-07-28 Symantec Corporation Detecting malicious software through process dump scanning
US7318174B2 (en) * 2005-04-05 2008-01-08 International Business Machines Corporation Systems, methods, and computer readable medium for analyzing memory
US8745199B1 (en) * 2005-06-01 2014-06-03 Netapp, Inc. Method and apparatus for management and troubleshooting of a processing system
KR100640490B1 (ko) * 2005-08-05 2006-10-30 삼성전자주식회사 이동성을 보장하는 다중 사용자 지원 멀티미디어 컨텐츠제공 시스템과 그 제공 방법
US7506203B2 (en) 2005-11-10 2009-03-17 International Business Machines Corporation Extracting log and trace buffers in the event of system crashes
US7496794B1 (en) 2006-01-13 2009-02-24 Network Appliance, Inc. Creating lightweight fault analysis records
US7840946B2 (en) * 2006-06-02 2010-11-23 International Business Machines Corporation System and method for matching a plurality of ordered sequences with applications to call stack analysis to identify known software problems
US7783932B1 (en) * 2007-04-13 2010-08-24 Network Appliance, Inc. Method and apparatus for generating dynamic microcores
US7823006B2 (en) * 2007-05-29 2010-10-26 Microsoft Corporation Analyzing problem signatures
US7818616B2 (en) * 2007-07-25 2010-10-19 Cisco Technology, Inc. Warm reboot enabled kernel dumper
JP4838226B2 (ja) * 2007-11-20 2011-12-14 富士通株式会社 ネットワークロギング処理プログラム,情報処理システムおよびネットワークロギング情報自動退避方法
US8156084B2 (en) * 2008-01-17 2012-04-10 International Business Machines Corporation Transfer of data from positional data sources to partitioned databases in restartable environments
US8521682B2 (en) * 2008-01-17 2013-08-27 International Business Machines Corporation Transfer of data from transactional data sources to partitioned databases in restartable environments
US7933873B2 (en) * 2008-01-17 2011-04-26 International Business Machines Corporation Handling transfer of bad data to database partitions in restartable environments
JP5211751B2 (ja) * 2008-02-26 2013-06-12 富士通株式会社 計算機、ダンププログラムおよびダンプ方法
US8745703B2 (en) * 2008-06-24 2014-06-03 Microsoft Corporation Identifying exploitation of vulnerabilities using error report
US8166349B2 (en) * 2008-12-18 2012-04-24 Vmware, Inc. Communicating with USB devices after a computer system crash
US8943498B2 (en) * 2009-05-31 2015-01-27 Red Hat Israel, Ltd. Method and apparatus for swapping virtual machine memory
US8527466B2 (en) * 2009-05-31 2013-09-03 Red Hat Israel, Ltd. Handling temporary files of a virtual machine
US8365020B2 (en) 2010-03-18 2013-01-29 Red Hat Israel, Ltd. Mechanism for saving crash dump files of a virtual machine on a designated disk
US8862930B2 (en) * 2010-11-24 2014-10-14 Red Hat, Inc. Crash recovery memory reservation based on device drivers for an operational kernel
US8607098B2 (en) * 2011-05-26 2013-12-10 International Business Machines Corporation Generating appropriately sized core files used in diagnosing application crashes
US8762790B2 (en) 2011-09-07 2014-06-24 International Business Machines Corporation Enhanced dump data collection from hardware fail modes
US9021587B2 (en) * 2011-10-27 2015-04-28 Microsoft Technology Licensing, Llc Detecting software vulnerabilities in an isolated computing environment
JP5751156B2 (ja) * 2011-12-19 2015-07-22 富士通株式会社 ストレージシステム、制御装置およびストレージシステムの制御方法
GB2497777A (en) 2011-12-21 2013-06-26 Ibm Diagnostic file containing an image of a system section or a summarized error report of the section.
GB2503439A (en) * 2012-06-26 2014-01-01 Ibm Method of restarting a software system that has unintentional shutdown.
GB2504718A (en) * 2012-08-07 2014-02-12 Ibm Collecting and normalising data
US9519564B1 (en) 2012-09-28 2016-12-13 EMC IP Holding Company LLC Trace saving intervals
GB2506614A (en) 2012-10-03 2014-04-09 Ibm Extracting core data for a summary dump file based upon most recent trace data entries
KR102083473B1 (ko) * 2012-10-29 2020-03-02 에스케이플래닛 주식회사 크래시 정보 처리 시스템 및 방법과, 이를 지원하는 장치 및 단말기
US20140359077A1 (en) * 2013-05-30 2014-12-04 Qualcomm Incorporated Method and apparatus for transmitting symbol files
US9176804B2 (en) 2013-06-27 2015-11-03 International Business Machines Corporation Memory dump optimization in a system
US9317356B2 (en) * 2013-10-15 2016-04-19 Globalfoundries Inc. Device state capture during operating system dump
CN106030546B (zh) * 2014-02-28 2019-05-24 华为技术有限公司 计算机程序的方法
US9921960B2 (en) * 2014-07-22 2018-03-20 Oracle International Corporation Method and system for deferring system dump
GB2528485B (en) * 2014-07-23 2016-05-18 Ibm Reducing size of diagnostic data downloads
US9740551B2 (en) 2014-12-02 2017-08-22 International Business Machines Corporation Enhanced restart of a core dumping application
US20160370023A1 (en) 2015-06-19 2016-12-22 Trane International Inc. Fault detection and diagnostics system utilizing service personnel feedback for improved accuracy
US9710321B2 (en) * 2015-06-23 2017-07-18 Microsoft Technology Licensing, Llc Atypical reboot data collection and analysis
US9529662B1 (en) * 2015-07-31 2016-12-27 Netapp, Inc. Dynamic rule-based automatic crash dump analyzer
KR102384773B1 (ko) 2017-10-12 2022-04-11 삼성전자주식회사 스토리지 장치, 컴퓨팅 시스템, 그리고 그것의 디버깅 방법
KR102022482B1 (ko) * 2017-12-12 2019-09-18 연세대학교 산학협력단 듀얼 모듈러 리던던시를 이용한 파이프라인 구조의 오류 복구 모듈 및 방법
US10684035B2 (en) 2018-01-08 2020-06-16 Trane International Inc. HVAC system that collects customer feedback in connection with failure triage
US11663064B1 (en) * 2019-09-02 2023-05-30 Virtuozzo International Gmbh System and method for generating a guest operating system crash dump
US11467896B2 (en) 2019-09-03 2022-10-11 Hewlett Packard Enterprise Development Lp Sections in crash dump files
CN110727566B (zh) * 2019-09-05 2023-08-11 北京字节跳动网络技术有限公司 一种获取进程崩溃信息的方法、装置、介质和电子设备
US11169869B1 (en) * 2020-07-08 2021-11-09 International Business Machines Corporation System kernel error identification and reporting
CN114840400A (zh) * 2022-04-14 2022-08-02 北京字节跳动网络技术有限公司 异常组件的识别方法、装置、设备、存储介质及程序产品
CN117891646B (zh) * 2024-03-18 2024-05-31 麒麟软件有限公司 ARM64架构FreeRTOS崩溃数据自动分析方法

Family Cites Families (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5293612A (en) 1989-05-11 1994-03-08 Tandem Computers Incorporated Selective dump method and apparatus
US5111384A (en) 1990-02-16 1992-05-05 Bull Hn Information Systems Inc. System for performing dump analysis
US5339406A (en) * 1992-04-03 1994-08-16 Sun Microsystems, Inc. Reconstructing symbol definitions of a dynamically configurable operating system defined at the time of a system crash
FR2704334B1 (fr) 1993-04-22 1995-06-02 Bull Sa Outil de mise au point d'un système d'exploitation.
US5481719A (en) * 1994-09-09 1996-01-02 International Business Machines Corporation Exception handling method and apparatus for a microkernel data processing system
JP3532289B2 (ja) * 1995-04-27 2004-05-31 三菱電機株式会社 計算機システム解析装置
US5999933A (en) * 1995-12-14 1999-12-07 Compaq Computer Corporation Process and apparatus for collecting a data structure of a memory dump into a logical table
JP3072048B2 (ja) * 1996-03-19 2000-07-31 株式会社東芝 計算機システムおよび計算機システムのソフトウェア故障回復方法
US5862308A (en) * 1996-12-03 1999-01-19 Bull Hn Information Systems Inc. Fault intercept and resolution process independent of operating system
US6085244A (en) 1997-03-17 2000-07-04 Sun Microsystems, Inc. Dynamic test update in a remote computer monitoring system
US6523141B1 (en) * 2000-02-25 2003-02-18 Sun Microsystems, Inc. Method and apparatus for post-mortem kernel memory leak detection
US6591379B1 (en) * 2000-06-23 2003-07-08 Microsoft Corporation Method and system for injecting an exception to recover unsaved data

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2007529827A (ja) * 2004-03-17 2007-10-25 リヴァーストーン ネットワークス インコーポレーテッド オペレーティングシステム環境でのプロセス状態情報の管理
JP4937902B2 (ja) * 2004-03-17 2012-05-23 アルカテル−ルーセント ユーエスエー インコーポレーテッド オペレーティングシステム環境でのプロセス状態情報の管理
JP2009230596A (ja) * 2008-03-25 2009-10-08 Hitachi Ltd サーバ装置のユーザデータ保護方法、サーバ装置及びコンピュータプログラム
JP2011076344A (ja) * 2009-09-30 2011-04-14 Fujitsu Ltd 情報処理装置,情報処理装置の制御方法および制御プログラム
WO2016056074A1 (ja) * 2014-10-08 2016-04-14 株式会社日立製作所 計算機システム及びメモリダンプ方法
JPWO2016056074A1 (ja) * 2014-10-08 2017-06-22 株式会社日立製作所 計算機システム及びメモリダンプ方法

Also Published As

Publication number Publication date
KR100786932B1 (ko) 2007-12-17
HK1047639A1 (zh) 2003-02-28
KR20020046921A (ko) 2002-06-21
US6681348B1 (en) 2004-01-20
EP1215578A3 (en) 2009-10-21
EP1215578A2 (en) 2002-06-19
TW530215B (en) 2003-05-01

Similar Documents

Publication Publication Date Title
JP2002202901A (ja) フルダンプファイルからのミニダンプファイルの作成
US6678883B1 (en) Apparatus and method for creating a trace file for a trace of a computer program based on loaded module information
US6658416B1 (en) Apparatus and method for creating an indexed database of symbolic data for use with trace data of a computer program
EP1172729B1 (en) Apparatus and method for cataloguing symbolic data for use in performance analysis of computer programs
US6766511B1 (en) Apparatus and method for performing symbolic resolution of modules using static representations of a trace
US20100125554A1 (en) Memory Recovery Across Reboots of an Emulated Operating System
US7996686B2 (en) Branch trace methodology
US8245081B2 (en) Error reporting through observation correlation
KR100623245B1 (ko) 자동 컨피규레이션 생성
US7676508B2 (en) Method and system for recording and replaying input-output requests issued by a user-mode program
US6662359B1 (en) System and method for injecting hooks into Java classes to handle exception and finalization processing
US7131122B1 (en) Apparatus, system and method for detecting old version of an applet in a client brower's JVM
US7581209B2 (en) Method for determining code coverage
US8166345B2 (en) Programming in a simultaneous multi-threaded processor environment
US7831560B1 (en) Snapshot-aware secure delete
US5257381A (en) Method of intercepting a global function of a network operating system and calling a monitoring function
Huebner et al. Data hiding in the NTFS file system
US7496794B1 (en) Creating lightweight fault analysis records
US20050228832A1 (en) Method and system for verifying integrity of storage
US6708169B1 (en) Apparatus and method for generating a merged symbol file for verifying symbolic data
US20080155246A1 (en) System and method for synchronizing memory management functions of two disparate operating systems
GB2380022A (en) Auditing system call events with system call wrappers
US7290175B1 (en) Forcing a memory dump for computer system diagnosis
US7624127B2 (en) Apparatus, system, and method for automating VTOC driven data set maintenance
US6311325B1 (en) Method and apparatus for profiling processes in a data processing system background of the invention

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20041004

RD04 Notification of resignation of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7424

Effective date: 20041004

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20061003

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20070104

A602 Written permission of extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A602

Effective date: 20070112

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20070403

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20070807

RD13 Notification of appointment of power of sub attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7433

Effective date: 20071106

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A821

Effective date: 20071106

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20071205

A911 Transfer to examiner for re-examination before appeal (zenchi)

Free format text: JAPANESE INTERMEDIATE CODE: A911

Effective date: 20071212

A912 Re-examination (zenchi) completed and case transferred to appeal board

Free format text: JAPANESE INTERMEDIATE CODE: A912

Effective date: 20080404