---------------------------
Brian Weeden
Technical Advisor
Secure World Foundation <http://www.secureworldfoundation.org>
+1 (514) 466-2756 Canada
+1 (202) 683-8534 US
On Tue, Aug 3, 2010 at 5:42 PM, Greg Sevart <[email protected]> wrote:
> I'm still quite confident that you're mistaken. Client Microsoft operating
> systems and Server SKUs less than Enterprise simply will not use any more
> than 4GB. They're technically capable of leveraging PAE to extend memory
> usage, but they don't. They will use PAE to support DEP (and NUMA,
> apparently), but that's it. Windows 7 and fully patched versions of Vista
> will, however, _report_ all installed system memory, but it will not use
> one
> byte more than 4GB. I'd be happy to eat my words if you can point out a
> Microsoft-published document that definitively indicates that I'm
> incorrect,
> but I don't believe that is the case.
>
> This document also outlines memory limits of 32-bit Windows versions that
> is
> marked current as of May 2010:
> http://support.microsoft.com/kb/2267427
>
> Even if I am somehow mistaken and it is somehow possible to use PAE to use
> more than 4GB of memory under a MS Client OS edition, that still doesn't
> change the fact that each 32-bit process still has a maximum of a 4GB VAS.
> PAE and 4GT ("/3GB switch") don't change that. The application must then
> use
> AWE (Address Windowing Extensions) to make use of any memory beyond
> that--and the list of apps that use the AWE API is very small. The only one
> that I know of offhand that does is Microsoft SQL Server.
>
> Greg
>
> > -----Original Message-----
> > From: [email protected] [mailto:hardware-
> > [email protected]] On Behalf Of Soren
> > Sent: Tuesday, August 03, 2010 2:54 PM
> > To: [email protected]
> > Subject: Re: [H] new system build suggestions or upgrade
> >
> > Heh... nice writeup, Greg, but not completely updated, if I humbly may
> say
> > so.
> >
> > If one look at the MS support sites about this question, one will get as
> many
> > different and contradicting explanations on the subject, as there are
> support
> > numbers (Qxyz). Beats the crap out of most techs that I know.
> >
> > However, I have built a large number of AV systems, and quite a number of
> > those are with more than 4GB RAM, even up to 32GB. They all use the
> > installed RAM without any problems, so I guess that at least *some* of
> MS's
> > support sites are right, when some obviously aren't.
> >
> > There is no "trickery" because the processor is not limited to 32 bits of
> > physical address in PAE mode. PAE mode adds a third level of page table
> > lookup and changes the page table entries (PTEs) from 4 bytes wide to 8
> > bytes wide. This gives more room for bits of physical page address, or
> "page
> > frame number." In the first CPUs to implement PAE only four more bits
> were
> > implemented, for a total of 24, or 36 bits of physical address. Thereby
> > allowing 64 GB of ram to be directly addressed. No "trickery" is
> involved.
> It's
> > the same address translation the MMU has been doing all along; the format
> > of the lookup tables (page tables) is just changed.
> >
> > As you may see, this is not as much an O/S question, as it's a CPU
> question.
> > Nowadays, no problems when using a high grade processor.
> >
> > This site pretty much nails it:
> >
> > geoffchappell.com/notes/toc.htm
> >
> > BTW, one of the finer benefits from using a large amount of RAM, is that
> the
> > swap file can be allocated to RAM, which makes makes the system very
> > responsive. This allocation usually takes place from top>down, depending
> on
> > the method used (separate proggie, or just a .reg file).
> >
> > ./
> >
> > Greg Sevart wrote:
> > > Umm....not quite.
> > >
> > > While it is technically possible to use more than 4GB of memory on a
> > > 32-bit OS with PAE, Microsoft client operating systems will NOT use
> > > it. Even the Standard SKUs of their Server operating systems will not
> > > use PAE--Enterprise or Datacenter is required. (This actually gets
> > > even more convoluted--these OS editions DO use PAE to implement
> > > NoExecute memory protection, but will not actually use more than 4GB).
> > >
> > > Furthermore, I think you're confusing user mode memory ("apps") with
> > > kernel memory ("O/S"). By default, 32-bit versions of Windows XP with
> > > 4GB or more memory installed will split the 4GB into 2GB of user space
> > > and 2GB of kernel space. The kernel space is reserved for just
> > > that--the Windows kernel, kernel mode drivers, etc. You can use the
> > > /3GB switch (4GT) to move this 2/2 split into a 3/1 user/kernel split.
> > > Absolutely anything over 4GB is not used, and that's true for 32-bit
> > > versions of Windows XP, Windows Vista, or Windows 7.
> > >
> > > You may lose some of the 4GB address space for memory mapped devices,
> > > such as video cards and other devices. This is why you will frequently
> > > see a 32-bit system with 4GB of memory only report 2.8-3.8GB. There's
> > > no requirement that these devices be mapped to actual memory, just
> > > that they have memory address space--so 64-bit systems with chipsets
> > > that support it will remap actual installed RAM around the mapped
> > > devices. This means that on supported systems and 64-bit OS editions,
> > > you don't lose any memory to memory-mapped hardware devices.
> > >
> > > In short: If you're running 32-bit versions of Windows XP, Windows
> > > Vista, Windows 7, or Windows Server 2003/2008 Standard Edition, 4GB is
> > > your limit, and some of that will always be reserved for hardware and
> > kernel space.
> > > Period.
> > > If you're running 64-bit versions of the above, your limit essentially
> > > depends on whatever MS has licensed for that OS edition. As examples,
> > > Windows 7 Home Premium is 16GB, Professional is 192GB. Windows Server
> > > 2008
> > > R2 Enterprise is 2TB. More detail, and the limits for all Windows OS
> > > editions from 2000 to 7/2008 R2, can be found here:
> > >
http://msdn.microsoft.com/en-us/library/aa366778(VS.85).aspx<http://msdn.microsoft.com/en-us/library/aa366778%28VS.85%29.aspx>
> > >
> > > Greg
> > >
> > >> -----Original Message-----
> > >> From: [email protected] [mailto:hardware-
> > >> [email protected]] On Behalf Of Soren
> > >> Sent: Monday, August 02, 2010 8:51 PM
> > >> To: [email protected]
> > >> Subject: Re: [H] new system build suggestions or upgrade
> > >>
> > >> Sorry, not entirely true. There seem to be a common misunderstanding
> > >> about the O/S allocation of RAM.
> > >>
> > >> E.g. WinXP can only allocate 3GB RAM for the O/S, which is often
> > >> enterpreted as the whole system can only make use of 3GB RAM in total.
> > >>
> > >> Actually, XP can only use 3GB RAM for the O/S, any remaining RAM is
> > >> kindly allocated to applications with a max of 32/64GB for 32/64bit
> > >> versions of
> > > the
> > >> non-server O/S.
> > >> The rest is plain BS. XP typically uses less than 200MB, btw.
> > >>
> > >> The 4GB story is coming from the first release of Vista not reporting
> > >> the correct amount of installed RAM (e.g. 4GB or 8GB showed up as
> > >> 3GB), which, quite understandable, lead to a great deal of confusion
> > >> among guys like
> > > us.
> > >> Both Vista32 and W732 run smoothly on +8GB RAM, same with XP.
> > >>
> > >> The 64bit thing is driven by the market.
> > >>
> > >> Someone wrote:
> > >>> If you need 4G or more RAM then you're going to need 64 bit
> > >
> > >
> > >
>
>
>