Linuxのページフォルトハンドラにコードを追加したいと思っています。特に、copy on writeに使用されているもの、つまりdo_wp_page
を変更することに興味があります。しかし、ジレンマは、アプリケーションをテストしたいマシンが私のコントロール下にないということです。 OSやカーネルは、複数のユーザーが使用する共有マシンであるため、そのマシン上で変更することはできません。独自のページフォルトハンドラを使用する
今私は自分のページフォールトハンドラを定義する方法を探しています。これは、実行しているアプリケーションでのみ使用されます。たぶん私はカーネルモジュールを使うことができました(それについても私はいくつかの管理者権限を求めなければならないかもしれません)、あるいは私はそれをユーザー空間で定義することができます。そして、私はSIGSEGV信号を扱うことを望まないことに気づいてください。だから、mprotect
と言ってはいけません。私はページ違反を書き込む際に実際のコピーを扱いたい。私の選択肢は何ですか?
しかし、私はVMで適切にベンチマークできません。私は私のアプリケーションをベンチマークする必要があります。 – pythonic
@ user1018562ベンチマークする必要がある場合は、共有マシンは適切ではありません。他のユーザーは読書にあまりにも多くのノイズを生成します。 –
できます。元のページフォルトハンドラを基準にベンチマークを行うことができます。また、新しいものを開発している間にカーネルがクラッシュするので、共有マシンでもしようとしないでください。 –