Once upon a time, Jeff Garzik <jgarzik(a)pobox.com> said:
Running a 64-bit kernel with a 32-bit userland is a common practice
on
non-x86 platforms, and non-Linux OS's. For a lot of tasks, you simply
do not need 64-bit pointers and a 64-bit process address space. Both
executable code and in-memory data structures tend to be smaller on 32-bit.
However, on x86, the 32->64 bit jump also gives a larger register set
and (IIRC) SSE (or SSE2?) on all chips, which allows better code
generation for all kinds of things.
The i386 architecture is register-starved compared to many other
architectures.
--
Chris Adams <cmadams(a)hiwaay.net>
Systems and Network Administrator - HiWAAY Internet Services
I don't speak for anybody but myself - that's enough trouble.