固定サイズのファイルがあります。ファイルは、サイズ = N * getpagesize() に ftruncate() されています。ファイルには固定サイズのレコードがあります。ファイル全体を mmap(...MAP_SHARED...) でマップし、レコードをランダムに変更する (配列のようにアクセスする) ライター プロセスがあります。mmap(...MAP_SHARED...) も行うリーダープロセスがあります。ここで、リーダー プロセスは、ライター プロセスがランダム レコードに書き込むため、マッピングで変更されたページを特定する必要があります。ユーザー空間でそれを行う方法はありますか? 私は Linux を使用しています - x86_64。プラットフォーム固有のコード/ハックは大歓迎です。お時間をいただきありがとうございます。
編集: ライター プロセスのコードを変更して、何らかの方法で変更されたレコードを示す自由はありません。