2012-04-09 29 views
1

コードの開始アドレスと終了アドレス、データ領域、およびヒープの開始と終了を印刷するために、プロセスのメモリ領域にアクセスする方法を学びたいと考えています。 /proc/$ pid/mapsにはプロセスの開始と終了のメモリ領域が含まれていると思いますが、別の方法があるかどうかは疑問です。おそらくptrace()?プロセスのメモリ領域へのアクセス

答えて

0

/proc/$pid/mapsまたは/proc/$pid/smapsは、プロセスのアドレス空間マッピングに関する情報を得るのに最適ですが、Linux固有の方法です。

/proc/$pid/memを使用してメモリ領域にアクセスすることができます(適切な領域にはlseek、またはmmapにアクセスすることに注意してください)。

+0

プロセスのmm_structにアクセスするとよいでしょうか? – user1321341

+0

おそらくカーネルの土地にのみ存在します。そう、いいえ。 Linuxでは、 '/ proc'ファイルシステムは、プロセス関連の(そしてシステム関連の)関連するものを問い合わせるための好ましい方法です。 –

関連する問題