Please help me win my Bet

Bluehaze

Junior Member
Nov 23, 2007
5
0
0
Guys,
My brother in law is insisting that 4 gig of RAM can be seen with 32 bit OS. either vista or xp pro. I informed him that this is FALSE. 32 bit OS cannot see 4 gig total but revert back to 2.8gig or somewhere in that range.

Only 64 bit OS can read the full 4 gig.

Please post if you agree with the above statement or put my tech knowledge in check by telling i was the one who was wrong. (doubt it).

Thanks.
 

Sheninat0r

Senior member
Jun 8, 2007
515
1
81
In theory, a 32-bit OS could see the whole 4GB - but in reality, 32-bit Windows can only see ~3.2GB out of 4GB that's installed, as some of the memory addressing space is taken up by other data.

So basically, you were right. How much money did you have on this?
 

pallejr

Senior member
Apr 8, 2007
216
0
0
According to Microsoft, one of the changes in SP2 was limiting the address space to 4G. Pre-SP2 was able to address full 4GB plus memory mapped IO
 

pallejr

Senior member
Apr 8, 2007
216
0
0
I've seen some posts about some of the early Beta versions of Vista capable of breaking the 4G-barrier, but that are rumours. I've not tried it myself, and have not seen any documentation from Microsoft about it.

It is a confusing topic :)
 

Nothinman

Elite Member
Sep 14, 2001
30,672
0
0
My brother in law is insisting that 4 gig of RAM can be seen with 32 bit OS. either vista or xp pro. I informed him that this is FALSE. 32 bit OS cannot see 4 gig total but revert back to 2.8gig or somewhere in that range.

If he only said "32-bit OS" then he's right, if he specifically said "XP or Vista" then you're right because MS artificially limited both of them.

I informed him that this is FALSE. 32 bit OS cannot see 4 gig total but revert back to 2.8gig or somewhere in that range.

Only 64 bit OS can read the full 4 gig.

Word for word that's incorrect, the limitation is specific to Windows clients not 32-bit OSes in general.
 

ryderOCZ

Senior member
Feb 2, 2005
482
0
76
Originally posted by: NothinmanIf he only said "32-bit OS" then he's right, if he specifically said "XP or Vista" then you're right because MS artificially limited both of them.
Nothinman is absolutely correct.

Windows Server 2003 is 32-bit and it recognizes 4GB (and more) just fine.

Hope that helps :)
 

JustaGeek

Platinum Member
Jan 27, 2007
2,827
0
71
Originally posted by: Bluehaze
Guys,
My brother in law is insisting that 4 gig of RAM can be seen with 32 bit OS. either vista or xp pro. I informed him that this is FALSE. 32 bit OS cannot see 4 gig total but revert back to 2.8gig or somewhere in that range.

Only 64 bit OS can read the full 4 gig.

Please post if you agree with the above statement or put my tech knowledge in check by telling i was the one who was wrong. (doubt it).

Thanks.

Based on the highlighted part of his brother-in-law's statement, Bluehaze won the bet.

He specifically mentions the 32-bit Vista or XP.

The rest is open to speculations, as he just talks about a 32 bit OS in general.

Is it enough to create a reasonable doubt...? LOL


 

MadRat

Lifer
Oct 14, 1999
11,967
280
126
XP Pro doesn't like to display more than 3.4GB of the addressable space in 32-bit mode, but that doesn't mean it doesn't see the whole 4GB. It is just reserving address space for I/O devices, but it DOES SEE the entire 4GB of memory. And if you use PAE then you can potentially see the entire addressable address space for each application because of page translation. In effect your brother in law won.

http://support.microsoft.com/kb/929605
 

Nothinman

Elite Member
Sep 14, 2001
30,672
0
0
XP Pro doesn't like to display more than 3.4GB of the addressable space in 32-bit mode, but that doesn't mean it doesn't see the whole 4GB. It is just reserving address space for I/O devices, but it DOES SEE the entire 4GB of memory.

No, XP doesn't see all 4G of physical memory. The addresses are usable in order to interact with the hardware but the physical memory that would normally be mapped there isn't. So XP32 can't the full 4G of physical memory and that's the point of contention.

And if you use PAE then you can potentially see the entire addressable address space for each application because of page translation.

No you can't. Even with PAE enabled XP32 won't touch a physical memory address above the 4G mark and since the memory addresses between 4G and however much your hardware requires are now mapped above the 4G mark they've become unusable.

So even if you could convince someone that XP can see it because it does indeed have the entire memory map it'll never touch those addresses making them useless. It's analogous to saying XP "can see" any PCI device just because it can indeed look at the PCI bus and see a device there even though there's no driver available for it.

In effect your brother in law won.

Not unless you play some really bad semantic games and even then it would be an extremely difficult sell.
 

