Why is Vista showing only 3 Gb memory when 4 Gb is installed?

  • Thread starter Thread starter Stan Kay
  • Start date Start date
S

Stan Kay

I have an ASUS P5B Deluxe motherboard and four 1 Gb sticks of CorsairTwinX
XMS2, DDR2 PC2-6400 memory and am runing version 6000 of Windows vista
Ultimate. The bios reports that I have 4 Gb of memory but after the O/S has
booted it reports only 3 Gb of memory. Moreover, when I run msinfo32 it
reports that I have:-

Total Physical Memory: 4,096.00 Mb
Available Physical Memory: 2.28 Gb
Total Virtual Memory: 2.00 Gb
Available Virtual Memory: 1.96 Gb

Can anyone please offer an explanation for this discrepancy and a view on
whether I will be able to use all of my memory rather than only 75% of it?
 
Stan Kay said:
I have an ASUS P5B Deluxe motherboard and four 1 Gb sticks of CorsairTwinX XMS2,
DDR2 PC2-6400 memory and am runing version 6000 of Windows vista Ultimate. The bios
reports that I have 4 Gb of memory but after the O/S has booted it reports only 3 Gb
of memory. Moreover, when I run msinfo32 it reports that I have:-

Total Physical Memory: 4,096.00 Mb
Available Physical Memory: 2.28 Gb
Total Virtual Memory: 2.00 Gb
Available Virtual Memory: 1.96 Gb

Can anyone please offer an explanation for this discrepancy and a view on whether I
will be able to use all of my memory rather than only 75% of it?


This has been hacked to death on Vista forums. A 32-bit machine has only
4 GB total to work with. The video card needs some address space, adapter
ROMs need some and so forth. The total address space needed is about
..5 GB on most machines. Since the total is 4 GB, that .5 GB has to come out
of that space. What XP and 32-bit Vista do is to move the .5 GB up above
the 4 GB mark, and let the system use that area for those other things. The
..5 GB RAM it moved isn't deactivated, it's just out of the normal 4 GB range.
If you add a /PAE switch to your boot file (I know how to do this in XP
but not Vista) the OS will also use that moved RAM and show all 4 GB
but it will use a banked scheme which switches the RAM in when needed,
swapping it with the ROMs. This takes time and your system will be a bit slower.

Tom Lake
 
Many thanks for the very thorough response Tom. It was very helpful and I
shall now study what you have said and decide whether the switch you refer
to is worth doing.
 
It isn't. What you are seeing is the part of the 4GB that is available to
the user. The remaining ram is reserved for the system. The reason it is
hidden from user programs is to ensure that they don't write in the system
area and crash the system. Just because it is not visible to the user does
not mean it is not used.
 
I have tried the /PAE switch with Vista x86 and it did not work for me.
Winver still only shows ~ 3.3 GB RAM.

| | >I have an ASUS P5B Deluxe motherboard and four 1 Gb sticks of CorsairTwinX XMS2,
| >DDR2 PC2-6400 memory and am runing version 6000 of Windows vista Ultimate. The bios
| >reports that I have 4 Gb of memory but after the O/S has booted it reports only 3 Gb
| >of memory. Moreover, when I run msinfo32 it reports that I have:-
| >
| > Total Physical Memory: 4,096.00 Mb
| > Available Physical Memory: 2.28 Gb
| > Total Virtual Memory: 2.00 Gb
| > Available Virtual Memory: 1.96 Gb
| >
| > Can anyone please offer an explanation for this discrepancy and a view on whether I
| > will be able to use all of my memory rather than only 75% of it?
|
|
| This has been hacked to death on Vista forums. A 32-bit machine has only
| 4 GB total to work with. The video card needs some address space, adapter
| ROMs need some and so forth. The total address space needed is about
| .5 GB on most machines. Since the total is 4 GB, that .5 GB has to come out
| of that space. What XP and 32-bit Vista do is to move the .5 GB up above
| the 4 GB mark, and let the system use that area for those other things. The
| .5 GB RAM it moved isn't deactivated, it's just out of the normal 4 GB range.
| If you add a /PAE switch to your boot file (I know how to do this in XP
| but not Vista) the OS will also use that moved RAM and show all 4 GB
| but it will use a banked scheme which switches the RAM in when needed,
| swapping it with the ROMs. This takes time and your system will be a bit slower.
|
| Tom Lake
|
 
