プロセスに属するページテーブルのどのページがデータセグメントとして使用されているかを知りたいのですが。amd64にLinuxカーネルv3.2を使用しています
これが私が以前にしたことと機能しなかったことです:
を使用してデータセグメントにアクセスします
task->mm->start_data
(taskはターゲットプロセスのtask_structです)。task->mm->mmap
(リンクリスト)を検索し、各vm_area_struct
(vm_start
)の開始アドレスを。と比較しtask->mm->start_data
ます。ここでは、データセグメントの先頭がページの先頭に揃えられていると仮定しています。
これはすべて、カーネルモジュール内で実行する必要があります。
ありがとう。