4

I'm getting an access violation in a program. Windbg shows that the program is trying to read at 0x09015000. It shows question marks (??) next to the address. My question is, what do these question marks indicate. Do they mean the memory location was never allocated, i.e. it's not backed by any physical memory (or page file)? Or is it something else?

G S
  • 35,511
  • 22
  • 84
  • 118
  • 1
    possible duplicate of [Why I can only see "??" at any address before 0x70000 in Visual Studio Debug Memeory window?](http://stackoverflow.com/questions/3108651/why-i-can-only-see-at-any-address-before-0x70000-in-visual-studio-debug-meme) – Greg Hewgill Jul 13 '10 at 08:12

2 Answers2

4

It means that the virtual address is bad. Possibly a bogus pointer (i.e. uninitialized garbage), freed memory, etc.

G S
  • 35,511
  • 22
  • 84
  • 118
snoone
  • 5,409
  • 18
  • 19
0

Do they mean the memory location was never allocated

That's one possibility. Other options:

  • it was allocated before, but has been freed (VirtualFree())
  • it's not included in the crash dump you analyze. This may depend on the MINIDUMP_TYPE. Also, Procdump has an option ( -mp) to exclude memory regions larger than 512 MB.
Thomas Weller
  • 55,411
  • 20
  • 125
  • 222