malloc()とfree()は割り当てられたアドレスとそのサイズを格納します(Linux GCC)?いくつかの実装では、実際に割り当てられたメモリの前にどこかに格納されていますが、テストで確認できませんでした。malloc()/ free()は割り当てられたサイズとアドレスを格納しますか?
バックグラウンドは、誰かがこのために別のヒントを持っている可能性があります。 他のプロセスの文字列の現在の値を判断するために、プロセスのヒープメモリを分析することを少し試しています。 プロセス・ヒープ・メモリーにアクセスして処理しても問題ありません。ただし、文字列の値が変更され、プロセスが毎回メモリの新しい部分を割り当てるため、文字列のアドレスが変更されます。 文字列は固定された書式を持っているため、まだ簡単に見つけることができますが、いくつかの変更を加えれば、古いバージョンの文字列はヒープメモリに残ります(おそらく解放されますが、再利用/上書きはできません)。どの文字列が現在のものであるかを伝えます。
メモリにある文字列がmalloc/freeが知っているアドレスと比較することによってまだ使用されているかどうかを調べたい、現在のものを探したい。
CIAO、 エルマー
以下の私の答えに加えて、これはちょっと役立つかもしれません。http://www.linuxforums.org/forum/linux-programming-scripting/52375-reading-memory-other-processes.html –
あなたはまた、カーネル/ glibcのメモリマッピング部分の周り –