Available – This numbers includes all physical memory which is immediately available for use by applications. It wholly includes the Free number, but also includes most of the Cached number. Specifically, it includes pages on what is called the “standby list.” These are pages holding cached data which can be discarded, allowing the page to be zeroed and given to an application to use.
Cached – Here things get a little more confusing. This number does not include the Free portion of memory. And yet imight see that it is larger than the Available area of memory. That’s because Cached includes cache pages on both the “standby list” and what is called the “modified list.” Cache pages on the modified list have been altered in memory. No process has specifically asked for this data to be in memory, it is merely there as a consequence of caching. Therefore it can be written to disk at any time (not to the page file, but to its original file location) and reused. However, since this involves I/O, it is not considered to be “Available” memory.
Total – This is the total amount of physical memory available to Windows.
Installing the maximum 4 gigabytes of RAM into your computer may not result in all 4 gigabytes being available. We'll look at why.
Right click on My Computer, click on Properties, and in Windows Vista you'll get a window that includes, among other things, this information:
That's a snapshot taken from my laptop. The laptop with 4 gigabytes of RAM installed but showing only 3326 Megabytes of RAM available.
That window also includes another important clue: "32-bit Operating System". Ultimately therein lies the dilemma.
(A quick over-simplification and aside for some: a "bit" is simply a single digit that can contain either a 0 or a 1. Thus when we talk about a "32 bit" operating system or processor, we're talking about systems that operate natively on 32 bits at a time.)
If you look at all possible arrangements of a collection of 32 1's and 0's, you'll find that there are 4,294,967,296 possible combinations. 4 Giga-combinations.
Computer memory is arrange in bytes, so when you order 4 gigabytes of RAM, you're actually getting 4,294,967,296 bytes of memory. And yes, each byte of memory is assigned it's own unique number or "address" - that's how the processor tells the memory hardware which bytes of RAM it wants to operate on.
All's well and good, and you would expect that while a 32 bit operating system would be able to addressat most 4 gigabytes of RAM, it seems like it should be able to address all 4 gigabytes of RAM.
"There is one solution, but you probably won't like it. At least not yet."
Unfortunately, not so.
Enter the concept of "memory mapped" hardware.
The best, and often the largest example, will be your video card. It typically includes video memory of its own. That memory is "mapped into" or made visible within your PC's 4 gigabyte address space. Say I have a 512 megabyte video card, the memory layout might look something like this:
What you'll notice is that since the video card must place its 512Meg video memory somewhere into the 4 gigabyte address range that your computer can access, it "gets in the way of" 512Meg of your system RAM. That 512Meg of system RAM becomes inaccessible.
Windows works very hard to minimize the impact, and on any system that has less than 4Gig of RAM you'd never notice, since Windows will make sure to put the video and other memory mapped hardware in places that don't conflict with physical RAM. But as soon as you put in 4Gig of RAM that's the maximum a 32 bit system can address and as a result there's no place the memory mapped hardware can hide. It will have to obscure some of that RAM.
There is one solution, but you probably won't like it. At least not yet.
64bit Windows.
資料來源: http://www.tomshardware.com/forum/5860-63-available-stand-free-cached-memory-differences
http://ask-leo.com/why_doesnt_windows_show_all_4gigabytes_of_memory_i_have_installed.html
沒有留言:
張貼留言