メモリ ダンプを使用して、BSOD の原因となっているドライバーを特定する方法。 Windows クラッシュ ダンプ Windows 10 メモリ ダンプを開く方法

Viberをダウンロード 01.06.2021
Viberをダウンロード

Windows 8 では、Microsoft は新しいメモリ ダンプ、つまり自動メモリ ダンプ オプションを導入しました。 この設定は、オペレーティング システムでデフォルトで設定されます。 Windows 10 では、新しいタイプのダンプ ファイルであるアクティブ メモリ ダンプが導入されました。 知らない人のために説明すると、Windows 7 には小規模ダンプ、コア ダンプ、および完全なコア ダンプがあります。 Microsoft がなぜこの新しいメモリ ダンプ オプションを作成することにしたのか疑問に思われるかもしれません。 シニア サポート エンジニアの Robert Simpkins 氏によると、自動メモリ ダンプにより、構成ファイル内の「システム」ページのサポートが作成される可能性があります。
ページング ファイル構成管理システムは、ページング ファイルのサイズを管理します。これにより、不必要なヘッドルームやページング ファイル サイズが回避されます。 このオプションは主に、サイズは小さいものの、大量の RAM を搭載する SSD ドライブで実行される PC 向けに導入されています。

メモリダンプオプション

「自動メモリ ダンプ」の主な利点は、プロセス マネージャのサブシステム セッションがページ ファイルを RAM のサイズよりも小さいサイズに自動的に削減できることです。 知らない人のために説明すると、サブシステム マネージャー セッションは、システムの初期化、つまりユーザーがシステムにログインするために必要なサービスとプロセスの起動環境を担当します。 基本的に、ファイルのページを仮想メモリにインストールし、winlogon.exe プロセスを開始します。

自動メモリ ダンプ設定を変更する場合は、次の方法で変更できます。 Windows キー + X を押して、「システム」を選択します。 次に、「システムの詳細設定 -」ボタンをクリックします。 前進 システム 設定”.

「システムの詳細設定」ボタンをクリックします。

ここに「詳細」というドロップダウン メニューが表示されます。

ここで必要なオプションを選択できます。 推奨されるオプション:

メモリダンプはありません。
小さなメモリダンプ。
カーネルメモリダンプ。
メモリダンプを完了します。
自動メモリダンプ。 Windows 8 に追加されました。
アクティブなメモリ ダンプ。 Windows10に追加されました。
メモリ ダンプ ファイルの場所は、%SystemRoot%\MEMORY.DMP ファイル内にあります。

SSD ドライブを使用している場合は、「自動メモリ ダンプ」のままにすることをお勧めします。 ただし、クラッシュ ダンプ ファイルが必要な場合は、それを「小さいメモリ ダンプ」に設定することをお勧めします。これを使用すると、必要に応じて誰かに送信して、見てもらうことができます。

場合によっては、完全なメモリ ダンプに収まるように、ページ ファイルのサイズを RAM よりも大きくする必要がある場合があります。 このような場合は、レジストリ キーを作成する必要があります。

HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\CrashControl

それは「LastCrashTime」と呼ばれます。

これにより、スワップ ファイルのサイズが自動的に増加します。 後で減らすには、このキーを削除するだけです。

Windows 10 では、アクティブ メモリ ダンプと呼ばれる新しいダンプ ファイルが導入されました。 必要なものだけが含まれているため、サイズが小さくなります。

テストする方法はありませんが、このキーを作成し、ページファイルのサイズを監視しました。 遅かれ早かれ重大なエラーが発生することはわかっています。 それでは、確認させていただきます。

WhoCrashed を使用して、Windows.dmp ファイルのメモリ ダンプを分析できます。 WhoCrashed Home は、コンピュータにインストールされているドライバをワンクリックで提供する無料のユーティリティです。 ほとんどの場合、コンピュータに問題を引き起こしている欠陥のあるドライバを特定できます。 これはシステム分析のクラッシュ ダンプ、メモリ ダンプであり、収集されたすべての情報がアクセス可能な形式でここに表示されます。

