4GB shows as 2GB in Vista Ultimate 32bit

P

Paul Clemmons

Specs: MB: Asus L1N32 (Socket F)
CPU: 2 x FX-74
Mem: 2 x 2GB DDR2
Video: 2 x 8800GTX

So here is the issue. This motherboard has a max capacity of 8GB. Of
course we know that the only OS that will recognize the complete 8GB is with
the 64 bit OS. So with the 4GB in the system and starting up the system,
the BIOS recognizes the total 4GB of memory. But once in Vista, only 2048MB
is recognized. We have looked at various Googled sites and even tried the
BCDEDIT /PAE ForceEnable routine, but that doesn't work, and when you try to
increase the amount of memory under config.sys, it just reverts back to
2048. There is no onboard anything sharing memory (obviously with the pair
of GTX's). I am really at wits end with this one. Please help someone.

--
Paul Clemmons, VP
Sales and Marketing
PC Networks Inc (www.pcnetworkswa.com)
Wicked Machines (www.wickedmachines.com)
Wicked Home Theater (www.wickedhometheater.com)
 
W

WhoFan

Specs: MB: Asus L1N32 (Socket F)
CPU: 2 x FX-74
Mem: 2 x 2GB DDR2
Video: 2 x 8800GTX

So here is the issue. This motherboard has a max capacity of 8GB. Of
course we know that the only OS that will recognize the complete 8GB is with
the 64 bit OS. So with the 4GB in the system and starting up the system,
the BIOS recognizes the total 4GB of memory. But once in Vista, only 2048MB
is recognized. We have looked at various Googled sites and even tried the
BCDEDIT /PAE ForceEnable routine, but that doesn't work, and when you try to
increase the amount of memory under config.sys, it just reverts back to
2048. There is no onboard anything sharing memory (obviously with the pair
of GTX's). I am really at wits end with this one. Please help someone.

--
Paul Clemmons, VP
Sales and Marketing
PC Networks Inc (www.pcnetworkswa.com)
Wicked Machines (www.wickedmachines.com)
Wicked Home Theater (www.wickedhometheater.com)

Vista under 32bit will not show 4GB, but shoudl be showing something
like 3.2GB. I have heard of systems showing from 3.2 - 3.5. The rest
of the memory is in use by Vista but does not show to the user. Only
showing 2GB of memory is a little strange. If you look at resource
usage on the system you should be able to see all the memory being
used.
Have a look at this article: http://www.vistaclues.com/reader-question-maximum-memory-in-32-bit-windows-vista/
 
P

Paul Clemmons

This is where the weirdness creeps in. With 2GB, it reads 2047. With 4GB
it reads 2048. The articles were ok, but it made the assumption that the
'hardware" would not read the 4GB. Again, another weird part is using XP
32bit on the same system, Windows recognizes the entire 4GB (although the
available amount is around the 3.3GB amount). This is why I think the
problem is Vista not being able to "see" what the BIOS sees, which is the
4096MB.


--
Paul Clemmons, VP
Sales and Marketing
PC Networks Inc (www.pcnetworkswa.com)
Wicked Machines (www.wickedmachines.com)
Wicked Home Theater (www.wickedhometheater.com)
 
R

ray

Specs: MB: Asus L1N32 (Socket F)
CPU: 2 x FX-74
Mem: 2 x 2GB DDR2
Video: 2 x 8800GTX

So here is the issue. This motherboard has a max capacity of 8GB. Of
course we know that the only OS that will recognize the complete 8GB is with
the 64 bit OS.

Actually, that's not quite true. I understand that the 32 bit variety of
Linux will support 65gb although it's often recommended not to exceed
16gb. I understand there is a facility to extend the 32 bit adress space
to 36 bits.
 
E

essbee

I am actually suffering from the same situation. 4 GB Dual Channel PC-6400 installed (4 X 1GB). The BIOS recognizes it as 4GB and 64-bit Ubuntu recognizes it (as 3.8 GB). 32 Bit Vista, however, only sees 2.048 GB.

Of note, before I turned on Memory Remapping in the BIOS, the BIOS read 2816 MB. At that time, Vista saw approx 2.5 GB. It's since I've turned on remapping that the BIOS reads 4gb and Vista only 2GB.

Any help is greatly appreciated...

EggHeadCafe.com - .NET Developer Portal of Choice
http://www.eggheadcafe.com
 
J

John Hanley

Paul Clemmons said:
dude, I haven't gotten a word out of MS support on this issue and that was
even at a convention up here in Seattle and they had never heard of it.
Of course they didn't know about the flash thing in IE 7 and Vista either


--
Paul Clemmons, VP
Sales and Marketing
PC Networks Inc (www.pcnetworkswa.com)
Wicked Machines (www.wickedmachines.com)
Wicked Home Theater (www.wickedhometheater.com)



in message news:[email protected]...
Here are some web references that bear on this problem (I had similar
questions a while back).

http://forums.techguy.org/windows-vista/544193-can-vista-handle-4-gb.html
http://support.microsoft.com/kb/929605
http://www.dailycupoftech.com/2007/03/11/mia-ram-in-32-bit-vista/
http://www.codinghorror.com/blog/archives/000811.html

Hope this helps!
 
S

Shawn Britton

Of all the information I've found on this situation (4GB installed and 2048MB showing in Vista...NOT the 4GB installed and 3.XGB showing situation), it has always been an ASUS mobo (mine is a P5B-VM).

Of course searching ASUS' Forum is slightly less cumbersome than building an ice castle at noon in death valley...

I just find it weird that with memory remapping off Vista sees more RAM...it sees what the BIOS then sees (2.816GB)

EggHeadCafe.com - .NET Developer Portal of Choice
http://www.eggheadcafe.com
 
D

DevilsPGD

In message <[email protected]> WhoFan
Vista under 32bit will not show 4GB, but shoudl be showing something
like 3.2GB.

No, it should be showing 4GB minus the amount of memory address space
needed by the add-in cards.

In this case, the two 8800GTXs each have 768MB of memory, so that's the
first 1.5GB if RAM. The motherboard probably reserves the other 0.5GB
"missing", which is pretty typical these days.

In other words, 2GB-2.5GB is the maximum you'll see with those video
cards.
I have heard of systems showing from 3.2 - 3.5. The rest
of the memory is in use by Vista but does not show to the user.

*sigh*

This gets repeated over and over for some reason, but it's just not
true.
 
M

Mark

Windows Vista may automatically set the /3GB flag allowing an application to
use 3GB, but unless the application is specifically written to use LAA, it
will be limited to 2GB of RAM.

The kernel uses 1GB in a 4 GB system.

This applied to WinXP Pro also, but the user had to manually set the /3GB
flag.

For more information, read:
http://www.microsoft.com/whdc/system/platform/server/PAE/PAEmem.mspx

This explains why some motherboards are set up to support 8GB with a 32-bit
OS. (You have to be a server.)




in message news:[email protected]...
 
P

Paul Clemmons

Well all this is finally making sense, although I have yet to see anyone
from MSFT actually speak up on this deal. I had forgotten the extended
memory from the video cards (I have an x1950/256, but it uses an equal
amount of memory to boost it to 512MB and it shows on my system as being
used.). I guess the best way to utilize the entire amount (and the customer
wants an additional 4GB for this board) is to upgrade him to 64-bit. And he
thought he was having issues with the 32-bit Vista.


--
Paul Clemmons, VP
Sales and Marketing
PC Networks Inc (www.pcnetworkswa.com)
Wicked Machines (www.wickedmachines.com)
Wicked Home Theater (www.wickedhometheater.com)
 
J

John Hanley

Try this from Microsoft:
http://support.microsoft.com/default.aspx/kb/929605

Paul Clemmons said:
Well all this is finally making sense, although I have yet to see anyone
from MSFT actually speak up on this deal. I had forgotten the extended
memory from the video cards (I have an x1950/256, but it uses an equal
amount of memory to boost it to 512MB and it shows on my system as being
used.). I guess the best way to utilize the entire amount (and the
customer wants an additional 4GB for this board) is to upgrade him to
64-bit. And he thought he was having issues with the 32-bit Vista.


--
Paul Clemmons, VP
Sales and Marketing
PC Networks Inc (www.pcnetworkswa.com)
Wicked Machines (www.wickedmachines.com)
Wicked Home Theater (www.wickedhometheater.com)
 
G

Guest

How quickly we forget how we got where we are...
Remember the 640MB limit and the 1GB limit?
Same thing, new package. (Lots of detail provided.)
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Large areas of the memory between three and four gigabytes are cordoned off
for system devices in exactly the same way that chunks of the Upper Memory
Area were purloined in the old days. The processor (and other system
components) can talk with some devices by reading and writing memory
addresses up above 3Gb.
Windows users can see all of the reserved memory areas on their PC in Device
Manager, using the View -> Resources By Connection option.

The addresses are all in hexadecimal, which makes it less than instantly
obvious to the untutored viewer which reserved areas are tiny (and usually
old) and which large (and all relatively new). Spend the time to figure it
out, though, and you can see the old backwards-compatibility stuff and the
new 3Gb-barrier stuff, plain as day.

Hex addresses A0000 to BFFFF, for instance, are still assigned to the video
card (a GeForce 7800 GT, in this case). That's addresses 655360 to 786431 in
decimal, 640 kilobytes to 768k. This is the old 128 kilobyte reservation for
the monochrome, CGA and EGA graphics buffers, still there in case you find
your old Leisure Suit Larry disk and want to see if it works.

You'll see a much more considerable reservation from C0000000 to CFFFFFFF,
that's also assigned to my video card. That's 268,435,456 bytes, equal to the
256 megabytes of memory on the card, and it's the chunk of memory addresses
that system devices use when they want to access the card's memory.

If I had a video card with 512Mb or 768Mb of memory on it, it'd take up even
more space in the 3Gb-to-4Gb memory map.

And if I were still using an AGP graphics card, there'd be another block of
memory reserved for the AGP aperture, used when devices on other buses in the
computer want to talk to a graphics card on the AGP bus. I've got a PCIe
graphics card, though, which sits on the same bus as all of the other stuff
and so doesn't need an aperture.

(If you've got a computer with one of those cheap graphics adapters that
uses system memory instead of having RAM of its own, it will of course eat
some of your RAM no matter how much you've got installed.)

Power users with a hankerin' for dual graphics cards may be experiencing
something of a sinking feeling, at this juncture. Yes, the 256Mb reserved for
my little old graphics card means exactly what you think it means: Those two
768Mb graphics cards you can totally justify buying will eat one point five
gigabytes of your 32-bit memory map all by themselves, cutting you down to a
2.5Gb ceiling before you even take the other reservations into account.

This also explains why 1Gb graphics cards haven't hit the consumer market
yet. Nobody yet needs anything like that much memory on one card for any
desktop computer purpose, but some people would still be very happy to pay
for such a card just for the pose value. It'd eat the whole of the fourth
gigabyte of their system memory, though. And then they'd probably demand
their money back.

(This fact has apparently not stopped certain unscrupulous companies,
coughDellcough, from allowing people to buy a computer with WinXP, 4Gb of
RAM, and a pair of Nvidia's oddball 1Gb GeForce 7950 GX2 cards. Result:
56.25% of the installed memory absent without leave. You might as well have
only bought 2Gb.)

As with the Upper Memory Area problem, the 3-4Gb space must have seemed
stratospherically far away when people first started buying $15,000 80386
PCs. But here we are running into it, and the result is not pretty.
That was then, this is now. 64-bit CPUs are widely available, and 64-bit
OSes are starting to trickle into the mainstream market. The nightmare will,
with any luck, soon be over.

A 64-bit PC running a 64-bit OS has a truly vast basic memory address space.
The 4Gb 32-bit address space was 4096 times the size of the 1Mb 20-bit space,
but the 64-bit address space is 4,294,967,296 times the size of the 32-bit
one.
By default, an all-64-bit PC will still have the standard big holes in its
memory from three to four gigabytes. This is the lowest-hassle way to deal
with the problem - just install more than 4Gb of memory, and live with the
fact that your 8Gb PC with a 768Mb graphics card only actually has
seven-point-not-much gigabytes of visible RAM.

One advantage of this is that you can still boot a 32-bit OS, if you want
to. Another is that this vanilla configuration is most likely to actually
work. Better memory configurations aren't necessarily properly supported by
hardware and OSes yet.
If you don't care about these factors, though, there are two ways to get the
lost memory back.

Some 64-bit motherboards these days give you an option for "memory hole
remapping". That moves the fourth-gigabyte MMIO memory holes higher into the
64-bit address space, probably way above the maximum RAM you can physically
install.
Many other 64-bit boards, though, are even smarter, and can leave the memory
holes where they are and remap (at least some of) the physical RAM out from
under the holes and up past 4Gb. This process is often entertainingly
referred to as "memory hoisting", and it used to be the preserve of server
motherboards. It's been showing up in more and more desktop mobos, though.
And on some of them, the memory-hoisting BIOS setting even works, and doesn't
horribly crash the system as soon as something tries to use the remapped RAM.

You may only be able to "hoist" the last 512Mb of the 4Gb address space, but
that's better than nothing. If it works.

I should add a note about the /3GB, /4GT and /PAE Windows boot.ini switches,
too, because they often come up when people are talking about 4Gb-plus
Windows PCs.
They are all useless to you. You do not want them.

/3GB and /4GT are config settings for different versions of Windows that
tell the operating system to change the partitioning of the 4Gb 32-bit
address space so that applications can use 3Gb and the OS kernel only 1Gb, as
opposed to the standard 2Gb-each arrangement. They don't help at all with the
3Gb barrier, and most applications don't even notice them, so desktop users
lose kernel memory space (and system performance) for no actual gain at all.

The /PAE boot.ini switch, on NT-descended Windows flavours, activates the
Physical Address Extension mode that's existed in every PC CPU since the
Pentium Pro. That mode cranks the address space up to 64 gigabytes (two to
the power of 36), and the computer can then give a 4Gb addressing block
within that space - or even more, with extra tricks - to each of several
applications.

PAE's no good to the everyday 3Gb-problem-afflicted user, though, for two
reasons.
First, it presents 64-bit addresses to drivers, and thus causes exactly the
same compatibility problems as a proper 64-bit operating system, except
worse, because now you need PAE-aware drivers for 32-bit Windows, instead of
just plain 64-bit drivers for a 64-bit OS. From a normal user's point of
view, PAE gives you the incompatibility of a 64-bit operating system when
you're still running a 32-bit OS.

For this reason, Microsoft changed the behavior of the /PAE option in all
versions of WinXP as of Service Pack 2. They fixed the endless driver
problems by, essentially, making /PAE in XP not do anything. All versions of
WinXP - even the 64-bit versions - now have a hard 4Gb addressing limit, no
matter what hardware you use them on and what configuration you choose.

This isn't a big problem, of course, since XP is not meant to be a server
operating system. But it's still mystifying to people who try the /PAE flag
and can't figure out why it doesn't work.

Oh, and just in case you for some reason still wanted to try PAE: It eats
CPU time, too.

(If you've got 4Gb of RAM, by the way, the Vista installer may not work
anyway. You can work around that problem, if you have it, by pulling some of
the RAM while you install Vista, then putting it back. Apparently, Microsoft
limits the maximum available memory in 32-bit Vista to 3.12Gb anyway, so it's
hardly worth the trouble of buying more.)
 
G

Guest

Memory re-mapping allows applications to work on either side of the 3GB
barrier (the place reserved for hardware.) That re-mapping requires a larger
kernel operation to track the remapping of memory pages. End result, less
available memory on the same system.

Basically, even though it re-mapped, it did not recover any memory during
the process and required a larger tracking system.
 
R

Rick Raisley

mhonzell said:
How quickly we forget how we got where we are...
Remember the 640MB limit and the 1GB limit?
Same thing, new package. (Lots of detail provided.)

I don't disagree with your facts provided (although I may not understand
them all), but I /do/ disagree with the analogy. The 640 MB limit was
imposed by the OS. It couldn't read more than that. But the system could use
upper memory for other purposes, and did so.
If I had a video card with 512Mb or 768Mb of memory on it, it'd take up even
more space in the 3Gb-to-4Gb memory map.

I know and see that. I have a 768 MB memory video card (8800 GTX), and it
takes up an additional 768 out of my 4 GB of RAM. I guess I still don't see
why it does, though. The board itself has 768. And that's all it needs. Yet
the OS adds another 768 to it, resulting in a total video memory of over
1500 MB. Why is that? I kind of get the idea that the 768 out of RAM is to
communicate with the 768 on the video card, but thought that's what graphics
processors were for.

I've resolved myself to losing the space, but am still not sure exactly why
(in the case of the video card) it occurs. (I understand the other memory
overhead being used.) Would this mean that someone with only 2 GB of RAM and
an 8800 GTX would have on the order of 1 GB left? Bummer!
(If you've got a computer with one of those cheap graphics adapters that
uses system memory instead of having RAM of its own, it will of course eat
some of your RAM no matter how much you've got installed.)

Okay, I understand that if you get a computer with no real graphics card,
just the built-in card with "shared" memory, that it will use your RAM. That
was always (I thought) one reason /not/ to get such a card: to keep the RAM
you have for actual OS memory use, and not give it away for graphics. But in
fact, Vista is doing that /in addition/ to the memory card, right?
(This fact has apparently not stopped certain unscrupulous companies,
coughDellcough, from allowing people to buy a computer with WinXP, 4Gb of
RAM, and a pair of Nvidia's oddball 1Gb GeForce 7950 GX2 cards. Result:
56.25% of the installed memory absent without leave. You might as well have
only bought 2Gb.)

Is that really true? If so, then it doesn't take the 2 GB away from your
basic memory, only that above 2 GB? Are you saying that with this setup, a 4
GB machine will have 2 GB left (more or less), but a 2 GB machine will also
have 2 GB left? This is the part that's confusing me. (Okay, it's ONE of the
parts that's confusing me. ;-)
A 64-bit PC running a 64-bit OS has a truly vast basic memory address space.
The 4Gb 32-bit address space was 4096 times the size of the 1Mb 20-bit space,
but the 64-bit address space is 4,294,967,296 times the size of the 32-bit
one.
By default, an all-64-bit PC will still have the standard big holes in its
memory from three to four gigabytes. This is the lowest-hassle way to deal
with the problem - just install more than 4Gb of memory, and live with the
fact that your 8Gb PC with a 768Mb graphics card only actually has
seven-point-not-much gigabytes of visible RAM.

One advantage of this is that you can still boot a 32-bit OS, if you want
to. Another is that this vanilla configuration is most likely to actually
work. Better memory configurations aren't necessarily properly supported by
hardware and OSes yet.
If you don't care about these factors, though, there are two ways to get the
lost memory back.

These are all 64-bit PCs (modern machines like my E6700), but how can it
take advantage of more than 4 MB if the OS is still 32-bit?

I'm clipping the motherboard info, as it's a bit beyond me. I've got an Asus
quad-capable MB (P5NE or something like that), but don't know if settings
there would help.

Thanks for all the information. Some of it is just a bit hard for me to
absorb. ;-)
 
K

Ken Blake, MVP

I have a 768 MB memory video card (8800 GTX), and it
takes up an additional 768 out of my 4 GB of RAM. I guess I still don't see
why it does, though. The board itself has 768. And that's all it needs. Yet
the OS adds another 768 to it, resulting in a total video memory of over
1500 MB. Why is that? I kind of get the idea that the 768 out of RAM is to
communicate with the 768 on the video card, but thought that's what graphics
processors were for.



No, you're misunderstanding what happens. The video card does *not*
take 768MB out of your 4GB of system RAM; it does not take *any* of
your system RAM.

What it uses (not takes) is some of the 4GB *address space* that all
32-bit versions of Windows have. That 4GB of address space is the same
for all of us, *regardless* of how much memory we have: 512MB, 1GB,
2GB, 4GB, etc.

I have 2GB of RAM here. It uses 2GB of that address space. My video
card uses some of the address space and other hardware uses other
parts of it. All the hardware use adds up to a little under 1GB for
most people. So 2GB and 1GB add up to 3GB, and the other 1GB of
address space goes unused.

You use the same 1GB (roughly) of address space for your hardware.
That leaves you with roughly 3GB available to map your RAM to (just as
does on my computer). Since you have more RAM than 3GB (4GB) the
remaining 1GB has nothing to map to and can not be used.
 
D

DevilsPGD

In message <[email protected]> "Rick Raisley"
I don't disagree with your facts provided (although I may not understand
them all), but I /do/ disagree with the analogy. The 640 MB limit was
imposed by the OS. It couldn't read more than that. But the system could use
upper memory for other purposes, and did so.

The 640KB (not MB) limit was hardware and software imposed -- A portion
of the memory at 640KB or so was reserved by hardware (and still is to
this day, actually)

Since the space above that was not consistently available on all system
configurations, it was left unused by DOS until himem.sys came around.
I know and see that. I have a 768 MB memory video card (8800 GTX), and it
takes up an additional 768 out of my 4 GB of RAM. I guess I still don't see
why it does, though. The board itself has 768. And that's all it needs. Yet
the OS adds another 768 to it, resulting in a total video memory of over
1500 MB. Why is that? I kind of get the idea that the 768 out of RAM is to
communicate with the 768 on the video card, but thought that's what graphics
processors were for.

I'll try an analogy -- Analogies suck, but it might help.

First off, this is *not* an accurate representation of how memory is
allocated or addressed in x86 machines. However, for the purposes of
understanding this particular issue, I think it will make sense.

Imagine you're sitting at a desk with one or more boxes in front of you.
You can only fit 10 boxes on the desk though, and each box can only hold
one item at a time.

Now imagine your friend comes along and brings his own four boxes. He
has shorter arms, so he can only reach his four boxes and can't touch
your boxes.

If you want to share items, there are two possibilities.

1) Your friend can ask you for the contents of a box and you can pass it
over when requested, one at a time. This is slow, because it means
neither of you can do anything else while you're helping each other out,
but it's pretty simple to implement and it works fine for slow devices
on a PC.

