Search code examples
c++windbgcrash-dumps

How to tell what is in committed and reserved memory?


I am currently looking into an issue where an application is using alot of private memory for a C++ app. It looks like alot is in committed and reserve memory based on the dump analysis.

I use Windbg. Is there any way I can see what excactly is in commited and reserve memory? I have narrowed it down to one specific heap.

My theory is that it's not being released. I cannot live debug, I only have dumps to go on.

Any suggestions would help.


Solution

  • !address -Filter should be able to give that information. Here are the different filter options.

    MEM_COMMIT :- All memory that is currently committed for use by the target. Physical storage has been allocated for this memory, in physical memory or in the page file.

    MEM_RESERVE :- All memory that is reserved for future use by the target. No physical storage is allocated for this memory.

    MEM_FREE :- All available memory in the target's virtual address space. This memory includes all memory that has not been committed or reserved. This Filter value is the same as RegionUsageFree.