通常、デバッグ ツールキットは分析クラッシュ ダンプを開きます。 このユーティリティを使用すると、どのドライバがコンピュータ上で問題を引き起こしているかを見つけるために知識やデバッグ スキルは必要ありません。

WhoCrashed は、Microsoft のデバッグ パッケージ (windbg プログラム) に依存しています。 このパッケージがインストールされていない場合は、WhoCrashed がこのパッケージをダウンロードして自動的に抽出します。 プログラムを実行して、「分析」ボタンをクリックするだけです。 WhoCrashed をシステムにインストールしていて、クラッシュしたり予期せず終了した場合、プログラムはコンピュータでクラッシュ ダンピングが有効になっているかどうかを通知し、クラッシュ ダンピングを有効にする方法についての提案を表示します。

Windows は非常に壊れやすいものであり、ユーザー側が誤った操作を行うと、重大なエラーだけでなく、あまり良いエラーが発生する可能性があります。 画面自体に書き込まれた情報と、BsoD の原因に関するデータを保存する特別なメモリ ダンプ ファイルは、非常に重大な問題であるブルー スクリーンに関する情報を見つけるのに役立ちます。 経験豊富なユーザーであってもブルー スクリーンの影響を受けない人はいないため、この機能を有効にすることを強くお勧めします。

メモリ ダンプ自体は通常、パス C:\Windows\MEMORY.DMP または C:\Windows\Minidump に保存されます。ここには、いわゆる小規模メモリ ダンプが保存されます。 ちなみに、小さなメモリ ダンプは、BsoD の原因を見つけるのに役立つファイルになります。

通常、Windows 10 ではメモリ ダンプの作成はデフォルトで無効になっており、特別なユーティリティを使用してダンプ ファイルをチェックしても良い結果が得られません。 早速行動に移してみましょう。

Windows 10でメモリダンプ機能を有効にして設定する方法

通常、ダンプを表示するには BlueScreenView などのユーティリティが使用されますが、今すぐメモリ ダンプの自動作成を設定する必要があります。そうしないと、このプログラムや類似のプログラムが役に立たなくなります。

ウィンドウが開き、左側のオプション「」をクリックします。 高度なシステム設定».

の中に " さらに「ポイントを押す」。

最後に、ダンプを構成するための主要なパラメータが配置されたウィンドウが開きます。 ここでは、Windows で自動メモリ ダンプがアクティブ化されており、すぐ下に示されているパスに保存されていることがわかります。 ログを作成するためのチェックボックスも含まれています。 さらに、小さなメモリ ダンプ ファイルも作成されます。これは、死のブルー スクリーンを扱うときに非常に役立ちます。 システムコアとメモリに関する情報も保存されます。 モードが自動であれば、これで十分です。

その他のメモリダンプに関する情報

デバッグ情報を記録するためのドロップダウン メニューを開くと、以下で説明するいくつかのオプションが表示されます。

  • 少量のメモリダンプ– ミニダンプ。特別なパスに沿って保存され、重さは 256 キロバイトです。 このファイルには、死亡時のブルー スクリーンとシステム プロセスに関する基本情報が保存されます。 BSOD の原因を突き止める必要がある場合は、小さなメモリ ダンプで十分です。 情報の取得には、BlueScreenView または同様のプログラムが使用されます。 初心者であれば誰でもこの方法を使用できます。
  • カーネルメモリダンプ– ファイルには自動タイプと同じ情報が含まれます。 唯一の違いは、システムがページング ファイルを変更することです。 どのオプションを選択すればよいですか? 自動タイプだと思います。
  • フルメモリダンプ– ファイルには RAM に関する完全なデータが含まれています。つまり、ファイル サイズは RAM のサイズと同じになります。 PC には 8 GB があり、これは完全なメモリ ダンプ ファイルがディスク上で占有する量です。 このオプションは初心者には特に適していません。
  • アクティブメモリダンプ– Windows 10 で初登場。サーバーに適しており、アクティブなメモリとカーネル モード、および現在のユーザーに関するデータを保存します。