2) He puts his boxes on your table, and you can reach into each other's
boxes.

If you only have six boxes (or less), he can fit his four on the table
too, and you can reach all ten (six of yours, four of his), so when you
want to give something to him, you can just dump it in his box, rather
then handing it over and he puts it in his own box.

The downside is that he is taking up some room on the table, so you only
get six boxes whether or not you're giving items to your friend.

64bit gives you a bigger table and longer arms -- Technically the same
problem exists, but with up to 18.45 exabytes addressable, we won't run
into the problem for quite a while.
These are all 64-bit PCs (modern machines like my E6700), but how can it
take advantage of more than 4 MB if the OS is still 32-bit?

Lets take the above example, and stretch it a bit further. There is a
trick which can be used to access a bit more then 4GB of memory.

With a 64-bit computer, your table is bigger, but with 32-bit OS, your
arms can still only reach ten boxes at once. So what you do is hire a
helper, this helper moves the boxes around, so even though you can only
reach ten boxes at once, you can sometimes reach different boxes.

This solution adds a huge amount of complexity into the system, and
requires a non-trivial amount of overhead, basically it means you need a
list of what other boxes are available and what is in each, plus when
you trade boxes, it takes your friend a moment to switch them around.

Hopefully that explains the concept a little bit, I'm sure there are
holes in this analogy I haven't even thought of, and it is definitely
not in any way representative of how memory is managed or used on a x86
computer, but the concept of relating arm length to address space might
be valid enough to make sense.
 
