Unable to go beyond 2GB RAM on XP Embedded with PAE and 3GB option

G

Guest

I am trying to use 4GB of RAM on a dual Xeon cPCI (compact PCI board)
processor with Windows XP Embedded booted from a flash drive. I have tried
the /PAE and /3GB options in the boot.ini file, but the system properties and
task manager show only 2GB (with or without the PAE and 3GB options). Does
XP-Embedded support more than 2GB of RAM? Do I need additional components to
get it to work?

If I run 2003 standard server from a hard drive on this board with /PAE and
/3GB, I see the full 4GB. If I run XP-Embedded from flash memory, I only see
2GB. I am not using an EWF overlay.
Thank you,
 
G

Guest

The /Pae switch is used to enable a 32-bit OS to address more than 4 GB of
physical memory while the /3GB switch allows a user-mode virtual address
space up to 3 GB (default is 2 GB) and restricts the kernel mode components
to the remaining 1 GB. In your case you're saying the system can't report
more than 2 GB of physical memory (RAM).

XPe, similar to the 32-bit version XP, can support up to 4 GB of RAM.
Probably your machine BIOS or hardware has limitations on the amount of RAM
you can add. I've seen this issue with one of my test machines where no
matter how much RAM I add, it doesn't recognize more than 500 MB. Not sure
how XP server sees all of the 4 GB though on the same hardware. Are you
using a /maxmem or /burnmemory switches in your boot.ini file? I wonder if
you see the same limitations on XP Pro on the same machine ...

KS

This posting is provided "AS IS" with no warranties and confers no rights.
 
G

Guest

Thanks for your help, KS.
Indeed, we found a BIOS setting that allowed us to see the full 4GB, using
the /3GB flag.
I presume from your comments that XP Embedded cannot go beyond 4GB (as can
Enterprise Server 2003), and that /PAE is not needed on XPE since it would
not help go beyond the 4GB, if we were using a board with 8GB.
I guess we will need to go to a full server or to a 64 bit product, should
we need to go above 4GB.
Hopefully, Microsoft will eventually have a 64-bit Embedded product, as our
application has a small program footprint, but needs to store loads of data.
Thanks!
 
G

Guest

Yes XP Pro (and XPe) won't be able to utilize anything beyond 4 GB even
with the PAE switch. Physical Address Extension (PAE) is used to support
more than 4GB of physical memory. This is useful in high-end servers with
more than 4GB RAM. This requires using the PAE version of the kernel
binaries (ntkrnlpa.exe and ntkrpamp.exe for UP and MP systems
respectively). PAE is a Windows Server feature. Although XP has the PAE
versions of the kernel and you can use the /PAE switch on XP, it won't
allow you to access physical memory beyond the 4GB limit; one of the
reasons it's there on XP is to help you during 64-bit driver development
where you can use the /PAE switch to test these drivers on your XP dev box
by presenting the driver with 64-bit addresses. PAE on XP (and XPe) isn't
useful in production because of the 4GB RAM limit. It should be only used
on Windows Server editions to make use of it.

KS

This posting is provided "AS IS" with no warranties and confers no rights.
 

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