0

C# などの高度なプログラミング言語を使用して、Windows 7 マシンのメモリ (RAM) のダンプを実行する最良の方法を研究しています。以下に要約するように、私はこれについてかなりの量の調査を行いました。

•メモリへの Microsoft API アクセスがしばらく前に切断されたようです (\Device\PhysicalMemory)

•<em>メモリにアクセスするには、ユーザー モードではなく、カーネル モードでコードを実行する必要があるようです。

•<em>システム ハング時に Windows ダンプのメモリ (スモール、ラージ、およびカーネル ダンプ) がどのようにダンプされるかを調査しましたが、この方法は私の要件には適していません。

マシンの物理メモリにアクセスするにはどうすればよいか、誰かがよく理解しているかどうか疑問に思いました。Window アプリケーションのプログラミングに慣れているため、低レベルのコーディング言語に関する知識はほとんどありません。私がこれまでに受け取った提案には、メモリにアクセスするためのドライバーを作成し、それを高レベルのプログラミング言語を介して呼び出すことが含まれます。

コミュニティのいずれかが提供できるヘルプは大歓迎です! 前もって感謝します。

4

1 に答える 1

0

procdump -maを使用します。これにより、単一プロセスの完全な状態が得られます。OS のデバッグはカーネル モードの担当者に任せます。

WinDBG を使用したカーネル モード デバッグのかなり短い経験から、2 台目の PC と Firewire リンクから始めることをお勧めします。テスト中のシステムで、ハード ドライブを取り外し、シンボルを使用して OS をインストールします。壊れたときのために、OS の適切な基本イメージとシンボルがあることを確認してください。

私が読むべき WinDBG の本の短いリストには、「Windows ドライバー モデルのプログラミング」、Oney、MSPress があります。

これが役立つ場合があります。

于 2012-04-09T13:24:33.563 に答える