1

I'm developing a program that looks for specific values ​​addressed by a game, I need to know in which "area" of memory the game is running, so I don't have to search all the computer's memory.

How can I get the memory area where the process is running? Like, the memory allocation is from 0x11111 to 0x234F1, for example.

Bill Lynch
  • 80,138
  • 16
  • 128
  • 173
Default
  • 11
  • 1
  • This is highly OS and hardware specific. Modern OS do not let processes just read other processes memory. But users can generally get a special access pass for their own processes. For linux/unix systems look up ptrace. It's complicated. – Goswin von Brederlow Mar 15 '22 at 14:25
  • OS uses an abstraction layer called [virtual memory](https://en.wikipedia.org/wiki/Virtual_memory) which maps the physical storage for a process. All running process get their own virtual memory. Refer to [this](https://stackoverflow.com/questions/38506726) question. – quidstone Mar 15 '22 at 14:56
  • You may want to read up on OS basics. For instance, with "virtual memory" the memory addresses of one process are meaningless to another. The game may use address `0x1111` and so may you, but _their_ address `0x1111` contains a different value than yours. Your program can't even see all the computer's memory. – MSalters Mar 15 '22 at 15:03

0 Answers0