64 bit memory usage

John Nagle nagle at animats.com
Thu Dec 9 12:23:54 EST 2010


On 12/8/2010 11:40 PM, Ian Kelly wrote:
> Since a process need not have all its pages in physical memory
> simultaneously, there is no reason to suppose that a single process
> could not consume the entirety of the available virtual memory (minus
> what is used by the operating system) on a 64-bit system (the same
> cannot be said of a 32-bit system, where the total virtual memory
> available may well be larger than the addressable space).

     Actually, the "32-bit" x86 machines since the Pentium Pro
are really 36 to 48-bit machines.  They only offer 32-bit flat address
spaces to user programs, but the MMU and memory interface support a
larger address space.  The page table design supports 64-bit
physical memory, but most of the bits beyond 36 usually aren't
implemented.   Linux fully supported this; Windows tried, but
older drivers were a problem.  That's why there are 32 bit
machines with more than 4GB of RAM.

     None of the real 64-bit architectures, from AMD64 to SPARC
to Itanium, need this hack.

				John Nagle




More information about the Python-list mailing list