メモリダンプファイルを削除する方法

非常に簡単で、これらのファイルが存在するパスに沿って手動で削除します。 たとえば、完全なメモリ ダンプ ファイルは MEMORY.DMP という名前ですが、これを削除するだけで完了です。 ディスク クリーンアップ ツールを使用する場合、ダンプ ファイルを削除するオプションもあります。


システム クリーニング ユーティリティにより、メモリ ダンプが無効になっている可能性があります。 SSD とこれらのドライブを操作する特別なユーティリティを使用する場合、一部のシステム機能を無効にして、SSD が読み取り/書き込み手順の影響を受けにくくすることもできます。

ブルー スクリーン (BSOD) を伴う重大な Windows エラーの原因は、多くの場合、新しくインストールされたドライバーまたは破損したドライバーです。 エラーの原因となっているドライバーを特定したら、問題の修正を開始できます。ドライバーを更新する、以前のバージョンにロールバックする、ドライバーをインストールしたアプリケーションを再インストールまたは削除するなどです。ドライバー名は常に青色で表示されるわけではありません。画面。 ただし、メモリ ダンプを使用して問題のあるドライバーを数分で特定できる非常に簡単な方法があります。

ステップ 1 — メモリダンプ記録を有効にする

まず、ダンプ記録が有効になっていることを確認する必要があります。 これを行うには、キーの組み合わせを押してシステムのプロパティを開きます。 勝利+一時停止, [Vista の場合はリンクをクリックしてください 高度なシステム設定]タブに移動します さらに、最後にボタンを押します。

小さいこの目的にはメモリ ダンプで十分です。

重大なエラーが発生した場合に保存されるフォルダーへのパスに注意してください。

これで、ファイルをアーカイブしてフォーラムの投稿に添付できるようになりました Windows の重大なエラーのトラブルシューティングそして誰かが問題のあるドライバーの名前を教えてくれるまで待ってください:) しかし、それほど苦労せずに自分でそれを行うことができます。

ステップ2-MinDumperユーティリティを使用したダンプの分析

このユーティリティについては、この記事で説明します。

  1. Windows 用のデバッグ ツールをダウンロードしてインストールします。 これらは Windows SDK Web インストーラーに含まれており、起動後に [共通ユーティリティ] セクションで [デバッグ ツール] を選択する必要があります。
  2. ダウンロード シナリオ(kdfe.cmd)、Alexander Sukhovey によって書かれ、リソースで公開されました sysadmins.ru(ライブリンクが見つからなかったので、独自のリンクを提供します)。 アーカイブを任意のフォルダーに解凍します。
    注記。 Program Files フォルダーの場所が標準以外の場合は、Windows 用デバッグ ツールがインストールされているフォルダーへのパスを kdfe.cmd で指定する必要がある場合があります。 41 行目で dbgpath 変数を使用します。

ステップ 3 - メモリ ダンプの分析

あとは 1 つのコマンドを実行するだけです。 コマンドプロンプトを開き、解凍したフォルダーに移動します kdfe.cmd。 メモリ ダンプ ファイルへのパスをパラメータとして指定して、ファイルを実行します (以下の例では、ファイルは Mini1110307-01.dmp)

重大な障害が発生すると、Windows オペレーティング システムがクラッシュし、ブルー スクリーン (BSOD) が表示されます。 RAM の内容と、発生したエラーに関するすべての情報がページング ファイルに書き込まれます。 次回 Windows を起動すると、保存されたデータに基づいてデバッグ情報を含むクラッシュ ダンプが作成されます。 重大なエラー エントリがシステム イベント ログに作成されます。

注意!ディスク サブシステムに障害が発生した場合、または Windows 起動の初期段階で重大なエラーが発生した場合、クラッシュ ダンプは作成されません。

Windows クラッシュ ダンプの種類

