In contrast, while 32-bit versions of Linux and Mac OS X give each application its own full 4GB of virtual memory, those addresses share (overlap with) those used by the kernel's own 4GB space. That means the CPU's TLB can't maintain its cached addresses because there's no way distinguish between the two.
Every time the virtual memory system moves between the two address spaces, it has to flush the CPU's TLB.
Every 32-bit system call flushes the TLB twice, repeatedly setting the cache back to zero and
negating any of the performance it was designed to enable.
...
Snow Leopard will deliver both a 64-bit kernel and a full set of 64-bit bundled apps, erasing the entire TLB flush issue because the new kernel won't have to share any address space, even when running 32-bit apps (below right). This
will benefit all 64-bit Mac users with a Core 2 CPU or better, even those lacking a Santa Rosa platform-style chipset, as being able to run 64-bit code and virtual memory is not tied to the amount of addressable system RAM.
http://www.appleinsider.com/article...ard_twice_the_ram_half_the_price_64_bits.html