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

Popular posts from this blog

linux - Does gcc have any options to add version info in ELF binary file? -

android - send complex objects as post php java -

charts - What graph/dashboard product is facebook using in Dashboard: PUE & WUE -