Hi Muhammad, The addresses in your application are virtual addresses and the addresses in the cache are physical addresses. https://en.wikipedia.org/wiki/Virtual_address_space may help.
Jason ----------- Jason Lowe-Power Assistant Professor, Computer Science Department University of California, Davis 3049 Kemper Hall jlowepo...@ucdavis.edu On Fri, Feb 9, 2018 at 5:53 PM Muhammad Ali Akhtar <muhammadali...@gmail.com> wrote: > Hello All, > > I have been following Part-II of Jason's Book, where we create a simple > MemObject. In the code, our Debug flag prints out the Address of Each > Memory request in the from. > > "Got Request for Address", pkt->Address. > > > I created my own binary (not hello world) and using it as a process.cmd. > In my binary, I am printing out the address of a variable (using printf). > When I run this binary in GEM5, without any debug-flags, GEM5 successfully > executes and My binary prints out the address of variable. This address > remains same in multiple execution runs ( I compiled the binary as static). > > However, when I run the binary with debug-flags=SimpleMemobj, I was > expecting that CPU will generate the request for the same Address where my > variable is. But I never see my variable's address at all in > > "Got Request for Address", pkt->Address. > > Is the CPU not fetching the variables in my binary at all? if yes, than > how come my binary is executing in GEM5?. > > > Muhammad Ali Akhtar > Principal Design Engineer > http://www.linkedin.com/in/muhammadakhtar > _______________________________________________ > gem5-users mailing list > gem5-users@gem5.org > http://m5sim.org/cgi-bin/mailman/listinfo/gem5-users
_______________________________________________ gem5-users mailing list gem5-users@gem5.org http://m5sim.org/cgi-bin/mailman/listinfo/gem5-users