To the people who understand memory management in Windows...

Since Windows 32 bit OS can only see a certain amount of RAM, if you have a system with say 6GB of RAM, does the 32 BIT OS allow to you to take advantage of all of it?

Windows 7 32 bit allows up to 4GB, but does that mean the OS can only use that much? Maybe it allows you to use all 6GB, but only 4GB can be used by Windows, and the other 2GB by other applications.

This is important so I can use all the RAM that’s available. Since I can’t get Windows 7 64 bit to run Unity, I might go back to 32bit if I can use the majority of the RAM in my system.

Any thoughts?

Thanks!

It’s usually very confusing to people in the winblows world, as the answer to your question depends on a number of factors. Your motherboard’s chipset, flags set in your boot.ini file, bios settings, the OS you’re using and lastly, whether the application supports extended address space through the LARGEADDRESSAWARE flag when compiling with certain compilers.

Some applications can use some voodoo tricks, to extend address space to 36bits. But they’re rare. However in general, most winblows application on a stock installed 32bit system will never use more than 2g of ram. That’s because most users never are smart enough to set the /3g switch in the ini file.

In terms of total ram available to the system as a whole, a 32 bit os on most systems should be able to address 4g of ram. However some of it is taken up for things like PCI, onboard shared video ram, etc. It’ll usually report around 3.25g as available as a result. If you want more than that, you need a 64 bit OS and a motherboard to support it.

tldr version: Sell it and go buy an osX machine.