プロが教えるわが家の防犯対策術!

あるソフトがメモリ領域にアクセスしている部分を見つけるにはどうすればいいのでしょうか?

        □□□□□□□  □□□□□□□□□
        □ メモリ   □→→□ CPU処理 □
        □□□□□□□←←□□□□□□□□□
          ↓↑           ↓↑
          ↓↑           ↓↑
       □□□□□□□□□→→→→→↓↑
       □ プログラム □←←←←←←↑
       □□□□□□□□□
ですよね?(違うかも。。。。
ここで、プログラムがメモリにアクセスしていますよね
プログラムが、メモリにアクセスしている場所を見つけたいのです。
□□□□□□□    □□□□□□□
□ メモリ □→→→→□プログラム□
□□□□□□□    □□□□□□□
↓仮のメモリ領域
1056823→→→→→→→→→どこ?
ということです
誰か教えてください。
よろしくお願いします

A 回答 (3件)

こちらが質問を理解していないかもしれませんが、



基本は
0・CPUがデバイスからの指示を受け取る
1・HDDのクラスタからソフト領域を特定
2・CPUに確保命令がいき CPUがメモリに読み メモリ領域を確保
3・メモリ(仮想メモリ含む)内のデータに従い、CPUが処理
  メモリ>CPU>メモリ>CPU…
  不要になった時はCPUがメモリの開放などを行う
5・デバイスの指示を受け取れば、CPUがメモリ情報をHDD等に書き込み
6・繰り返し

*マルチタスクで100%の使用率でなければ、
 複数の工程を同時処理できる。

→→どこ?
データ処理、プログラム実行時は、
データを一時記憶するCPU内のレジスタの場合もあますが、
メモリのビープ領域内のどこか(決まってない)になります。
(フラグメンテーション参照)↓
http://ja.wikipedia.org/wiki/%E3%83%95%E3%83%A9% …
*****
人間がメモリをあつかう場合は
論理的なメモリの場所(メモリアドレス)で参照します。
なので特定できなくても構わないのでしょう。
    • good
    • 0
この回答へのお礼

ありがとうございます。
解決しましたw

お礼日時:2008/07/20 11:42

カーネルレベルでメモリアクセスしているところと物理/論理変換しているところを探してフックして確認する。



何のために必要なのかがわからないとどうしようもないと思うんだけど。
そもそも、物理/論理変換で割り当てられるメモリなんかその都度変わるし連続しているとも限らないんだから。
    • good
    • 0

 


ソフト=プログラム
ソフト(プログラム)はHDDからメモリーに読み込まれてから動き始めます。

 

この回答への補足

□□□□□□   □□□□□
□メモリー□→→→□ソフト□
□□□□□□   □□□□□
156245   →→→ どこ?
メモリ領域  ┃  ソフト領域
ということです。。。

補足日時:2008/07/19 17:33
    • good
    • 0

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!