The /PAE switch does not function to override the hiding of the higher
addresses that have been reserved by the BIOS and OS. It does not make more
ram available to programs than already available to the user.

In essence you are trying to solve a non-problem. This is all by design.

The OS uses the high 1GB or so for system addresses. When these addresses
are above the uppermost physical ram addresses installed on the system the
memory manager offsets them into physical ram as needed. There is no need
to block any address space. However, once you have 4GB of real ram, the
memory manger is no longer offsetting these high addresses because system
memory represents real ram addresses and performance improves by not having
to translate addresses. Now that this address space is in real ram, this
ram must be made inaccessible to user programs to prevent user programs from
corrupting the system by writing there. Thus the system addresses are
hidden from the user.

I know I am not getting the description quite right, but I hope you get the
idea. The bottom line is that just because the user cannot see all of the
4GB does not mean that all 4GB is not in use.
 
Yeah, after reading several posts and links provided in these newsgroups,
I realized there was no advantage (might even be disadvantageous) and
no problem, so I just removed the /PAE switch and moved on. HAD to
give it a go though.

Regards

| The /PAE switch does not function to override the hiding of the higher
| addresses that have been reserved by the BIOS and OS. It does not make more
| ram available to programs than already available to the user.
|
| In essence you are trying to solve a non-problem. This is all by design.
|
| The OS uses the high 1GB or so for system addresses. When these addresses
| are above the uppermost physical ram addresses installed on the system the
| memory manager offsets them into physical ram as needed. There is no need
| to block any address space. However, once you have 4GB of real ram, the
| memory manger is no longer offsetting these high addresses because system
| memory represents real ram addresses and performance improves by not having
| to translate addresses. Now that this address space is in real ram, this
| ram must be made inaccessible to user programs to prevent user programs from
| corrupting the system by writing there. Thus the system addresses are
| hidden from the user.
|
| I know I am not getting the description quite right, but I hope you get the
| idea. The bottom line is that just because the user cannot see all of the
| 4GB does not mean that all 4GB is not in use.
|
| | >I have tried the /PAE switch with Vista x86 and it did not work for me.
| > Winver still only shows ~ 3.3 GB RAM.
| >
|
 
"Colin Barnhorst" <[email protected]>


hi Colin, i have been reading you and others here with great satisfaction,
and now i have a question:

What is the ideal maximum RAM in Vista 32bits? Does 4G make sense? Or, p.e.
3 G would be more reasonable?

And... isn't 4 G becoming fastly a very low limit (nowadays everybody edits
videos etc)



Thanks in advance!

f r e e
 
F r e e said:
And... isn't 4 G becoming fastly a very low limit

Which is one of the main attractions of 64bit...

(nowadays everybody edits videos etc)

Since the number of people who can down-sample a screenshot or digital photo
for upload seems to be vanishingly small, I'd seriously question that one
:-)
 
Mike Williams said:
Which is one of the main attractions of 64bit...

(nowadays everybody edits videos etc)

Since the number of people who can down-sample a screenshot or digital
photo for upload seems to be vanishingly small, I'd seriously question
that one :-)
LOL :)
 
I am not an expert ( but I read many posts & then did this )
& the issues was fixed 1st try... !! : ' )
enter Bios
Advance chipset features
memory hole for PCI MMIO
enable feature!

this feature is to remap to address above 4G of ram

its all there now!
 
Back
Top