Defrag Tools: #6 - RAMMap

In this episode of Defrag Tools, Andrew and I walk you through Sysinternals VMMap. VMMap allows you to see how the Virtual Memory of a process is being used. You can see how much is used, for what purpose it is being used, and if there has been any memory leaks. Like last week with RAMMap, we cover some Memory Management theory to understand the data in VMMap.
Resources:
Sysinternals VMMap
'Mysteries of Memory Management Revealed' talk [Part 1, Part 2]
Sysinternals Administrator's Reference - [Amazon]
Timeline:
[01:32] - Bar Graphs
[02:58] - Committed, Reserved or Free
[03:35] - Shared Memory and Copy on Write
[05:35] - Memory Types
[09:06] - CPU Addressing Limit (~44bits)
[10:17] - Manual Refresh (F5) and Difference (Ctrl-D)
[11:49] - 'Image' entries
[14:55] - Menus
[17:33] - Timeline... First look
[18:30] - Symbols
[19:30] - Tracing an application from launch
[21:19] - Timeline... Second look
[22:58] - Tracing an application from launch (2nd attempt)
[24:15] - Application Symbol and Source Paths
[25:50] - Source code from a Stack
[27:07] - Summary
Hey Andrew, Where did you get that great t-shirt ?
@Roger: They all come from the Microsoft Company Store (the shop on Redmond campus, as opposed to the retail shops we now have). You'll have to come visit campus!
Excellent presentation, I was using the vmmap earlier today to troubleshoot a memory leak issue and was overwhelmed with the stats. This makes it clear. Thank you!
Hi,
I understand the Heap Allocations button should allow me to see call stacks, but the button is always disabled (grayed out) no matter what I try. (I used the "Launch and Trace New Process" feature to run my application, but it doesn't help.)
Thanks
Rambabu
Hi
I want to know the whole system physical and virtual memory map with system.
how can i know that, as vmmap only tell about particular process.
As in linux there is /proc/kallsyms. so for windows is there anything similar.
Very interesting. Is VMMap information valid for Virtual Machines? In other words, if I put the VMMap executable on an Azure VM where my code is running on Windows Server 2012 R2, will I get information about the processes on that VM?
Thanks,
Jack