M

Mark

Whether the video card uses the reserved space or not is immaterial.
A 32-bit system can only address 4GB of RAM. It doesn't care where that RAM
resides. If it's on a video card, then an equivalent amount of System RAM
must be "disabled" to allow the video RAM to be addressed by the OS.
The "addressing" you keep referring to is the second set of reservations in
the example below and makes up about 30MB for a 256 MB video card.

Try what I said:
View Resources by Connection under Device Manager.
Select your video card and see what addresses are reserved for it to
operate.
In my case, memory addresses: D0000000-DFFFFFFF (which starting address
is at the 3.3GB barrier)
That's 268,435,455 bytes (256 MB) reserved for addressing the video
memory (display buffer?) which is the same as the memory on my video card.
But, it also reserves 15 MB at FB000000-FBFFFFFF,
another 15 MB at FC000000-FCFFFFFF
and the old technology reserved area at A0000-BFFFF.

Altogether, the hardware will not relinquish that 290 MB to Windows. It
cannot without violating the 4GB addressing scheme. This is the same for all
the other hardware addresses reserving space.
 
C

cvp

"A 32-bit system can only address 4GB of RAM."

True for some processor architectures, but not the Intel 32-bit
architecture. By use of segment tables and the PAE extension, it can support
up to 64GB of RAM.
The intertwining of LDTs, GDTs, PAE and page tables provide a myriad of
addressing modes which are simplified by the restrictions chosen by the
Operating System (not to mention the support chips which have their own
restrictions.

Mark said:
Whether the video card uses the reserved space or not is immaterial.
A 32-bit system can only address 4GB of RAM. It doesn't care where that
RAM
resides. If it's on a video card, then an equivalent amount of System RAM
must be "disabled" to allow the video RAM to be addressed by the OS.
The "addressing" you keep referring to is the second set of reservations
in
the example below and makes up about 30MB for a 256 MB video card.

Try what I said:
View Resources by Connection under Device Manager.
Select your video card and see what addresses are reserved for it to
operate.
In my case, memory addresses: D0000000-DFFFFFFF (which starting
address
is at the 3.3GB barrier)
That's 268,435,455 bytes (256 MB) reserved for addressing the video
memory (display buffer?) which is the same as the memory on my video card.
But, it also reserves 15 MB at FB000000-FBFFFFFF,
another 15 MB at FC000000-FCFFFFFF
and the old technology reserved area at A0000-BFFFF.

Altogether, the hardware will not relinquish that 290 MB to Windows.
It
cannot without violating the 4GB addressing scheme. This is the same for
all
the other hardware addresses reserving space.
 

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Top