質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.48%
Windows

Windowsは、マイクロソフト社が開発したオペレーティングシステムです。当初は、MS-DOSに変わるOSとして開発されました。 GUIを採用し、主にインテル系のCPUを搭載したコンピューターで動作します。Windows系OSのシェアは、90%を超えるといわれています。 パソコン用以外に、POSシステムやスマートフォンなどの携帯端末用、サーバ用のOSもあります。

Q&A

解決済

2回答

23855閲覧

Memory.dmpやprocess.dmpの解析方法について

mats

総合スコア32

Windows

Windowsは、マイクロソフト社が開発したオペレーティングシステムです。当初は、MS-DOSに変わるOSとして開発されました。 GUIを採用し、主にインテル系のCPUを搭載したコンピューターで動作します。Windows系OSのシェアは、90%を超えるといわれています。 パソコン用以外に、POSシステムやスマートフォンなどの携帯端末用、サーバ用のOSもあります。

0グッド

1クリップ

投稿2016/07/31 15:08

WindowsがBSODになったりアプリケーションがエラー終了した場合、
ログとかで原因を負えなかったらMemory.dmpやWERのProcess.dmp
を解析する事が有効と思い、解析方法を勉強したいと思っています。

Webで探しても極端に高度だったり!analyze -v 位の内容にしか
出てこないです。

書籍だとWindowsダンプの極意だったりリバースエンジニアバイブル
位かなと思いますが、64bitOSの時代に32bit向けの内容だったりで
環境をを用意しないといけなかったり不明点がでてもそれに対する
回答を調べられなかったり、独力では難しいかなとも思っています。

サイトであったりスクールであったりこういった技術を学べるような
場所はありますでしょうか。
解析をしている方とかは、どのような方法で技術を身につけているか
教えて頂けると嬉しいです。

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答2

0

ベストアンサー

高度なダンプファイルの解析はwindbgを使用する事になりますが、ユーザーダンプとカーネルダンプでは別の解析テクニックが必要になります。

また、カーネルダンプでも、ドライバ関連の調査とプロセス関連の調査に必要なテクニックは違いますし、ユーザーダンプでも、wow64や.netのプロセスだとそれぞれの解析テクニックが必要になるなど、とにかく解析対象によって様々ノウハウ情報が必要なのが実情で、すべて網羅的に情報がまとまったサイトというのは、まず存在しないと思います。

ただ、日本語の書籍としては、とりあえず以下の本が入門としては非常に有用だと思います。
Windowsダンプの極意 エラーが発生したら、まずダンプ解析!

また、カーネルダンプ系の解析に関しては、下記にある程度の情報があります。
WinDbgの使い方
逆引き WinDbgコマンド

ちなみに、私は会社にて様々なソフト系の技術支援を行っており、様々なカーネルダンプ・ユーザダンプとも数十件(百以上?)は解析しいてて、その中で試行錯誤することで、独学でノウハウを学んでいきました。
(上記URLは、そのノウハウのうちの一部の一般的な内容を掲載したものです。その他の全ノウハウの公開は困難ですが、具体的な事例が示されれば、個別に具体的な解析方法をアドバイス可能かもしれません)

また、カーネルダンプの解析においては、WindowsOSのカーネル内部の知識が必須であり、そのためには、下記の2冊の知識も必須ですね。

あと、有料でも構わないなら
プロフェッショナルのための安価なWindowsカーネルメモリダンプ解析入門講座
というのが存在しています。
(私は受講していないので、どれほど有用かは不明ですが・・・)

投稿2016/08/01 13:10

KenjiToriumi

総合スコア344

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

mats

2016/08/02 14:11

色々情報ありがとうございます! 私も解析にはwindbg使ってます。 調べるのはカーネルダンプになります。うちの会社の製品 シンボルファイルがなさげなので(笑) インフラ系の部署にいるんですが今はベンダーにほとんど丸投げして ベンダー回答をトレースしながら勉強してます。 まだドライバのエラーとかは分かりやすいですが、.netのエラーは 複雑すぎて半ばあきらめてます。 ダンプの解析で一番難しいと思うのは、色々な観点から立体的に 調査をするというのが出来ないですね。やっぱりOSの内部動作等 深い知識をつけて数をこなして、結果を分析していくしかないですね。 ご紹介頂いたサイト確認してみます。有料のものも安そうなので 試してみたいと思います。 大変参考になりました!どうもありがとうございます! また詰まったら投稿させていただくかもしれないので その際はアドバイスを頂けると嬉しいです。
guest

0

私も独学で勉居中です。

とりあえずVisualStudioがあるならばdmpファイルをロードして概要を調べることができます。たとえば読み込んでいるDLLについてとかならすぐわかります。また、実行環境と同等の環境を用意できるならばプロセスとしてロードし、VisualSudioをデバッガ、対象プログラムをデバッギとしてアタッチした状態を作ることができたはずです(スタックの状況とか見られます)。さらにPDBファイルがあればなお良いと思います。

自分がわかるのはここまでです。というか、自分も情報ほしいです。

投稿2016/07/31 16:08

HogeAnimalLover

総合スコア4830

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

mats

2016/08/02 13:48

私は無料のwindbgをつかってます。 VisualStudioもprofessionalならデバッグが出来たり 勉強になりそうですが、ちょっと高くて個人では なかなか手が出ないですね。 こういう情報欲しいですよね。 深い知識が手に入ったら一生食うに困らなそうで 独学で勉強していこうと思います。
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.48%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問