Most processors are able to access 64GB RAM in 32-bit mode, because of a
21-year-old enhancement known as PAE (Physical Address Extension) that
adds 4 more address bits.
Windows supports PAE, but most 32-bit versions won't use more than 4GB.
This is part of their licensing and has nothing to do with the hardware.
Ubuntu does NOT have that limitation, and can use all the RAM your
system has, up to 64GB (possibly more on some systems?).
BTW, I have installed 32-bit Ubuntu on a system with 16GB and it
recognized it all.
106 days until the winter celebration (Sunday December 25, 2016 12:00:00
AM for 1 day).
The problem with any 32-bit processor is that there is only
four gigabytes of virtual address space available to a single
program. That doesn't preclude a 32-bit system from supporting
up to 64GB of DRAM (with a single task still limited to 3GB)
using PAE (physical address extension).
Because segmentation has been found to not perform as well as
paging-based virtual memory, the virtual address space is shared
between the kernel (operating system) and an application. The
split is either at 2G user/2G kernel or 3G user/1G kernel. This
split allows faster context switches and efficient access by the
kernel to user data (e.g. when reading/writing files, or passing
data to/from the kernel).
32-bit X86 linux can be configured to split at 2G or 3G, depending on
the kernel configuration parameters when the kernel is built.
Some 32-bit operating systems (e.g. unixware), provided a "windowing"
mechanism that allowed an application to swap portions of the address
space with a system call in order to access larger amounts of virtual
However, with all modern processors supporting 64-bit virtual address
spaces, those techniques have fallen out of favor.
HomeOwnersHub.com is a website for homeowners and building and maintenance pros. It is not affiliated with any of the manufacturers or service providers discussed here.
All logos and trade names are the property of their respective owners.