I am working on MUlti-processor record-replay feature of a virtual machine.
I have a log of non-deterministic memory access done in the virtual machine by virtual CPUs.
A very high proportion of these point to kernel space memory ie above 0Xc0000000.
For example heres a list of 10 most accessed kernel memory address after running SPLASH benchmark in the Virtual machine
0xfffb5000
0xc1779db0
0xc18b6910
0xc1771a44
0xc1771a40
0xc1779e00
0xc18b67e0
0xc18b693c
0xc18b67f0
0xfffa1000
I want to know if there is some way of finding what exactly are in these memory address ... is it the kernel stack , vsyscall page, scheduler's ready list ...
So that i can then think of some way of solving this overhead to speed up record replay....
Hints to where to look in the kernel code is welcome
Thanks