I have an Opteron server, on which I am running the AMD64 Debian port. For
various reasons, I'm contemplating going back to 32 bit.
I feel with you. As much as I like a native 64bit system, it is just
too much of a pain to get all the stuff together. Even for something as
simple as Acrobat Reader it takes hours of configuration before it
works without a chroot.
I did the conversion back to 32bit for Windows XP. XP x64 offers no
obvious advantages, and a lot of headache, even though most legacy
applications install just fine.
So if you think you want to got back, I think you should just do it.
You can still run a 64bit kernel and have a 64bit chroot for the cases
where it makes a difference. For most everyday tasks I cannot see any
obvious difference, though.
The major reason is that aside from the packages in the AMD64 Debian
archive, it is not always easy to find Debian packages for AMD64, since
i386 is still very much the default. Also, not all software compiles with
AMD64.
Also even common packages seem to have a lot more bugs when compiled as 64bit application compared to the 32bit binary.
What is the 4 Gig limit for 32 bit processors that people talk about? Does
this mean that each process/thread can only get a limit of 4 Gig? Is there
any workaround for this?
No. Each 32bit application is limited to about 3 GB of linear address
space. The application can implement its own memory management scheme
with overlays, paging etc, but that is more pain than it is worth.
Anyway, how many applications do you have that want more than 3 GB of
memory?
What are the other limits? I read elsewhere that a 32 bit Linux system has
an effective limit of 16 Gig usable memory total.
That is only true for a 32bit kernel, which is not necessary for a 32bit userland. Anyway, how much memory do you have?
And you might want to give Ubuntu a try. The amd64 version is quite
polished, and the compatibility libraries are imho in a better state.
You can also run the i386 version with added amd64 compatibilities
libraries. In any case try the beta for 5.10, it should have some nice
improvements over 5.4 (which is already pretty useful).