現在のオペレーティング システムである Windows 10 (Windows Server 2016) を例として、システムが作成できるメモリ ダンプの主な種類を見てみましょう。

  • ミニメモリダンプ(256KB)。 このファイル タイプには最小限の情報が含まれます。 これには、BSOD エラー メッセージ、ドライバーに関する情報、クラッシュ時にアクティブだったプロセス、およびクラッシュの原因となったプロセスまたはカーネル スレッドのみが含まれます。
  • カーネルメモリダンプ。 通常はサイズが小さく、物理メモリ サイズの 3 分の 1 です。 カーネル メモリ ダンプは、ミニ ダンプよりも詳細です。 これには、ドライバーとカーネル モード プログラムに関する情報が含まれており、Windows カーネルとハードウェア抽象化層 (HAL) に割り当てられたメモリ、ドライバーとその他のカーネル モード プログラムに割り当てられたメモリが含まれます。
  • 完全なメモリダンプ。 サイズが最も大きく、システムの RAM に Windows がこのファイルの作成に必要な 1MB を加えたメモリが必要です。
  • 自動メモリダンプ。 情報としてはカーネルメモリダンプに相当します。 唯一の違いは、ダンプ ファイルの作成に使用されるスペースの量です。 このファイルの種類は Windows 7 には存在しませんでした。Windows 8 で追加されました。
  • アクティブメモリダンプ。 このタイプでは、システム障害の原因を特定できない要素が排除されます。 これは Windows 10 に追加されたもので、仮想マシンを使用している場合、またはシステムが Hyper-V ホストである場合に特に便利です。

Windows でメモリ ダンプを有効にするにはどうすればよいですか?

Win+一時停止を使用してシステム設定ウィンドウを開き、「」を選択します 高度なシステム設定"(高度なシステム設定)。 の中に " さらに" (詳細)、セクション "" (起動と回復) ボタンをクリックします。 オプション"(設定)。 開いたウィンドウで、システム障害時のアクションを設定します。 「」をチェックしてください。 イベントをシステムログに記録する" (イベントをシステム ログに書き込む)、システムがクラッシュしたときに作成するダンプの種類を選択します。 チェックボックスにチェックが入っている場合は、「 既存のダンプ ファイルを置き換えます「(既存のファイルを上書きする)チェックボックスをオンにすると、障害が発生するたびにファイルが上書きされます。 このボックスのチェックを外したほうがよいでしょう。そうすれば、分析のためのより多くの情報が得られます。 また、「自動的に再起動する」も無効にします。

ほとんどの場合、BSOD の原因を分析するには、少量のメモリ ダンプで十分です。

BSOD が発生した場合、ダンプ ファイルを分析して障害の原因を見つけることができるようになりました。 ミニダンプは、デフォルトでは %systemroot%\minidump フォルダーに保存されます。 ダンプファイルを分析するには、次のプログラムを使用することをお勧めします WinDBG(Microsoft カーネル デバッガー).

Windows への WinDBG のインストール

ユーティリティ WinDBG「」に含まれる Windows 10 SDK"(Windows 10 SDK)。 。

ファイルの名前は winsdksetup.exe、サイズ 1.3 MB。

インストールを実行し、何をしたいのかを選択します。このコンピュータにパッケージをインストールするか、他のコンピュータにインストールするためにパッケージをダウンロードします。 ローカル コンピューターにパッケージをインストールしましょう。

パッケージ全体をインストールできますが、デバッグ ツールのみをインストールするには、 Windows 用のデバッグ ツール.

インストール後、WinDBG ショートカットがスタート メニューに表示されます。

.dmp ファイルと WinDBG の関連付けのセットアップ

クリックするだけでダンプ ファイルを開くには、.dmp 拡張子を WinDBG ユーティリティにマップします。

  1. 管理者としてコマンド プロンプトを開き、64 ビット システムのコマンドを実行します: cd C:\Program Files (x86)\Windows Kits\10\Debuggers\x64
    Windbg.exe –IA
    32 ビット システムの場合:
    C:\プログラム ファイル (x86)\Windows キット\10\デバッガー\x86
    Windbg.exe –IA
  2. その結果、ファイル タイプ: .DMP、.HDMP、.MDMP、.KDMP、.WEW が WinDBG にマップされます。

