On Sun, Mar 30, 2008 at 12:46 PM, Benjamin Zachary <[EMAIL PROTECTED]> wrote:
> If I goto taskmgr and manually add all the ram in use Im at about 450megs,
> the box is reporting 1.2gb of ram in use. Obviously not even close.

  I dunno about Vista, but on 2000/XP: the default "Mem Used" column
in Windows Task Manager is actually the Working Set, i.e., the pages
that task has loaded into RAM.  Meanwhile, the "Mem Used" or "PF Used"
total is actually the Commit Charge.  No per-process number I've ever
found consistently adds up to the Commit Charge.  I expect that's due
to things like: Kernel paged pool (counts towards Commit but isn't a
per-process number), memory mapped hardware I/O and files (count
towards VM size but don't need committed backstore), allocated but
untouched pages (count towards commit, but aren't stored in RAM or PF
(until written to)), shared pages (exist in the VM of multiple
processes, but only ever get stored once), and copy-on-write pages
(counted in commit for each process, but don't get stored until
written to).

  I've also noticed that the memory needed by a VM in VMware doesn't
appear to show in any per-process counter, and I have a suspicious
that the Symantec AntiVirus filter driver does something similar.  So
I'm guessing there's a way to allocate pages which isn't revealed in
Task Manager or Process Explorer, but still counts towards the Commit
Charge.

-- Ben

~ Upgrade to Next Generation Antispam/Antivirus with Ninja!    ~
~ <http://www.sunbelt-software.com/SunbeltMessagingNinja.cfm>  ~

Reply via email to