Yellowbeard

Golden Member
Sep 9, 2003
1,542
2
0
The bet was a bit vague. Vista or XP 32 bit can address a total of 4096mb of RAM. But, at a minimum, the first 512mb+ is going to have to be on PCI devices, the CPU cache, then the video card, etc. So, more specifically, they cannot "see" 4gb of installed system memory.
 

JustaGeek

Platinum Member
Jan 27, 2007
2,827
0
71
And generally speaking, the consumer versions of 32-bit Windows have the 4GB upper limit of RAM (artificial or not) - period.

Everything else, including PAE, is a "workaroud", as it is called even by Microsoft in the article 929605 (the link again: http://support.microsoft.com/kb/929605)

It's like betting that a Chevy Cavalier will beat Porsche 911. Impossible...?

With a "workaround". like 8-cylinder Corvette engine and suspension modifications, it will.

A workaround... like the PAE...
 

pallejr

Senior member
Apr 8, 2007
216
0
0
Originally posted by: JustaGeek
And generally speaking, the consumer versions of 32-bit Windows have the 4GB upper limit of RAM (artificial or not) - period.

Everything else, including PAE, is a "workaroud", as it is called even by Microsoft in the article 929605 (the link again: http://support.microsoft.com/kb/929605)

If drivers and devices can do proper DMA, why is PAE a workaround? I think PAE in it self is a fine metod to go beyond 4G
 

Nothinman

Elite Member
Sep 14, 2001
30,672
0
0
Everything else, including PAE, is a "workaroud",

PAE is just a 4th level of page tables, so how is that just a "workaround"? You do realize that AMD64 also uses 4 levels of page tables, right?
 

Yellowbeard

Golden Member
Sep 9, 2003
1,542
2
0
Originally posted by: pallejr
Originally posted by: JustaGeek
And generally speaking, the consumer versions of 32-bit Windows have the 4GB upper limit of RAM (artificial or not) - period.

Everything else, including PAE, is a "workaroud", as it is called even by Microsoft in the article 929605 (the link again: http://support.microsoft.com/kb/929605)

If drivers and devices can do proper DMA, why is PAE a workaround? I think PAE in it self is a fine metod to go beyond 4G

This may not be what you are referring to but, as I understand it, 32 bit device drivers and 32 bit apps are the main source of instability or potential instability when using PAE. Not PAE itself. They are easily "confused" when allowed by the OS to look at a address registers above the level in their design. That is obviously an oversimplification but this is outside my normal realm of study.
 

Nothinman

Elite Member
Sep 14, 2001
30,672
0
0
This may not be what you are referring to but, as I understand it, 32 bit device drivers and 32 bit apps are the main source of instability or potential instability when using PAE. Not PAE itself. They are easily "confused" when allowed by the OS to look at a address registers above the level in their design. That is obviously an oversimplification but this is outside my normal realm of study.

Drivers may have a problem with DMA because they have to deal with physical addresses but I believe they can tell Windows the maximum address that they can use when they startup so if they're smart they won't have a chance to get confused. But apps will never have a chance to get confused because each process still only get 4G of VM and only sees virtual addresses.
 

Yellowbeard

Golden Member
Sep 9, 2003
1,542
2
0
Here is the last thing I read on it. If I distilled all I have read properly, an application without awareness flags for the new register layer will have have that memory access managed by the OS. This "should" not be a problem but there are issues that can arise depending on how well the app is written.

http://www.microsoft.com/whdc/...server/PAE/pae_os.mspx

Technical Issues with Large Memory Support in IA32
Memory Sharing and Inter-Process Communications
In all cases where memory remap is being used for allocating memory to processes, which is common to many PAE variants, memory sharing is problematic. The physical memory being remapped is "outside" the process virtual address space. Thus, the physical memory is less connected to the process in the sense of sharing the process's internal access and security controls, as well as those provided by the operating system.

To apply access and security controls, it is necessary to greatly increase the bookkeeping required of the operating system memory manager as well as the API set the application developer must use. This negatively impacts the high performance possible using very fast remap operations. It is also important to remember that IPC/memory sharing may still take place between two processes' virtual address spaces in any case, regardless of the physically mapped memory each may be using.
Again, I am certainly not trying to debate anyone as I am trying to learn more about this. In a nutshell, PAE in and of itself is fine but, it is obviously not the best solution based on the potential for problems with drivers and apps.
 

pallejr

Senior member
Apr 8, 2007
216
0
0
The last thing you read is about AWE, which allows an application to address more physical memory than the 2-3 GB user space allows. I don't think, from what i've read about it, that it should be such a big problem, it just adds some overhead (but less overhead than paging to a harddrive).

Anyways, normal applications don't even use AWE, so...