WinDBG でのデバッグ シンボル サーバーのセットアップ

デバッグ シンボル (デバッグ シンボルまたはシンボル ファイル) は、プログラムのコンパイル中に実行可能ファイルとともに生成されるデータのブロックです。 このようなデータ ブロックには、変数名、呼び出される関数、ライブラリなどに関する情報が含まれています。 このデータはプログラムの実行時には必要ありませんが、デバッグ時には役立ちます。 Microsoft コンポーネントは、Microsoft Symbol Server を通じて配布されるシンボルを使用してコンパイルされます。

Microsoft Symbol Server を使用するように WinDBG を構成します。

  • WinDBG を開きます。
  • メニューに移動 ファイル –> シンボルファイルのパス。
  • Microsoft の Web サイトからデバッグ シンボルをダウンロードするための URL と、キャッシュを保存するフォルダーを含む行を記述します。 SRV*E:\Sym_WinDBG*http://msdl.microsoft.com/download/symbols この例では、キャッシュがダウンロードされます。 E:\Sym_WinDBG フォルダーには、任意のフォルダーを指定できます。
  • メニューへの変更を忘れずに保存してください ファイル–>ワークスペースを保存します。

WinDBG はローカル フォルダー内でシンボルを検索し、その中に必要なシンボルが見つからない場合は、指定されたサイトからシンボルを自動的にダウンロードします。 独自のシンボル フォルダーを追加したい場合は、次のように実行できます。

SRV*E:\Sym_WinDBG*http://msdl.microsoft.com/download/symbols;c:\Symbols

インターネット接続がない場合は、まず Windows シンボル パッケージ リソースからシンボル パッケージをダウンロードします。

WinDBG でのクラッシュ ダンプの分析

WinDBG デバッガーはダンプ ファイルを開き、デバッグに必要なシンボルをローカル フォルダーまたはインターネットからダウンロードします。 このプロセス中に WinDBG を使用することはできません。 ウィンドウの下部 (デバッガー コマンド ライン) にメッセージが表示されます。 デバッグ者が接続されていません。

コマンドは、ウィンドウの下部にあるコマンド ラインに入力します。

注意すべき最も重要なことはエラー コードです。エラー コードは常に 16 進数で表示され、次の形式になります。 0xXXXXXXXX(オプションの 1 つで示されます - STOP: 、07/02/2019 0008F、0x8F)。 この例では、エラー コードは 0x139 です。

デバッガーはコマンド!analyze -v の実行を提案します。リンクの上にマウスを置いてクリックするだけです。 このコマンドは何のためにあるのでしょうか?

  • メモリ ダンプの予備分析を実行し、分析を開始するための詳細情報を提供します。
  • このコマンドは、エラーの STOP コードとシンボル名を表示します。
  • クラッシュの原因となったコマンド呼び出しのスタックが表示されます。
  • さらに、IP アドレス、プロセスおよびレジスタの障害がここに表示されます。
  • チームは問題を解決するための既成の推奨事項を提供できます。

コマンド!analyze –v (リストは不完全) の実行後に分析する際に注意すべき主なポイント。

1: kd> !analyze -v


* *
* バグチェック分析 *
* *
*****************************************************************************
STOPエラーの記号名(BugCheck)
KERNEL_SECURITY_CHECK_FAILURE (139)
エラーの説明 (カーネル コンポーネントが重要なデータ構造を破損しました。この破損により、攻撃者がこのマシンを制御できるようになる可能性があります):

カーネル コンポーネントが重要なデータ構造を破損しました。 この破損により、悪意のあるユーザーがこのマシンを制御できるようになる可能性があります。
エラー引数:

引数:
Arg1: 0000000000000003、LIST_ENTRY が破損しています (つまり、二重削除)。
Arg2: ffffd0003a20d5d0、バグチェックの原因となった例外のトラップ フレームのアドレス
Arg3: ffffd0003a20d528、バグチェックの原因となった例外の例外レコードのアドレス
Arg4: 0000000000000000、予約済み
デバッグの詳細:
------------------

