Comment #8 on issue 191 by [email protected]: About memory doesn't show  
memory consumption from IE 64 bit
http://code.google.com/p/chromium/issues/detail?id=191

I had some experiments for this issue.

* EnumProcess()  - the curernt implementation
  As you know, EnumProcess() returns only 32bit processes.

* CreateToolhelp32Snapshot()
  We can enumerate all of 32bit/64bit processes including system processes.   
However,
  - OpenProcess() fails for processes of other users.
   This is not a problem in the case of Chromium.
  - GetModuleFileNameEx() fails for 64bit processes of the current user.
   Note: PROCESSENTRY32::szExeFile has only the base name.
  So, CreateToolhelp32Snaphot() doesn't help this issue.

* WMI and WQL
   We can enumerate all of processes including system processes.
   W32_Process::ExecutablePath for 32bit/64bit processes of the current user  
has full
path names, and GetFileVersionInfo() for 64bit executable files succeeds.
   OpenProcess() for 64bit processes of the current user succeeds.
   GetProcessMemoryInfo(), used in some methods of ProcessMetrics, for 64bit  
processes
works fine.
   VirtualQueryEx(), used in ProcessMetrics::GetCommittedKBytes(), for 64bit  
processes
doesn't work.  It seems the retrieved information has only lower 32bit of  
addresses.
   QueryWokringSet(), used in ProcessMetrics::GetWorkingSetKBytes(), for  
64bit
processes works fine.

Conclusion:
   If W32_Process class [1] provides sufficient information for  
GetCommittedKBytes()
(I'm not sure), we can replace about:memory code with WMI+WQL.  Otherwise,  
we can use
WMI+WQL just for 64bit processes, and show incomplete information in  
about:memory.

[1] http://msdn.microsoft.com/en-us/library/aa394372(VS.85).aspx


--
You received this message because you are listed in the owner
or CC fields of this issue, or because you starred this issue.
You may adjust your issue notification preferences at:
http://code.google.com/hosting/settings

--~--~---------~--~----~------------~-------~--~----~
Automated mail from issue updates at http://crbug.com/
Subscription options: http://groups.google.com/group/chromium-bugs
-~----------~----~----~----~------~----~------~--~---

Reply via email to