windows - How do I get the information shown in vmmap programatically? -
as has watched mark russovich talk "mysteries of memory management revealed" knows, vmmap tool can show things count against process limit (2gb on vanilla 32 bit windows) few other tools seem know about.
i able programmatically monitor real total memory size (the 1 that's germane process limit) can @ least log what's going on when approach process limit. there information publicly available on how vmmap this?
... also, why information darn hard get??
things know (afaik) don't quite give full picture:
- ::getprocessmemoryinfo looks returns info private memory usage
- system.diagnostics.process.virtualmemorysize64 returns pretty large number still doesn't quite match total shown vmmap -- in fact doesn't match shown in vmmap :(
i used dependency walker @ windows api functions imported kernel32.dll
vmmap.exe
, found following functions relevant:
virtualalloc virtualallocex virtualfree virtualprotectex virtualqueryex
take @ , see if can find vmmap
doing. of course other api calls made dynamically (i.e. via loadlibrary
) not show in dependency walker. it's known broke when dealing side-bys-de loaded dlls.
Comments
Post a Comment