Take the 2-minute tour ×
Super User is a question and answer site for computer enthusiasts and power users. It's 100% free, no registration required.

I'm looking for specific information and hoping someone can point me right as I've been looking for some time. As related to cache memory the following list is set of instructions I'm guessing? Well whatever they are how do you go through them to see if there is data in them?

I willing to read and learn but can't find relevant info. And I know that the mediators are rather picky about vague posts, but all my searches fetched info on blue screes, etc.

0x00000200 
0x00000000 
0x00000200 
0x00000000 
0x00000200

I know they are hex representation of a memory location but if a program was to access it what exactly would happen in the code - meaning, hit wise or miss wise how do you check for that?

Thanks,

Risho

share|improve this question

1 Answer 1

Linux, in case you talk about that, is using an MMU to implement virtual memory. This means, if one process uses these numbers as memory address, they don't necessarily have to be the "real" addresses inside the memory. There is like an abstraction layer inbetween which translates the addresses that the processes sees into the physical addresses on your memory banks.

BTW. I think it usually doesn't happen that a process is getting the number 0x0 as a memory address. Is it possible that these are maybe not absolute numbers but offsets from something else?

That's a nice article about the topic: http://en.wikipedia.org/wiki/Virtual_memory

Where did you get the numbers from?

share|improve this answer
    
BTW. this also means that if you really want to get the data that one particular process sees under this memory address. The safest and easiest way is usually to add a method to this process whcih makes it read that memory address and output it. instead of reading it from another process –  mauro.stettler Feb 20 '13 at 5:46
    
Or you start it in GDB. Then you can do it manually inside the GDB cli without having to implement anything in the process. –  mauro.stettler Feb 20 '13 at 5:47
    
You can also use GDB to attach to a running process and print out these addresses like gdb -p <pid> and then in the console you just print 0x00000200. that way you can read the memory from a running process, out of the processes perspective –  mauro.stettler Feb 20 '13 at 5:49
    
Sorry for adding so many comments. I'm getting too excited when talking about memory:) –  mauro.stettler Feb 20 '13 at 5:52
    
Here is the scoop: I'm trying to learn how memory works, cache and all that and coworker suggested to write a cache simulator and since I'm a hands on guy why not. He gave ne text file with 64K of these hexes, they seem repeating at times. –  Risho Feb 20 '13 at 5:57

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.