ページ フォールトの原因となるメモリ アクセス (ポインタ) を取得する方法を知っている人はいますか? 私は主に主要なページフォールトに興味があります。
私が達成しようとしていることについての少しの背景。大きなメモリ フットプリント (データベース) を持つアプリケーションがあり、ページングを大きなデータ構造 (テーブル、mmap() を使用して割り当てられたインデックスなど) へのアクセスと関連付けたいと考えています。プロセスのマッピングは、/proc//maps から簡単に取得できます。ここで、ページ フォールトを引き起こすメモリ アクセスがある場合、各データ構造にアクセスするときに発生したページ フォールトの数を追跡できます。
perf または systemtap で十分だと思います。何か案は?