32 bit OS and 4GB memory limit
The max amount of addressable memory for a 32 bit OS is 4GB. Does this 4GB also includes the swap space I might have allocated?
Lets say, I am running a 32bit version of Linux on a machine with 4GB of RAM. And I allocated another 4GB in swap. Can the OS use all that is available from the RAM and AS WELL AS the swap? |
If you have a PAE enabled kernel it (the kernel) can access (I believe) 36 bits of address space (64GB). However, since it's a 32 bit system, any one process can only access 32 bit space (4GB).
|
If you do not have a PAE kernel:
1) The maximum physical ram for the kernel plus all processes is BIOS dependent, typically limited to about 3.25GB. 2) Swap space can be used to bring the effective usable memory well above 4GB. I don't know the limit. 3) Each process is limited to 3GB virtual, and the kernel is limited to 1GB virtual, so total memory use over 4GB is only meaningful for multiple processes. If you have a PAE kernel, item (1) changes. The maximum amount of physical ram used can be over 4GB (I think up to 16GB). Items 2 and 3 don't change at all with a PAE kernel. "PAE" is the name of a hardware feature of the CPU. A "PAE kernel" is a kernel with support for that CPU feature. But I believe the naming is inconsistent for that kernel support. I think some distributions, including Red Hat, call that "PAE" but I think others have other names for it. You might need to look carefully at kernel features to know if you are getting the right one. |
Here's the wiki. It's a bit different than either John or I said, but we were mostly right.
http://en.wikipedia.org/wiki/Physica...xtension#Linux |
Quote:
The 32bit memory mapping system supports either 4GB of address space without PAE or 64GB with PAE. But that does not necessarily tell you how much Linux supports with/without PAE. Linux also introduces constraints on total physical memory based on interactions with the way it manages kernel virtual memory. That leads to at least four different levels of memory support based on choices made during kernel build. The lowest level is 896MB without PAE The next level is about 3.25GB (bios limited) without PAE The next level is, I think, about 16GB, with PAE The highest level, I think, is the full 64GB with PAE plus an ugly kludge in kernel virtual memory (I think a bad idea. Use 64bit instead for that much ram). |
John,
PAE is optionally available with NOHIGHMEM or explicitly set with HIGHMEM64G. It in't available with HIGHMEM4G. I have no idea what the reasoning is with any of it; especially why PAE is available with NOHIGHMEM. I believe this is the full set of HIGHMEM and PAE config options. Code:
CONFIG_NOHIGHMEM |
does ubuntu 11.04 32 bit support more than 4GB RAM?
|
The question also asked the part about a swap file. I think the swap file is handled differently. One could address say 3.2G and then have a 4 gig or more swap file. That swap file would not count toward the ram limit. Even though it is being used as ram.
Pretty sure on that but could be wrong. Simple to test. |
i have 6 GB Ram, if i install 32bit ubuntu, is it a waste?
|
Quote:
But I don't have a Ubuntu system handy to check and I couldn't remember the right keywords to search for the answer at packages.ubuntu.org, so I'm not 100% sure there is a PAE kernel in 11.04 |
Hi.
General information at: https://help.ubuntu.com/community/32bit_and_64bit but note if speed is important, performance benchmark comparisons at: http://www.phoronix.com/scan.php?pag...ty_pae64&num=1 providing, for example: Quote:
Best wishes ... cheers, makyo |
Quote:
|
If it does it automatically then yes it would.
|
Quote:
32 bit ubuntu will handle it. right? |
Hi -
Quote:
The maximum addressable space for any 32-bit OS is 4GB. PAE isn't really a satisfactory solution, if you can avoid it. Running a 64-bit OS is the idea solution if your application needs more than 2++GB RAM. 64-bit CPUs are commodities, and most motherboards that support more than 4GB RAM also support 64-bit CPUs. If you want to best utilize 6GB RAM, I'd strongly encourage you to install a 64-bit OS, if at all possible. IMHO ..PSM |
All times are GMT -5. The time now is 05:55 PM. |