Originally posted by: Nothinman
But isn't VM usage similar to pagefile usage?
No. The problem is that MS misuses the term all over their UI and it gives a false impression about that being true. The short answer is : VM usage is just address usage, there's no correlation to physical memory or pagefile usage.
The long answer is : Virtual Memory has been discussed on this forum many times, I've probably written what it is at least a half dozen. Basically Virtual Memory is, as the name suggests, nothing more than the virutalization of memory addresses. Each process has a set VM space of 4G, 2G worth of those addresses are reserved by the Windows kernel and 2G are available to the process. Since most people don't have 4G of physical memory available those 4G worth of addresses are mapped to different real physical addresses by the OS with asstance from a hardware MMU, sometimes the VM address points to something that's shared like a library or shared memory mapping, sometimes it points to private data and sometimes it points to nothing. When it points to nothing this causes a page fault and causes the OS to either figure out what the process wanted and page it in from disk or kill the process for attempting to access invalid memory. In the common case of paging the data in from disk, it could be on a normal file like the executable itself or in the pagefile or any other place the OS could be setup to page in from.
Everything causes VM usage, running an app causes VM to be used because the process needs a new VM for it's instance, it needs addresses for the executable, it needs addresses for any libararies it requires whether they're in memory already or not, it needs addresses for any misc mmap()'d files that process uses, etc. It would be trivially easy to write an app that would startup, use 2G of VM and do absolutely nothing.