仮想マシンのMUltiプロセッサのレコード再生機能に取り組んでいます。
仮想CPUによって仮想マシンで行われた非決定的なメモリアクセスのログがあります。
これらのポイントの非常に高い割合カーネルスペースメモリ、つまり0Xc0000000より上。
たとえば、仮想マシンでSPLASHベンチマークを実行した後に最もアクセスされたカーネルメモリアドレス10個のリストを次に示します
0xfffb5000
0xc1779db0
0xc18b6910
0xc1771a44
0xc1771a40
0xc1779e00
0xc18b67e0
0xc18b693c
0xc18b67f0
0xfffa1000
これらのメモリアドレスに正確に何があるかを見つける方法があるかどうか知りたいのですが…それはカーネルスタック、vsyscallページ、スケジューラの準備完了リストです…
これで、このオーバーヘッドを解決する方法を考えることができます。レコードの再生を高速化…。
カーネルコードのどこを見ればよいかについてのヒントは大歓迎です
ありがとう
承認された回答:
物理マシンでは、/ boot / System.map *(ディストリビューションでそのファイルが呼び出されているものは何でも)を調べます。
私の推測では、KVMVM内でも同じことが言えます。