カウンタは、システムが同様のエラーでクラッシュした回数を示します。

CUSTOMER_CRASH_COUNT: 1

DEFAULT_BUCKET_ID: FAIL_FAST_CORRUPT_LIST_ENTRY

短縮形式の STOP エラー コード:

BUGCHECK_STR: 0x139

障害が発生したプロセス (必ずしもエラーの原因ではありません。障害が発生した時点で、このプロセスはメモリ内で実行されていました):

PROCESS_NAME: sqlservr.exe

エラー コードの説明: システムは、このアプリケーションでスタック バッファ オーバーフローを検出しました。これにより、攻撃者がこのアプリケーションを制御できるようになる可能性があります。

ERROR_CODE: (NTSTATUS) 0xc0000409 - システムは、このアプリケーションでスタックベースのバッファーのオーバーランを検出しました。 このオーバーランにより、悪意のあるユーザーがこのアプリケーションを制御できるようになる可能性があります。
EXCEPTION_CODE: (NTSTATUS) 0xc0000409 - システムは、このアプリケーションでスタックベースのバッファーのオーバーランを検出しました。 このオーバーランにより、悪意のあるユーザーがこのアプリケーションを制御できるようになる可能性があります。

スタック上の最後の呼び出し:

LAST_CONTROL_TRANSFER: fffff8040117d6a9 から fffff8040116b0a0

失敗時のコールスタック:

スタックテキスト:
ffffd000`3a20d2a8 fffff804`0117d6a9: 00000000`00000139 00000000`00000003 ffffd000`3a20d5d0 ffffd000`3a20d528: nt!KeBugCheckEx
ffffd000`3a20d2b0 fffff804`0117da50: ffffe000`f3ab9080 ffffe000`fc37e001 ffffd000`3a20d5d0 fffff804`0116e2a2: nt!KiBugCheckDispatch+0x69
FFFD000`3A20D3F0 FFFFF804`0117C150: 0000000000 000000 000000 00000000 000000 00000000 000000`00000000: Kifastfaildispatch+0xd0
ffffd000`3a20d5d0 fffff804`01199482: ffffc000`701ba270 ffffc000`00000001 000000ea`73f68040 fffff804`000006f9: nt!KiRaiseSecurityCheckFailure+0x3d0
ffffd000`3a20d760 fffff804`014a455d: 00000000`00000001 ffffd000`3a20d941 ffffe000`fcacb000 ffffd000`3a20d951: 違います! ?? ::FNODOBFM::`文字列"+0x17252
ffffd000`3a20d8c0 fffff804`013a34ac: 00000000`00000004 00000000`00000000 ffffd000`3a20d9d8 ffffe001`0a34c600: nt!IopSynchronousServiceTail+0x379
ffffd000`3a20d990 fffff804`0117d313: ffffffff`fffffffe 00000000`00000000 00000000`00000000 000000eb`a0cf1380: nt!NtWriteFile+0x694
ffffd000`3a20da90 00007ffb`475307da: 00000000`00000000 00000000`00000000 00000000`00000000 00000000`00000000: nt!KiSystemServiceCopyEnd+0x 13
000000ee`f25ed2b8 00000000`00000000: 00000000`00000000 00000000`00000000 00000000`00000000 00000000`00000000: 0x00007ffb`4753 07da

エラーが発生したコードセクション:

フォローアップ_IP:
nt!KiFastFailDispatch+d0
fffff804`0117da50 c644242000 mov バイト ptr ,0
FAULT_INSTR_CODE: 202444c6
SYMBOL_STACK_INDEX: 2
SYMBOL_NAME: nt!KiFastFailDispatch+d0
FOLLOWUP_NAME: マシン所有者

カーネル オブジェクト テーブル内のモジュールの名前。 アナライザーが問題のあるドライバーを検出できた場合、その名前が MODULE_NAME フィールドと IMAGE_NAME フィールドに表示されます。

