Hello I am using marss with qemu, but this question is related to qemu & kernel. When I use:
qemu-system-x86_64 -m 4G myImage.img and print physical addresses that are passed to cache hierarchy, I see that the physical addresses are not in uniform range: for example: GBrange numberOfAddresses 0-0.5---> 3325 0.5-1---> 1253 1-1.5---> 0 1.5-2---> 30 2-2.5---> 0 2.5-3---> 1708 3-3.5---> 10521 3.5-4---> 0 4-4.5--> 15428 This phenomenon affects my work in following way: In Marss (cycle-accurate simulator for x86), these addresses are used to access cache hierarchy. If phys-addresses are in only in certain range, then, only few cache-set-locations will be accessed and others not. I am studying cache, and because of this phenomenon cache is arbitrarily used. Can I do something to make these addresses uniform? Since it is a kernel issue, I don't know what can be done? I would be grateful for any help. Sparsh