Re: Can someone...
Most Solaris binaries were 32-bit rather than 64-bit - for SPARC binaries there is rather little to be gained from making /ls/ a 64-bit binary rather than a 32-bit binary. x86 is unusual in that the performance hit of throwing around 64-bit chunks of memory rather than 32-bit chunks is outweighed by the architectural changes (including lots of new registers). See "All the world's a VAX" (although it wasn't directly related).
Having spent time compiling open-source software is the days when 64-bit was new, it wasn't always as easy as re-compiling; there were often explicit or implicit assumptions about the size of a word requiring source code changes.
As for 32-bit commercial binaries, sometimes the vendor isn't inclined to release a 64-bit version or even if they are, the business isn't prepared to pay for an upgrade.