日本語
英語

文書番号: 315263 - 最終更新日: 2007年12月3日 - リビジョン: 4.5

Windows でデバッグ用に作成された最小メモリ ダンプ ファイルを読み取る方法

この記事は、以前は次の ID で公開されていました: JP315263

目次

すべて展開する | すべて折りたたむ

概要

この資料では、最小メモリ ダンプ ファイルの調査方法について、手順を追って説明します。最小メモリ ダンプ ファイルを使用すると、コンピュータが応答を停止した原因を突き止めることができます。

最小メモリ ダンプ ファイル

最小メモリ ダンプ ファイルには、コンピュータが予期せず停止した理由を判別するのに役立つ最小限の情報が記録されます。このオプションでは、ブート ボリュームに 2 MB 以上のページング ファイルが必要です。また、Microsoft Windows 2000 以降では、コンピュータが予期せず停止するたびにファイルが新しく作成されます。作成されたファイルの履歴はフォルダに格納されます。

この種類のダンプ ファイルには、次の情報が記録されます。
  • STOP メッセージとパラメータ、およびその他のデータ
  • 読み込まれているドライバの一覧
  • 停止したプロセッサのプロセッサ コンテキスト (PRCB)
  • 停止したプロセスのプロセス情報とカーネル コンテキスト (EPROCESS)
  • 停止したスレッドのプロセス情報とカーネル コンテキスト (ETHREAD)
  • 停止したスレッドのカーネル モードの呼び出し履歴
このダンプ ファイルは、ハード ディスク領域が限られている場合に役立ちます。ただし、記録される情報が制限されるため、障害発生時に実行していたスレッドによって直接引き起こされたエラー以外のエラーは、このファイルの分析からは発見できないことがあります。

別の問題が発生して 2 つ目の最小メモリ ダンプ ファイルを作成するとき、Windows は、以前に作成した最小メモリ ダンプ ファイルを維持します。この場合、それぞれのダンプ ファイルに対して、識別可能な日付をコード化したファイル名が付与されます。たとえば、Mini022900-01.dmp という名前のファイルであると、2000 年 2 月 29 日に作成された 1 番目のメモリ ダンプ ファイルであることがわかります。Windows は、%SystemRoot%\Minidump フォルダに最小メモリ ダンプ ファイルの一覧を維持します。

ダンプの種類の設定

最小メモリ ダンプ ファイルを使用するための起動と回復のオプションを設定するには、以下の手順を実行します。

: Microsoft Windows には複数のバージョンが存在するため、使用中のコンピュータによっては以下の手順が異なる場合があります。この場合、製品のマニュアルを参照のうえ、手順を実行するようにしてください。
  1. [スタート] ボタンをクリックし、[コントロール パネル] をクリックします
  2. [システム] をダブルクリックします。
  3. [詳細設定] タブをクリックし、[起動と回復] の [設定] をクリックします。
  4. [デバッグ情報の書き込み] ボックスの一覧で、[最小メモリ ダンプ (64 KB)] をクリックします。

    最小メモリ ダンプ ファイルの保存先とするフォルダを変更するには、[ダンプ ファイル] ボックス (使用する Windows のバージョンによっては [最小ダンプ ディレクトリ] ボックス) に新たなパスを入力します。

最小メモリ ダンプ ファイルを読み取るツール

ダンプ チェック ユーティリティ (Dumpchk.exe) を使用して、最小メモリ ダンプ ファイルを読み込むことができます。Dumpchk.exe を使用すると、メモリ ダンプ ファイルが正しく作成されているかどうかを検証することもできます。ダンプ チェック ユーティリティでは、デバッグ シンボルにアクセスする必要がありません。このユーティリティは、Microsoft Windows 2000 サポート ツールおよび Microsoft Windows XP サポート ツールに含まれています。