MODULE_NAME:nt
IMAGE_NAME: ntkrnlmp.exe

1: kd>lmvmnt
モジュール全体のリストを参照する
ロードされたシンボル イメージ ファイル: ntkrnlmp.exe
マップされたメモリ イメージ ファイル: C:\ProgramData\dbg\sym\ntoskrnl.exe\5A9A2147787000\ntoskrnl.exe
画像パス: ntkrnlmp.exe
イメージ名: ntkrnlmp.exe
内部名: ntkrnlmp.exe
元のファイル名: ntkrnlmp.exe
製品バージョン: 6.3.9600.18946
ファイルバージョン: 6.3.9600.18946 (winblue_ltsb_escrow.180302-1800)

示された例では、分析によりカーネル ファイル ntkrnlmp.exe が指摘されました。 メモリ ダンプ分析でシステム ドライバー (win32k.sys など) またはカーネル ファイル (この例では ntkrnlmp.exe) が示された場合、そのファイルが問題の原因ではない可能性が高くなります。 多くの場合、問題はデバイス ドライバー、BIOS 設定、またはハードウェア障害にあることが判明します。

BSOD の原因がサードパーティ製ドライバーであることが判明した場合は、その名前が MODULE_NAME および IMAGE_NAME の値に示されます。

例えば:

イメージ パス: \SystemRoot\system32\drivers\cmudaxp.sys
イメージ名: cmudaxp.sys

ドライバー ファイルのプロパティを開いてバージョンを確認します。 ほとんどの場合、ドライバーの問題はドライバーを更新することで解決します。

こんにちは。今日は、将来ブルー スクリーン (BSoD) が表示されたときに役立つ興味深いトピックについて説明します。

私と同じように、他の多くのユーザーは、青い背景に何かが書かれた (青地に白) 画面の外観を観察する必要がありました。 この現象は、ドライバーの競合などのソフトウェアと、一部のコンピューター コンポーネントの物理的な誤動作の両方における重大な問題を示しています。

最近 Windows 10 で再びブルー スクリーンの問題が発生しましたが、すぐに解決したので、それについては近々お知らせします。

そのため、ほとんどのユーザーは、BSoD を分析して重大なエラーの問題を後で理解できることを認識していません。 このような場合、Windows はディスク上に特殊なファイルを作成し、それを解析します。

メモリ ダンプには 3 つの種類があります。

フルメモリダンプ– この機能を使用すると、RAM の内容を完全に保存できます。 32 GB の RAM があり、完全なダンプがあれば、このボリュームはすべてディスクに保存されるため、これはほとんど使用されません。

コアダンプ– カーネルモード情報を保存します。

少量のメモリダンプ– システム誤動作が発生したときに存在していた少量のエラー情報とロードされたコンポーネントを保存します。 BSoD に関する十分な情報が得られるため、このタイプのダンプを使用します。

小さいダンプと完全なダンプの場所は両方とも異なります。たとえば、小さいダンプはパス %systemroot%\minidump にあります。

完全なダンプはここにあります: %systemroot%。

メモリダンプを解析するためのプログラムはいろいろありますが、ここでは 2 つを使用します。 1 つ目は、名前が示すように、Microsoft のユーティリティである Microsoft Kernel Debuggers です。 公式ウェブサイトからダウンロードできます。 2 番目のプログラムは BlueScreenView です。無料プログラムです。ここからダウンロードしてください。

Microsoft カーネル デバッガを使用したメモリ ダンプの分析

システムのバージョンが異なる場合は、異なるタイプのユーティリティをダウンロードする必要があります。 たとえば、64 ビット オペレーティング システムの場合は 64 ビット プログラムが必要で、32 ビット オペレーティング システムの場合は 32 ビット バージョンが必要です。

それだけではありません。プログラムに必要なデバッグ シンボルのパッケージをダウンロードしてインストールする必要があります。 それはデバッグシンボルと呼ばれます。 このパッケージの各バージョンは特定の OS にもダウンロードされます。まず、使用しているシステムを調べてからダウンロードしてください。 これらの記号をどこでも探す必要がないように、ここにダウンロード リンクがあります。 インストールは、%systemroot%\symbols のパスで実行することをお勧めします。

