Saya sedang mengerjakan fitur MUlti-processor record-replay dari mesin virtual.
Saya memiliki log akses memori non-deterministik yang dilakukan di mesin virtual oleh CPU virtual.
Proporsi yang sangat tinggi dari poin ini ke memori kernel space yaitu di atas 0Xc0000000.
Sebagai contoh berikut adalah daftar 10 alamat memori kernel yang paling banyak diakses setelah menjalankan benchmark SPLASH di mesin Virtual
0xfffb5000
0xc1779db0
0xc18b6910
0xc1771a44
0xc1771a40
0xc1779e00
0xc18b67e0
0xc18b693c
0xc18b67f0
0xfffa1000
Saya ingin tahu apakah ada cara untuk menemukan apa sebenarnya yang ada di alamat memori ini ... apakah itu tumpukan kernel, halaman vsyscall, daftar siap penjadwal ...
Sehingga saya dapat memikirkan beberapa cara untuk menyelesaikan overhead ini ke mempercepat pemutaran ulang rekaman….
Petunjuk ke mana harus mencari di kode kernel dipersilakan
Terima kasih
Jawaban yang Diterima:
Pada mesin fisik, saya akan melihat /boot/System.map* (apa pun nama file itu dalam distribusi Anda).
Dugaan saya adalah hal yang sama berlaku dalam VM KVM.