Windows 2000 および Windows NT でダンプ チェック ユーティリティを使用する方法の関連情報を参照するには、以下の「サポート技術情報」 (Microsoft Knowledge Base) をクリックしてください。
156280  (http://support.microsoft.com/kb/156280/ ) Dumpchk.exe を使用してメモリ ダンプ ファイルを確認する方法
Windows XP でダンプ チェック ユーティリティを使用する方法の関連情報を参照するには、以下の「サポート技術情報」 (Microsoft Knowledge Base) をクリックしてください。
315271  (http://support.microsoft.com/kb/315271/ ) Dumpchk.exe を使用してメモリ ダンプ ファイルをチェックする方法
: ダンプ チェック ユーティリティは、Microsoft Windows Server 2003 サポート ツールには含まれていません。Microsoft Windows Server 2003 を使用している場合にダンプ チェック ユーティリティを入手するには、Debugging Tools for Windows パッケージをダウンロードし、インストールしてください。このパッケージは、以下のマイクロソフト Web サイトから入手できます。
http://www.microsoft.com/japan/whdc/devtools/debugging/default.mspx (http://www.microsoft.com/japan/whdc/devtools/debugging/default.mspx)
WinDbg ツールまたは KD.exe ツールを使用して、最小メモリ ダンプ ファイルを読み取ることもできます。WinDbg と KD.exe は、最新版の Debugging Tools for Windows パッケージに含まれています。
上記の Web ページでは、Windows 対応のダウンロード可能なシンボル パッケージへのアクセス情報も提供されています。リソースを使用する場合には、ダウンロードしたローカル シンボルまたはシンボル サーバー用のシンボル キャッシュを配置するディスク ドライブ上にフォルダを作成する必要があります。たとえば、C:\Symbols を使用します。この資料に記載されているすべてのコマンドでは、以下のシンボル パスを使用できます。
SRV*c:\symbols*http://msdl.microsoft.com/download/symbols
シンボルをローカル フォルダにダウンロードする場合、フォルダへのパスをシンボル パスとして使用します。

Windows のダンプ ファイル オプションの関連情報を参照するには、以下の「サポート技術情報」 (Microsoft Knowledge Base) をクリックしてください。
254649  (http://support.microsoft.com/kb/254649/ ) Windows 2000、Windows XP および Windows Server 2003 のメモリ ダンプ ファイル オプションの概要

デバッグ ツールをインストールする

以下のマイクロソフト Web サイトから Windows デバッグ ツールをダウンロードしてインストールします。
http://www.microsoft.com/japan/whdc/devtools/debugging/default.mspx (http://www.microsoft.com/japan/whdc/devtools/debugging/default.mspx)
[Typical] インストールを選択します。デバッグ ツールは、デフォルトで、次のフォルダにインストールされます。
C:\Program Files\Debugging Tools for Windows

ファイルを開く

インストールの完了後、ダンプ ファイルを開くには、以下の手順を実行します。
  1. [スタート] ボタンをクリックし、[ファイル名を指定して実行] をクリックします。[名前] ボックスに cmd と入力し、[OK] をクリックします。
  2. 現在のフォルダを、Debugging Tools for Windows フォルダに変更します。 これを実行するには、コマンド プロンプトに次のコマンドを入力し、Enter キーを押します。
    cd c:\program files\debugging tools for windows
  3. デバッガにダンプ ファイルを読み込むには、コマンド プロンプトに次のいずれかのコマンドを入力し、Enter キーを押します。
    windbg -y SymbolPath -i ImagePath -z DumpFilePath
    kd -y SymbolPath -i ImagePath -z DumpFilePath
次の表に、これらのコマンドで使用するプレースホルダの一覧を表示します。
元に戻す全体を表示する
プレースホルダ 説明
SymbolPath シンボル ファイルをダウンロードした場所のローカル パス、またはシンボル サーバー パス (キャッシュ フォルダを含む) のいずれかを指定します。最小メモリ ダンプ ファイルには、限られた情報しか含まれていないため、ダンプ ファイルを正しく読み取るためには、実際のバイナリ ファイルをシンボルと一緒に読み込む必要があります。
ImagePath ファイルへのパスを指定します。ファイルは、Windows XP CD-ROM の I386 フォルダに格納されています。たとえば、パスに C:\Windows\I386 を指定します。
DumpFilePath 調査対象のダンプ ファイルのパスとファイル名です。

サンプル コマンド

ダンプ ファイルを開くとき、以下のサンプル コマンドを使用できます。サンプル コマンドの前提条件は次のとおりです。
  • Windows CD-ROM の I386 フォルダの内容が C:\Windows\I386 フォルダにコピーされています。
  • ダンプ ファイルの名前が C:\Windows\Minidump\Minidump.dmp です。
サンプル 1 :
kd -y srv*c:\symbols*http://msdl.microsoft.com/download/symbols -i c:\windows\i386 -z c:\windows\minidump\minidump.dmp
サンプル 2 : コマンド ライン バージョンではなく、グラフィック バージョンのデバッガを使用したい場合は、次のコマンドを使用します。
windbg -y srv*c:\symbols*http://msdl.microsoft.com/download/symbols -i c:\windows\i386 -z c:\windows\minidump\minidump.dmp

ダンプ ファイルを調査する

ダンプ ファイルに情報を収集するために使用できるいくつかのコマンドがあります。たとえば、以下のコマンドがあります。
  • !analyze -show コマンドは、STOP エラー コード ("バグ チェック コード" とも呼ばれます) と、そのパラメータを表示します。
  • !analyze -v コマンドは、詳細出力を表示します。
  • lm N T コマンドは、指定されて読み込まれたモジュールの一覧を表示します。モジュールのステータスとパスも表示されます。
: !drivers 拡張コマンドは、コンピュータに読み込まれていたすべてのドライバの一覧を表示します。各ドライバのメモリ使用状況に関する概要情報も表示します。!drivers 拡張コマンドは、Windows XP 以降のバージョンの Windows では使用できません。Windows XP 以降のバージョンの環境で、読み込まれているドライバやその他のモジュールに関する情報を表示するには、lm コマンドを使用します。lm N T コマンドを使用すると、古い !drivers 拡張コマンドと同様の形式で、情報が表示されます。

その他のコマンドと完全なコマンド構文の詳細については、デバッグ ツールのヘルプ ドキュメントを参照してください。このドキュメントは、次の場所に格納されています。
C:\Program Files\Debugging Tools for Windows\Debugger.chm
: シンボルに関連する問題がある場合は、Symchk ユーティリティを使用して、正しいシンボルが正常に読み込まれていることを確認してください。 Symchk の使用の関連情報を参照するには、以下の「サポート技術情報」 (Microsoft Knowledge Base) をクリックしてください。
311503  (http://support.microsoft.com/kb/311503/ ) Microsoft Symbol Server を使用してデバッグ シンボル ファイルを取得する

バッチ ファイルを使用して、コマンド ラインを簡素化する

メモリ ダンプの読み込みに必要なコマンドを確認したら、ダンプ ファイルの調査に使用するバッチ ファイルを作成できます。たとえば、デバッグ ツールをインストールしたフォルダに Dump.bat という名前のバッチ ファイルを作成し、バッチ ファイルに次の行を入力します。
cd "c:\program files\debugging tools for windows"

kd -y srv*c:\symbols*http://msdl.microsoft.com/download/symbols -i c:\windows\i386 -z %1
ダンプ ファイルの調査が必要になったら、次のコマンドを入力し、バッチ ファイルにダンプ ファイル パスを渡します。
dump c:\windows\minidump\minidump.dmp

この資料は以下の製品について記述したものです。
  • Microsoft Windows Server 2003, 64-Bit Datacenter Edition
  • Microsoft Windows Server 2003, Enterprise x64 Edition
  • Microsoft Windows Server 2003, Datacenter Edition (32-bit x86)
  • Microsoft Windows Server 2003, Enterprise Edition (32-bit x86)
  • Microsoft Windows Server 2003, Standard Edition (32-bit x86)
  • Microsoft Windows Server 2003, Web Edition
  • Microsoft Windows Small Business Server 2003 Premium Edition
  • Microsoft Windows Small Business Server 2003 Standard Edition
  • Microsoft Windows XP Home Edition
  • Microsoft Windows XP Professional
  • Microsoft Windows XP Professional x64 Edition
  • Microsoft Windows XP Tablet PC Edition
  • Microsoft Windows 2000 Datacenter Server
  • Microsoft Windows 2000 Advanced Server
  • Microsoft Windows 2000 Server
  • Microsoft Windows 2000 Professional
キーワード: 
kbhowto kbinfo kbenv KB315263
"Microsoft Knowledge Baseに含まれている情報は、いかなる保証もない現状ベースで提供されるものです。Microsoft Corporation及びその関連会社は、市場性および特定の目的への適合性を含めて、明示的にも黙示的にも、一切の保証をいたしません。さらに、Microsoft Corporation及びその関連会社は、本文書に含まれている情報の使用及び使用結果につき、正確性、真実性等、いかなる表明・保証も行ないません。Microsoft Corporation、その関連会社及びこれらの権限ある代理人による口頭または書面による一切の情報提供またはアドバイスは、保証を意味するものではなく、かつ上記免責条項の範囲を狭めるものではありません。Microsoft Corporation、その関連会社 及びこれらの者の供給者は、直接的、間接的、偶発的、結果的損害、逸失利益、懲罰的損害、または特別損害を含む全ての損害に対して、状況のいかんを問わず一切責任を負いません。(Microsoft Corporation、その関連会社 またはこれらの者の供給者がかかる損害の発生可能性を了知している場合を含みます。) 結果的損害または偶発的損害に対する責任の免除または制限を認めていない地域においては、上記制限が適用されない場合があります。なお、本文書においては、文書の体裁上の都合により製品名の表記において商標登録表示、その他の商標表示を省略している場合がありますので、予めご了解ください。"
 

サポート技術情報の翻訳