これで、デバッガを起動できるようになります。ウィンドウは次のようになります。

ダンプを分析する前に、ユーティリティで何かを設定します。 まず、デバッグ シンボルをインストールした場所をプログラムに伝える必要があります。 これを行うには、「ファイル」ボタンをクリックして「シンボル ファイル パス」項目を選択し、シンボルへのパスを指定します。


このプログラムを使用すると、シンボルを Web から直接抽出できるため、シンボルをダウンロードする必要さえありません (すでにダウンロードした人には申し訳ありません)。 これらは Microsoft サーバーから取得されるため、すべてが安全です。 したがって、「ファイル」を再度開き、「シンボル ファイル パス」を開き、次のコマンドを入力する必要があります。

SRV*%systemroot%\symbols*http://msdl.microsoft.com/download/symbols


したがって、シンボルをネットワークから取得する必要があることをプログラムに指示しました。 これを完了したら、「ファイル」をクリックし、「ワークスペースを保存」を選択して、「OK」をクリックします。

それだけです。 プログラムを正しい方法で設定したので、メモリ ダンプの分析を開始します。 プログラム内で ボタンを押します "ファイル"、 それから 「クラッシュダンプを開く」をクリックして、目的のファイルを選択します。

カーネル デバッガはファイルの分析を開始し、エラーの原因に関する結果を出力します。


表示されるウィンドウでコマンドを入力できます。 入ったら !分析 –v, その後、さらに詳しい情報が得られます。

このプログラムは以上です。 デバッガーを停止するには、「デバッグ」を選択し、「デバッグの停止」項目を選択します。

BlueScreenView を使用したメモリ ダンプの分析

BlueScreenView プログラムは、さまざまなエラーや BSoD の分析にも適しています。インターフェイスがシンプルなので、使いこなすのに問題はありません。

上記のリンクからプログラムをダウンロードしてインストールします。 ユーティリティを起動した後、設定する必要があります。 パラメータに移動します:「設定」-「詳細設定」。 小さなウィンドウが開き、いくつかのアイテムが表示されます。 最初の段落では、メモリ ダンプの場所を指定する必要があります。 通常、これらはパス C:\WINDOWS\Minidump にあります。 あとは「デフォルト」ボタンをクリックするだけです。


番組では何が見られるのでしょうか? メニュー項目、ダンプ ファイルの名前が表示されたウィンドウの一部、およびウィンドウの 2 番目の部分 (メモリ ダンプの内容) があります。


記事の冒頭で述べたように、ダンプにはドライバー、「死の画面」自体のスクリーンショット、その他の役に立つ可能性のある情報が保存されます。

したがって、ダンプ ファイルがあるウィンドウの最初の部分で、必要なメモリ ダンプを選択します。 ウィンドウの次の部分では、内容を確認します。 メモリ スタック内にあるドライバーは赤みがかった色でマークされます。 これらはまさに死のブルー スクリーンの原因です。

インターネットでは、BSoD の原因となる可能性のあるエラー コードとドライバーに関するあらゆる情報を見つけることができます。 これを行うには、「ファイル」をクリックし、 「エラーコードとドライバーをGoogleで検索」.


エラー発生時に存在していたドライバーのみを表示できます。 これを行うには、「設定」-「ボトムウィンドウモード」-「クラッシュスタックで見つかったドライバーのみ」をクリックします。 または、F7 キーを押します。

BSoD スクリーンショットを表示するには、F8 キーを押します。

すべてのドライバーとファイルを表示するには、F6 キーを押します。

まあ、それだけです。 これで、ブルー スクリーン オブ デスの問題について調べ、何か問題が発生した場合はインターネットまたはこのサイトで解決策を見つける方法がわかりました。 エラーコードを提供していただければ、問題を解決するために記事ごとに書いていきます。

コメントで質問することも忘れないでください。



読むことをお勧めします