by Bob » Mon Sep 05, 2011 3:40 pm
When an application or process asks the OS for memory, it can either reserve the memory or commit the memory. Reserve is a place holder. It only tells the OS to make sure that the application can get that much memory, it doesn't actually make it available. Commit on the other hand makes that virtual memory available and it is backed up in the system page file. The "System" section contains a "Commit" entry. The first number in the line is the currently used amount of committed memory. The second number is the system commit limit. Essentially the maximum amount of commited memory that can be allocated. It's the sum of the size of the page file and the amount of RAM. If the system commit limit is reached bad things happen and you can crash or freeze the system.
The system can automatically expand and contract the system page unless you prevented the page file from expanding or you do not have sufficient free space. If you reach the system commit limit and you can't expand the page file you are toast.
The "Physical Memory" section describes the use of real memory. The "Total" figure is supposed to be the amount of installed RAM. It's not quite, for reasons I'm not privy to. If you were to start the resource manager and look at the Memory tab all the installed memory is accounted for. It's a task manager quirk. "Cached" used to be called "System Cache" in Windows XP. It's a little quirky also. It contains the commited memory that has been modified but not yet written to the page file, the working set of the OS, and cached pages that have either been recently accessed or loaded in anticipation of use for performance reasons. "Available" also contains the same cached pages included in "Cached" (but not including the OS working set or modified pages) and the unused or free pages. And, "Free" is the currently unused or free pages.
"Available" is where the cached data resides and is important for performance. If the workload drives down the available amount, the data will have to be read from the hdd and performance will go down. If the data that needs to be fetched resides in the page file, paging will also increase and performance will further degrade. If Available is low and the performance manger shows high page file reads, you need more RAM.